La patrouille de france Flightgear
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Le Deal du moment :
Elden Ring Shadow Of The Erdtree édition ...
Voir le deal

[Howto] Adapter un appareil pour Rembrandt

3 participants

Aller en bas

[Howto] Adapter un appareil pour Rembrandt Empty [Howto] Adapter un appareil pour Rembrandt

Message  F-JJTH Lun 27 Aoû 2012 - 1:28

Ce tutorial a été créé à partir d'une conversation.
Auteurs :
- F-Sig
- patten
- _run_
- F-JJTH
- fredb


La problèmatique

J'essaie de m'initier à remrandt:
[Howto] Adapter un appareil pour Rembrandt Ec135_13
pas mal! quoi' que il faudra peut-être écrire au père-noël pour un nouvel ordi scratch

Mais depuis l'extérieur:
[Howto] Adapter un appareil pour Rembrandt Ec135_11
[Howto] Adapter un appareil pour Rembrandt Ec135_12
Quelles modifs à envisager?

Un petit condensé ou tuto pour l'adaptation des avions à remrandt?

Le tutorial

1) La transparence
Il faut dire à Rembrandt qu'un objet est transparent. Il peut être transparent à 2% à 60% à 99% peu importe, il faut juste lui dire que l'objet est transparent après Rembrandt se débrouille pour savoir à combien de pourcent l'objet est transparent.
Si on ne dit pas à Rembrandt qu'un objet est transparent alors il ressemblera au Flash rouge que tu vois sur la queue de l'EC135. Du coup quand vous voyez un objet qui ressemble à ça la réponse c'est direct : c'est un objet transparent qui n'a pas été déclaré, rien de grave je sais comment corriger ça !
Comment déclarer la transparence d'un objet ? C'est très simple, dans le XML qui correspond au modèle 3D il suffit d'ajouter :
Code:

<effect>
  <inherits-from>Effects/model-transparent</inherits-from>
  <condition>
    <property>sim/rendering/rembrandt/enabled</property>
  </condition>
  <object-name>LaVerriere</object-name>
  <object-name>VitreArriere</object-name>
  <object-name>FlashRouge</object-name>
</effect>

Voilà c'est fait, dans cet exemple j'ai déclaré 3 objets transparent (ont peut bien entendu en déclarer autant qu'on veut)
Information : Le fichier "Effects/model-transparent" auquel l'effet fait référence n'existe que depuis le FGDATA de la 2.8 du coup si une personne utilise FG 2.6/2.4/2.0 avec cet EC135 il aura autant de messages d'erreur lui indiquant que le fichier n'existe pas que de déclaration. (C'est une des raisons du "pourquoi j'ai fait 2 version bien distinct du DR400-jsbSim) Cela ne pose aucun soucis, il y aura des messages d'erreurs dans la console mais c'est tout et tout fonctionnera parfaitement bien.
La condition permet de n'appliquer l'effet que si le rendu Rembrandt est activé.

2) Les shaders
Les shaders sont différents dans Rembrandt, lorsqu'un shader n'est pas reconnu par Rembrandt il apparaît cet espèce d'arc en ciel de couleur que l'on voit sur les pales de cet EC135 (en plus d'une transparence non déclaré)
Heureusement beaucoup de shaders ont déjà été converti pour Rembrandt. Malheureusement j'ai très peu de connaissance sur les shaders. Je vais me renseigner, dans un premier temps tu peux commenter le shader si ces couleurs te donnent mal à la tête lol

3) Les ombres
Les superbes ombres que nous fournit Rembrandt demande une petite attention au moment de la modélisation. On sait tous à quel point chaque vertices/faces économisé est important, du coup on a pris l'habitude de supprimer les faces invisible d'un objet, l'exemple le plus parlant c'est le tableau de bord : on ne créer qu'un face sur laquelle ont vient mettre les instruments. Malheureusement cela ne fonctionne pas avec les ombres, enfin si ça fonctionne mais vous verrez que le lumière passe au travers de cette simple face sans projeter d'ombre. pour corriger ça il faut "fermer" les objets. Un exemple vaut mieux qu'un long discours : http://www.flightgear.org/forums/viewtopic.php?f=47&t=14883&p=164995#p164275
Pour voir concrètement comment mettre ça en place, je vous invite à lancer le DR400-jsbSim et passer sous le tableau de bord, vous allez alors voir que tout est désormais fermé.

4) Les materials
Là c'est un peu plus délicat, avec Rembrandt on peut avoir de vrai rendu de lumière, le materials d'un objet définit le son comportement lorsqu'il va recevoir la lumière. Du coup si vous voulez éclairer un tableau de bord par exemple. Ce tablea de bord est constitué d'un vingtaine d'instruments tous créer par des gens différents (le badin provient du DC-3, l'altimètre provient du DR-400-jsbsim, la bille vient de l'aerostar700....) En utilisant des objets qui viennent d'un peu partout on peu s'attendre à ce que les materials soit différents d'un instrument à l'autre. Si la différence est vraiment importante on peut même le voir dans FG et on se retrouve avec un tableau de bord pas homogène/harmonisé. Mais bon c'est assez rare d'en arriver à ce point.
Le soucis nouveau c'est que les sources de lumières Rembrandt accentuent énormément ces différences de materials. Du coup si vous volez de jour sans lumière de tableau de bord votre tableau de bord sera jolie, mais 2h pus tard il fait nuit vous avez allumé les lumières de votre tableau de bord et là horreur vous vous rendez compte que certains instruments sont blanchâtre on a l'impression que c'est en noir et blanc, d'autre sont complètement noir, d'autre vont très bien.
Là le réflexe à avoir c'est : problème de materials ! Pas de soucis c'est simple à résoudre ! j'ouvre le fichier AC de l'objet et je modifie les valeurs des materials situé en début de fichier. Simple comme bonjour !

Ce qui est moins simple c'est de savoir quelles valeurs mettre... pour ça je vous invite à ouvrir Blender, créer une sphere, une lampe, diriger la lampe vers l'objet et faire un rendu, vous allez voir comment réagit la sphere lorsque la lumière arrive dessus. Puis changez les valeurs de materials de la sphere, puis refaites un rendu et voyez la différence, répétez l'opération jusqu'à avoir un rendu qui vous convient, ensuite utilisez les valeurs que vous avez trouvé dans le fichier AC.

Voici un exemple de différence qu'on peut avoir en ne modifiant que le materials d'un objet :
[Howto] Adapter un appareil pour Rembrandt Tutorial14-Materials

Du coup on se rend compte d'un chose : puisque le materials d'un objet peut modifier autant le rendu d'un objet, pourquoi utilise-t-on uniquement 2 materials dans nos fichiers AC ? pourquoi un certains modélisateur (dont je tairai le nom) nous as toujours dit "n'utiliser que DefaultWhite et Transparent rien de plus !" alors que un objet en plastic mat et un objet en alu ou chromé n'ont pas du tout le même materials ? Et bien c'est simple... c'est une erreurs Very Happy
Alors oubliez cette fausse idée que certaines personnes véhiculent et créez autant de materials qu'il y a de matière différente dans vos fichiers AC ! Si vous modélisez un tran d'attérissage le pneu ne doit pas avoir le même materials que la jante, le fourreau d'amortisseurs est souvent chromé il ne doit donc pas avoir le même materials que les 2 autres. Les sièges d'un avions sont en tissu il ne doivent donc pas avoir le même materials que l'hélice qui est en fibre de carbone/bois... etc etc

Il y a juste une chose à éviter avec les materials c'est de mettre les valeurs "emissive" du material plus grand que 0 car dans ce cas Rembrandt interprète ça comme du "Blur" vous voyez de quoi je veux parler ? Exemple de blur : prenez le DR400-jsbSim non-Rembrandt, lancez-le dans un FG avec Rembrandt, allumé les lumières de tableau de bord et là vous constatez que les fond d'instrument émettent de la lumière avec un effet bizarre de flou. Et bien c'est ça le "Blur" Wink

Une précision:

Les matériaux sont gérés avec quatres couleurs (pour AC3D), pour la lumière je ne parlerai que de soleil :
Diffuse : Couleur de l'objet.
Ambiant : Couleur émise par le décor sur l'objet. Cette couleur modifie la couleur de l'objet, lorsque la partie de l'objet n'est pas éclairé par le soleil. Cette partie est souvent associé à l'ombre. A l'époque de la création de ce paramètre le calcul de l'ombre était trop lourd, pour les machines de l'époque. Exemple : un avion au sol est éclairé par la lumière du jour (partie superieur). Mais la partie inférieure est éclairé par la lumière ambiante. Lorsque l'on regarde un avion dans le ciel depuis le sol. Le dessous est éclairé par la "lumière ambiante"
Spécular: On parle de tache spéculaire. Cette couleur est en faites, la réflexion du soleil sur l'objet. Il s'agit en général de la couleur du soleil. Un objet mat ne possède quasiment pas de tache spéculaire à l'inverse d'un objet brillant. Si on regarde une voiture réelle on voit vraiment que cette tache est le reflet du soleil.
Emission: Lorsque l'objet émet une lumière (fluorescence, lampe, etc...)

La problèmatique

Autre problème: comment faire pour qu'une source lumineuse éclaire les objets alentour de nuit?

Le tutorial


Le plus simple est que tu regarde comment est fait l'éclairage du DR400-jsbSim ou celui du P92 (bien sur, regarde dans les version Rembrandt)
Le principe est simple, la pratique est beaucoup plus compliqué.

Comment créer une source lumineuse pour Rembrandt ?
Il faut 2 choses pour créer une source lumineuse Rembrandt, 1 fichier XML qui définit les caractéristique de la source lumineuse, 1 fichier AC dans lequel se propagera la lumière

1) Le fichier AC
Il faut créer un volume (mais pas n'importe comment) pour que ça fonctionne. La chose à plus importante à respecter est le sens des normals. Il faut absolument que les normals du volume dans lequel va se propager la lumière soit orienté vers l'extérieur. Ensuite la forme de l'objet doit être la plus simple possible pour ne pas voir apparaître d'artefact et respecter une règle bien précise dans le cas d'utilisation de source de type "Spot". Et dernier point la taille du volume : alors là il ne faut pas lésiner ! Voyez grand ! très grand !

Il existe 2 type de source lumineuse : point et spot. Point signifie que la source lumineuse rayonne dans toute les directions (comme le soleil). Spot signifie que la source lumineuse rayonne dans une direction donnée (comme le phare d'une voiture)
Dans le cas d'une source de type "Point" le plus simple est de créer une sphère gigantesque (2 à 3 fois la taille de l'appareil sur lequel vous travaillez). Ensuite c'est le XML qui fait tout.
Dans le cas d'une source de type "Spot" si vous optez pour la création d'une sphère, il faudra la couper en 2 car il n'est possible d'éclairer à 180°

2) Le fichier XML
Alors là c'est la galère... il y a des notions de mathématiques, de géométrie, de propagation de la lumière, bref on sent que c'est un pointilleux qui à créée ça ! (Fred si tu nous lis : lol Wink )
Le plus simple pour savoir les caractéristiques disponible c'est de regarder la doc : http://wiki.flightgear.org/Project_Rembrandt#Adding_lights_to_a_model
Très honnêtement je n'ai pas assez de compétence en géométrie/mathématique en rapport avec le rendu graphique openGL pour vous dire exactement l'effet que chaque paramètre apporte exactement. J'ai moi-même passé plusieurs heures à trafiquer les valeurs pour avoir quelques chose de plausible.

[EDIT] Quelques éléments de réponse par fredb :
fredb a écrit:
Tout le monde sait que plus une source de lumière est éloignée, moins elle éclaire un objet. Cela provient en fait d'un phénomène simple : la conservation d'énergie : chaque quantité d'énergie rayonnée par la source de lumière en une quantité de temps, se retrouve éloignée de la source à un instant suivant (à la vitesse de la lumière). Donc chaque quantité d'énergie lumineuse rayonnée par une source se retrouve répartie sur une sphère qui enfle au fil du temps. La surface de cette sphère grandi avec le carré de la distance. Donc chaque point d'un objet qui reçoit de la lumière reçoit une quantité qui a diminué avec le carré de sa distance à la source, d'ou le facteur : atténuation ~= e / d ^ 2 [1].

Maintenant, on peut aussi tenir compte de la transparence de l'air qui atténue aussi. Il y a des formules très compliquées qui Thorsten R essaie de mettre en musique dans sa simulation de l'atmosphère. Pour simplifier on introduit un paramètre pour atténuer en fonction de la distance et un paramètre constant. Tu as reconnu les paramètres <c>, <l> et <q> pour <constant>, <linéaire> et <quadratique> (qui veut dire "au carré"). D'où la formule finale : atténuation = 1 / (<c> + (<l> * d) + (<q> * d * d)), <q> étant dans l'équation [1] 1 / e, e l'énergie produite par la source. Évidemment, l'énergie est modulée par la couleur de la source.

Comment choisir les paramètres : <c> non nul évite d'avoir une division par zéro lorsque la distance est nulle. Il permet de régler l'éclairement des objets proches. <q> est l'inverse de l'énergie produite par la source. Donc plus la source est forte, plus <q> doit être petit. Entre, on module avec <l>, mais celui-ci peut rester à zéro.

Pour les spots, il y a en plus l'atténuation latérale. Si tu éclaires avec une torche, tu produis un cercle de lumière plus fort en son centre que sur ses bords. C'est ce que représente l'<exponent> (exposant en français). Le truc utilisé, pas physique du tout, est une fonction qui varie entre 0 et 1 avec l'angle par rapport à la direction du spot. Dans la direction mentionnée, la seule atténuation qui soit est celle en fonction de la distance décrite au dessus. Si on s'éloigne de cette direction, le cosinus de l'angle va passer de 1 (pour zero degré) à 0 (pour 90°) et être négatif lorsque tu pointes derrière toi, cas qui ne fonctionne pas dans Rembrandt. Donc la fonction pas physique utilisée est : atténuation latérale = (cos angle) ^ (<exponent>). J'ai fait des tracés de l'atténuation latérale en fonction de l'angle pour des <exponent> différents :

[Howto] Adapter un appareil pour Rembrandt Rembra10

Tu vois que plus l'exposant est élevé, plus la courbe est étroite autour de l'axe du spot, donc la lumière est plus concentrée. Si l'exposant est plus faible, les bords sont mieux éclairés.
Mais comme une lampe de poche a un bord, un spot a un <cutoff>. C'est l'angle a partir duquel il n'y a plus de lumière du tout. Si tu choisi un exposant fort, il se peut qu'à l'angle de "coupure" (cutoff), il n'y ai déjà plus de lumière du tout et dans ce cas la transition se fera progressivement. Si l'atténuation latérale n'est pas nulle à cette angle, la transition sera dure comme une poursuite en spectacle.
[/EDIT]


Donc le mieux c'est de regarder les XML du DR400-jsbSim ou du P92, si des questions reste sans réponse demandez !

La problèmatique

"position :In object space, position of the light" mais par rapport a quoi?

Le tutorial

<position> Est le lieux où se trouve la source lumineuse par rapport au centre de l'espace 3D. Dans Blender c'est le centre de Blender tout simplement.
Exemple en image : Ici tu vois que la source lumineuse est au centre de Blender mais aussi au centre du cône de lumière qui est le volume dans lequel la lumière va se propager
(Dans cet exemple l'objet "sun" est là pour symboliser la source lumineuse, il ne faut pas l'exporter avec le volume dans lequel se propagera la lumière)

[Howto] Adapter un appareil pour Rembrandt Captur21

Actuellement l'objet est au centre de l'espace 3D et il en est de même pour la source lumineuse. Les coordonnées <position> de la source lumineuse correspondent donc à <x> = 0, <y> = 0 et <z> = 0
Le soucis ici est simple : la source lumineuse devrait être placé à la pointe (situé à droite) du cône. Il faut donc résoudre ça, on a alors 2 choix.

Soit on place le bout du cône à à hauteur de la source lumineuse :

[Howto] Adapter un appareil pour Rembrandt Captur22

Soit on déplace la source lumineuse au bout du cône :

[Howto] Adapter un appareil pour Rembrandt Captur23

Dans le deuxième cas, les coordonnées <position> de la source lumineuse correspondent à <x> = 10, <y> = 0 et <z> = 0
Personnellement j'aurai tendance à choisir la première solution, pour la simple et bonne raison qu'avec la première solution on a pas besoin de se prendre le choux à connaître <x>, <y> et <z>. On part alors sur le principe que notre source lumineuse sera toujours au centre et c'est à nous de placer le volume dans le quel se propagera la lumière au bon endroit. Il se peut que la première solution ne soit tout simplement pas exploitable. Dans ce cas il faudra choisir la deuxième solution. Personnellement je n'ai jamais eu besoin d'utiliser la deuxième solution.

La problèmatique

"direction :In object space, direction to the center of the spot " moi pas comprendre Sad [/quote]

Le tutorial

On va continuer avec le même exemple, sauf que je vais changer de type de source de lumière dans Blender (tiens d'ailleurs je vois qu'il existe le type "point" alors que j'utilisai le type "sun" dans mes screenshot précédent... désolé j'ai pas fais gaffe j'aurai pu prendre le type "point" pour être raccord à 100% avec FG^^) Donc étant donné que la direction est uniquement possible avec une source de lumière de type "spot" je vais remplacer mon "sun" par un "spot"

On va donc repartir de l'exemple ci-dessus : nous avons un volume dans lequel va se propager la lumière, et une source de lumière situé à <x>=0, <y>=0, <z>=0 . Notez que j'ai fait attention à positionner mon cône au bon endroit :

[Howto] Adapter un appareil pour Rembrandt Captur24

On va désormais parler de <direction>. Dans l'image ci-dessus on voit que la source lumineuse éclaire vers le bas, les coordonnées <direction> sont donc dans ce cas <x>=0, <y>=0 et <z>=-1
On voit bien que dans cette configuration ça va pas bien marcher du tout ! La source lumineuse n'éclaire pas du tout dans le cône de lumière. Là encore 2 solutions identique au premier problème évoqué plus haut : soit on fait pivoter le volume de 90° pour qu'il se retrouve dans la lumière, soit c'est la source lumineuse que l'on fait pivoter... Ici encore j'aurai tendance à choisir la première solution, et donc arriver à ce résultat :

[Howto] Adapter un appareil pour Rembrandt Captur25

Et là c'est très simple, on voit que la source lumineuse éclaire désormais vers la gauche, les coordonnées <direction> sont donc maintenant <x>=-1, <y>=0 et <z>=0
Et voilà vous savez tout Smile

Pour aller plus loin :
Pour ajouter cette lumière à un avion il suffit de l'appeler comme on le ferait pour un instrument, avec le code XML suivant :
Code:

  <model>
    <path>mon_phare_d_atterrissage.xml</path>
    <offsets>
      <x-m> -2.763 </x-m>
      <y-m>  0.000 </y-m>
      <z-m> -0.895 </z-m>
    </offsets>
  </model>

Jusque là je ne vous apprend rien. En mettant ce code vous savez que vous êtes en train de placer une lumière qui éclairera vers l'avant de votre avion. Maintenant admettons que vous voulez que votre lumière éclaire vers le bas. Comment feriez-vous ?

Si vous êtes du genre <<j'adore faire compliquer quand on peut faire simple>> vous allez faire ça :

[Howto] Adapter un appareil pour Rembrandt Captur26

Ici on a fait pivoter vers le bas le volume dans lequel la lumière va se propager, il nous faut donc réexporter le fichier AC. Ensuite il va falloir que l'on change la direction de la lumière, désormais la direction de la lumière sera <x>=-0.5, <y>=0 et <z>= -0.5 (ces valeurs sont pour un éclairage à 45° vers le bas/avant)
Ça fonctionne c'est super ! Moi je vous propose plus simple car je suis un gros fainéant : ne touchez plus à rien ! ne modifiez pas votre fichier AC ni votre fichier XML qui caractérise votre source lumineuse. Tout va se passer lors de l'appel de votre lumière. Je vous propose donc ceci :

Code:

  <model>
    <path>mon_phare_d_atterrissage.xml</path>
    <offsets>
      <x-m> -2.763 </x-m>
      <y-m>  0.000 </y-m>
      <z-m> -0.895 </z-m>
      <roll-deg>        0 </roll-deg>
      <pitch-deg>  -45 </pitch-deg>
      <heading-deg> 0 </heading-deg>
    </offsets>
  </model>

Et voilà votre lumière éclaire vers le bas Smile Tout simplement Smile
F-JJTH
F-JJTH
Pilote de Ligne

Messages : 2010
Date d'inscription : 19/01/2011
Age : 35
Localisation : Carpentras - LFNH

http://www.clemaez.fr/flightgear

Revenir en haut Aller en bas

[Howto] Adapter un appareil pour Rembrandt Empty Re: [Howto] Adapter un appareil pour Rembrandt

Message  F-JJTH Mar 11 Sep 2012 - 12:40

Fred a apporté de nouveaux élements afin de comprendre les paramètres XML pour les lumières Rembrandt, vous pouvez donc lire ça dans la deuxième problèmatique > "Le fichier XML"
F-JJTH
F-JJTH
Pilote de Ligne

Messages : 2010
Date d'inscription : 19/01/2011
Age : 35
Localisation : Carpentras - LFNH

http://www.clemaez.fr/flightgear

Revenir en haut Aller en bas

[Howto] Adapter un appareil pour Rembrandt Empty Re: [Howto] Adapter un appareil pour Rembrandt

Message  F-Sig Mar 11 Sep 2012 - 13:16

Merci, ça éclaire un peu mieux ma lanterne Very Happy

Amicalement.

F-Sig
Pilote d'hélico

Messages : 993
Date d'inscription : 21/09/2010
Age : 76
Localisation : LFIM - LFBT

Revenir en haut Aller en bas

[Howto] Adapter un appareil pour Rembrandt Empty Re: [Howto] Adapter un appareil pour Rembrandt

Message  F-Sig Dim 11 Nov 2012 - 14:41

F-Sig a écrit:Merci, ça éclaire un peu mieux ma lanterne Very Happy
Mais il reste quelques coins ténébreux Very Happy
bon, a priori rien avoir avec rembrandt mais comme c'est un peu lié quand même...

Dans le dossier Lights du Cap10, fichier "LandingLights.xml" p. ex. on trouve ceci:
Code:
<animation>
    <type>select</type>
    <object-name>light-volume</object-name>
    <object-name>red-light-plate</object-name>
    <object-name>green-light-plate</object-name>
    <object-name>white-light-plate</object-name>
    <object-name>blue-light-plate</object-name>
    <!--<object-name>lnd-light-plate</object-name>-->
  </animation>
 
 <animation>
    <type>select</type>
    <object-name>lnd-light-plate</object-name>
    <condition>
      <and>
        <property>sim/multiplay/generic/int[11]</property>
        <greater-than>
          <property>sim/multiplay/generic/float[8]</property>
          <value>8</value>
        </greater-than>
      </and>
    </condition>
  </animation>
dans la première animation "type select" on sélectionne tous les objets sauf "lnd-light-plate" alors que par ce fichier c'est précisément cet objets que l'on veut afficher??!!

la seconde animation "type select" , ok là je pige, on affiche "lnd-light-plate" sous conditions...

Je précise que le système fonctionne très bien, c'est mes neurones qui ne suivent pas Very Happy

Amicalement.

F-Sig
Pilote d'hélico

Messages : 993
Date d'inscription : 21/09/2010
Age : 76
Localisation : LFIM - LFBT

Revenir en haut Aller en bas

[Howto] Adapter un appareil pour Rembrandt Empty Re: [Howto] Adapter un appareil pour Rembrandt

Message  F-JJTH Dim 11 Nov 2012 - 15:11

J'avoue que c'est un peu particulier là. Donc explication :
Code:

<animation>
    <type>select</type>
    <object-name>light-volume</object-name>
    <object-name>red-light-plate</object-name>
    <object-name>green-light-plate</object-name>
    <object-name>white-light-plate</object-name>
    <object-name>blue-light-plate</object-name>
    <!--<object-name>lnd-light-plate</object-name>-->
  </animation>
Cette animation "select" dit : Je sélectionne (j'affiche) tous les objets à condition que ???? et bien là y'a pas de condition ! Du coup FG considère qu'il ne doit pas afficher ces objets.
D'habitude une animation "select" est toujours (dans la très grande majorité des cas) accompagné d'une condition, mais ici non.

En d'autres mots :
Code:

Si la condition est vrai {
  je sélectionne les objets (je les affiche)
} sinon {  // Puisque l'animation "select" ne contient pas de condition on est dans ce cas
  je ne sélectionne pas les objets (je ne les affiche pas)
}

J'aurai pu faire ça aussi :
Code:

<animation>
    <type>select</type>
    <condition><property>sim/model/i-am-always-false</property></condition>
    <object-name>light-volume</object-name>
    <object-name>red-light-plate</object-name>
    <object-name>green-light-plate</object-name>
    <object-name>white-light-plate</object-name>
    <object-name>blue-light-plate</object-name>
    <!--<object-name>lnd-light-plate</object-name>-->
  </animation>

J'aurai alors créer une propriété dans le fichier -set.xml :
Code:

<sim>
  <model>
    <i-am-always-false>false</i-am-always-false>
  </model>
</sim>

Le problème avec cette solution c'est que si un illuminé venait à toucher cette propriété manuellement à l'aide de l'arbre de propriété (/) et bien il aurait des choses bien bizarre qui apparaîtrai Very Happy
Du coup j'ai choisi la première solution qui utilise en fait le même principe sauf que ce n'est pas explicite : tout ce qui n'est pas interdit est donc autorisé.

Ça va mieux ? Wink
F-JJTH
F-JJTH
Pilote de Ligne

Messages : 2010
Date d'inscription : 19/01/2011
Age : 35
Localisation : Carpentras - LFNH

http://www.clemaez.fr/flightgear

Revenir en haut Aller en bas

[Howto] Adapter un appareil pour Rembrandt Empty Re: [Howto] Adapter un appareil pour Rembrandt

Message  F-Sig Dim 11 Nov 2012 - 17:59

Ah... oui en effet quand on réfléchit dans le bon sens...

F-JJTH a écrit:Ça va mieux ? Wink
Oui beaucoup, merci Clément cheers

F-Sig
Pilote d'hélico

Messages : 993
Date d'inscription : 21/09/2010
Age : 76
Localisation : LFIM - LFBT

Revenir en haut Aller en bas

[Howto] Adapter un appareil pour Rembrandt Empty Re: [Howto] Adapter un appareil pour Rembrandt

Message  Patten Lun 6 Jan 2014 - 14:08

Salut à tous, salut Clément,

Pour avoir testé avec JM-26 hier soir, les lumières Rembrandt du DHC6 ne sont pas visibles en multiplayer (nous étions bien entendu tous les 2 sous Rembrandt).

Les lampes qui ont fleuri dans certains aéroports sont visibles (LFLL-LFMN...ainsi qu'un pylone gigantesque  scratch ) .

J'ai beau chercher des tutos, ou décortiquer le xml de ces lampadaires, je ne trouve pas la lampe ligne magique  scratch

Code:
<?xml version="1.0" encoding="UTF-8" ?>

<PropertyList>

 <!-- Apron Lamp 16m 360deg -->
 <!-- 28.12.2012 - by Andre Burkert -->

<path>Apronlamp16m360deg.ac</path>

<!--  Rembrandt Light  -->
<animation>
<type>light</type>
<light-type>spot</light-type>
<name>LightSource</name>
<object-name>lightvolume</object-name>
<position>
     <x> 0.000</x>
       <y> 0.000</y>
       <z>16.000</z>
</position>
<direction>
      <x>0</x>
      <y>0</y>
      <z>-1</z>
</direction>
<ambient>
      <r>0.25</r>
      <g>0.25</g>
      <b>0.25</b>
      <a>1.0</a>
</ambient>
<diffuse>
      <r>0.5</r>
      <g>0.404</g>
      <b>0.2</b>
      <a>1.0</a>
</diffuse>
<specular>
      <r>0.5</r>
      <g>0.5</g>
      <b>0.5</b>
      <a>1.0</a>
</specular>
<dim-factor>
<property>/sim/time/sun-angle-rad</property>
<interpolation>
        <entry><ind>0</ind><dep>0</dep></entry>
        <entry><ind>1.49</ind><dep>0</dep></entry>
        <entry><ind>1.52</ind><dep>1</dep></entry>
        <entry><ind>3.14</ind><dep>1</dep></entry>
</interpolation>
</dim-factor>
<attenuation>
      <c>1.0</c>
      <l>0.00002</l>
      <q>0.000000000146</q>
</attenuation>
<exponent>3.0</exponent>
<cutoff>75</cutoff>
<near-m>3.5</near-m>
<far-m>225</far-m>
</animation>
<animation>
<type>select</type>
<object-name>LightSource</object-name>
<condition>
      <and>
        <greater-than>
          <property>/sim/time/sun-angle-rad</property>
          <value>1.48</value>
        </greater-than>
        <property>/sim/rendering/rembrandt/enabled</property>
        <greater-than>
          <property>/sim/rendering/shaders/lights</property>
          <value>0.0</value>
        </greater-than>
      </and>
</condition>
</animation>
<!--  night light area  -->
<animation>
<type>material</type>
 <object-name>lightarea</object-name>
<transparency>
 <alpha-prop>environment/visibility-m</alpha-prop>
 <factor>1</factor>
 <offset>0</offset>
</transparency>
 <threshold>0.001</threshold>
</animation>
<animation>
<type>select</type>
 <object-name>lightarea</object-name>
<condition>
<greater-than>
<property>/sim/time/sun-angle-rad</property>
 <value>1.49</value>
</greater-than>
</condition>
</animation>
<animation>
<type>select</type>
<object-name>lightarea</object-name>
<condition>
      <not>
        <property>/sim/rendering/rembrandt/enabled</property>
      </not>
</condition>
</animation>
<!--  night redlight  -->
<animation>
<type>material</type>
 <object-name>redlight</object-name>
<condition>
<greater-than>
<property>/sim/time/sun-angle-rad</property>
 <value>1.49</value>
</greater-than>
</condition>
<emission>
<red>1.0</red>
<green>1.0</green>
<blue>1.0</blue>
</emission>
</animation>
<!--  night floodlight  -->
<animation>
<type>material</type>
 <object-name>floodlight</object-name>
<condition>
<greater-than>
<property>/sim/time/sun-angle-rad</property>
 <value>1.49</value>
</greater-than>
</condition>
<emission>
<red>0.9</red>
<green>0.9</green>
<blue>0.9</blue>
</emission>
</animation>
<!--  night emission  -->
<animation>
<type>material</type>
 <object-name>blah</object-name>
<condition>
<greater-than>
<property>/sim/time/sun-angle-rad</property>
 <value>1.57</value>
</greater-than>
</condition>
<emission>
<red>0.2</red>
<green>0.2</green>
<blue>0.2</blue>
</emission>
</animation>
<!--  enable-hot  -->
<animation>
 <object-name>lightvolume</object-name>
 <object-name>lightarea</object-name>
 <object-name>blah</object-name>
<enable-hot type="bool">false</enable-hot>
</animation>

<animation>
    <type>range</type>
    <min-m>0</min-m>
    <max-property>sim/rendering/static-lod/bare</max-property>
</animation>

</PropertyList>
 

Peux-tu éclairer ma lanterne stp? (c'est pas vital...).

 Very Happy
Patten
Patten
Pilote de chasse

Messages : 3233
Date d'inscription : 16/01/2011
Age : 69

http://pattenflightgear.wifeo.com/

Revenir en haut Aller en bas

[Howto] Adapter un appareil pour Rembrandt Empty Re: [Howto] Adapter un appareil pour Rembrandt

Message  F-JJTH Lun 6 Jan 2014 - 18:39

Dans le code que tu donnes il n'y a pas de truc concernant le "multiplayer".
Je t'invites à regarder comment sont fait les DR400-... ainsi que les Cap10 tu verras alors qu'une propriété est utilisé pour le "multiplayer".

Regarde aussi la propriété modifié par le switch, et le contenu du -set.xml et sa section <multiplayer>

Si ça ne t'aide pas, je peux le faire Wink y'a qu'à demander Smile

Amicalement,
Clément
F-JJTH
F-JJTH
Pilote de Ligne

Messages : 2010
Date d'inscription : 19/01/2011
Age : 35
Localisation : Carpentras - LFNH

http://www.clemaez.fr/flightgear

Revenir en haut Aller en bas

[Howto] Adapter un appareil pour Rembrandt Empty Re: [Howto] Adapter un appareil pour Rembrandt

Message  Patten Lun 6 Jan 2014 - 20:08

F-JJTH a écrit:Dans le code que tu donnes il n'y a pas de truc concernant le "multiplayer".
Je t'invites à regarder comment sont fait les DR400-... ainsi que les Cap10 tu verras alors qu'une propriété est utilisé pour le "multiplayer".

Regarde aussi la propriété modifié par le switch, et le contenu du -set.xml et sa section <multiplayer>

Si ça ne t'aide pas, je peux le faire ;)y'a qu'à demander Smile

Amicalement,
Clément

Sympa!. cheers 

Dans un premier temps, je vais essayer de comprendre, et si je sèche, je fais appel à toi (donc tu peux commencer à anticiper, vu mes compétences... Very Happy  )  Wink  .


 Very Happy 
Patten
Patten
Pilote de chasse

Messages : 3233
Date d'inscription : 16/01/2011
Age : 69

http://pattenflightgear.wifeo.com/

Revenir en haut Aller en bas

[Howto] Adapter un appareil pour Rembrandt Empty Re: [Howto] Adapter un appareil pour Rembrandt

Message  Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum