Script flightgear
+4
Guillaume
Patten
HaraldJ
Alexis
8 participants
Page 8 sur 17
Page 8 sur 17 • 1 ... 5 ... 7, 8, 9 ... 12 ... 17
Re: Script flightgear
Je viens d'envoyé ce que j'ai fait.
Alors tu va voir que quand tu sélectionne un objet ou une armature, j'ai placé deux boutons show et show_all . Bon c'est du provisoire, je vais mieux présenter tout ça...
Show : affiche l'ensemble des objets liés à celui déjà sélectionné. Pour ceux qui suivent, imaginez que vous souhaitiez bosser sur un train d'atterrissage, vous sélectionnez un des objets du train (peu importe), vous cliquez sur "Show" et comme par magie, tout l'avion disparaît, sauf l'ensemble du train. Vous pouvez travailler beaucoup plus facilement et efficacement (rien ne vous gène)
Show_all : Pour ré-afficher tout l'avion.
Alors tu va voir que quand tu sélectionne un objet ou une armature, j'ai placé deux boutons show et show_all . Bon c'est du provisoire, je vais mieux présenter tout ça...
Show : affiche l'ensemble des objets liés à celui déjà sélectionné. Pour ceux qui suivent, imaginez que vous souhaitiez bosser sur un train d'atterrissage, vous sélectionnez un des objets du train (peu importe), vous cliquez sur "Show" et comme par magie, tout l'avion disparaît, sauf l'ensemble du train. Vous pouvez travailler beaucoup plus facilement et efficacement (rien ne vous gène)
Show_all : Pour ré-afficher tout l'avion.
Re: Script flightgear
Ca fonctionne .....
Nickel
Nickel
_run_- Le baron rouge
- Messages : 433
Date d'inscription : 10/06/2011
Re: Script flightgear
Bonjour tout le monde,
Cela fait plusieurs jours que je me penche sur le f14 de flightgear. Et je trouve beaucoup de choses qui me déplaisent. A force de regarder ce qui ne fonctionne pas dans le script, et les fichiers de configurations, j'aimerai avoir votre avis.
En ouvrant le fichier Model/f14b.xml (sans les fichiers inclus) on s'aperçoit qu'il y a un problème avec le déplacement des ailes. Certains morceaux ne subissent pas les rotations. En faites, en cherchant, j'ai finalement trouvé dans le fichier .ac des objets différents ayant exactement le même nom. Je ne sais pas comment on en est arrivé là, mais je trouve vraiment pénible de gérer ces cas. On peut toujours, faire quelques choses, mais cela rend le script de moins en moins lisible (tout est relatif) et cela me chagrine.
Qu'en pensez-vous ??
Il y a une solution:
Actuellement, lors de la lecture d'un fichier .ac, il y a création d'un dictionnaire, pour convertir un nom d'objet ac, en nom d'objet blender. En effet, blender impose un nom avec 21 caractères au maximun, et pas ac3d. Ou bien, lors d'une inclusion multiple, on peut retrouvé deux objets identiques, avec des offsets différents. Le dictionnaire permet de s'y retrouver.
Pour inclure ce nouveau cas. il faudrait que le dictionnaire ne renvoi pas sur un nom unique mais sur une liste de nom.
Je trouve que cela commence à faire beaucoup de liste qui contient une liste qui contient une liste qui contient une liste ... etc...
En faites ce qui me gêne le plus, c'est que j'aimerai passé à l'étape suivante la création d'un avion.
J'attends toujours l'accord de M. Paolo Matricardi voici la demande :
Sinon, il y aurait bien ma modification de spitfire, mais il y a beaucoup de chose à revoir. Le dépliage est entièrement à refaire. Il faut finir le cockpit, avec quelques instruments à faire et d'autres à refaire. Et puis un FDM, il existe des sites avec les performances de l'époque http://www.spitfireperformance.com/k9787.html ... etc. Beaucoup de boulot .... pour le mettre au niveau de l'IAR80
A+
Cela fait plusieurs jours que je me penche sur le f14 de flightgear. Et je trouve beaucoup de choses qui me déplaisent. A force de regarder ce qui ne fonctionne pas dans le script, et les fichiers de configurations, j'aimerai avoir votre avis.
En ouvrant le fichier Model/f14b.xml (sans les fichiers inclus) on s'aperçoit qu'il y a un problème avec le déplacement des ailes. Certains morceaux ne subissent pas les rotations. En faites, en cherchant, j'ai finalement trouvé dans le fichier .ac des objets différents ayant exactement le même nom. Je ne sais pas comment on en est arrivé là, mais je trouve vraiment pénible de gérer ces cas. On peut toujours, faire quelques choses, mais cela rend le script de moins en moins lisible (tout est relatif) et cela me chagrine.
Qu'en pensez-vous ??
Il y a une solution:
Actuellement, lors de la lecture d'un fichier .ac, il y a création d'un dictionnaire, pour convertir un nom d'objet ac, en nom d'objet blender. En effet, blender impose un nom avec 21 caractères au maximun, et pas ac3d. Ou bien, lors d'une inclusion multiple, on peut retrouvé deux objets identiques, avec des offsets différents. Le dictionnaire permet de s'y retrouver.
Pour inclure ce nouveau cas. il faudrait que le dictionnaire ne renvoi pas sur un nom unique mais sur une liste de nom.
Je trouve que cela commence à faire beaucoup de liste qui contient une liste qui contient une liste qui contient une liste ... etc...
En faites ce qui me gêne le plus, c'est que j'aimerai passé à l'étape suivante la création d'un avion.
J'attends toujours l'accord de M. Paolo Matricardi voici la demande :
et vous avez le droit de rigoler de mon anglais à la Louis de Funès ....Hi paolo,
I have a wish.
In this moment, I write a blender script, for the flightgear community. This script is a open-source program with gpl license, for creating model to this flight simulator. This script is only a tools for flightgear designer.
And I search on internet some models, for validate the different computing of my script. I think, convert a x-plane model into a flightgear model, it's a good way for this.
At the end, Is it possible, to publish just one of your planes with your entire copyright, into the flightgear simulator.
I will understand , if you are not agree
Merci de votre attention
René
Sinon, il y aurait bien ma modification de spitfire, mais il y a beaucoup de chose à revoir. Le dépliage est entièrement à refaire. Il faut finir le cockpit, avec quelques instruments à faire et d'autres à refaire. Et puis un FDM, il existe des sites avec les performances de l'époque http://www.spitfireperformance.com/k9787.html ... etc. Beaucoup de boulot .... pour le mettre au niveau de l'IAR80
A+
_run_- Le baron rouge
- Messages : 433
Date d'inscription : 10/06/2011
Re: Script flightgear
Salut,
Je pense aussi que le problème des noms d'objet identiques peut être mis de côté. C'est vraiment un cas isolé, je ne pensais même pas que ça pouvait arriver !
On peut donc passer à l'étape suivante
Je pense aussi que le problème des noms d'objet identiques peut être mis de côté. C'est vraiment un cas isolé, je ne pensais même pas que ça pouvait arriver !
On peut donc passer à l'étape suivante
Re: Script flightgear
Bonjour à tous,
@René: Je suis à nouveau disponible, j'aimerai comprendre de fond en comble les possibilités déjà implémenté dans ton script. Le hic c'est que je n'ai vraiment pas beaucoup de connaissance de Blender. Du coup, te serait-il possible de m'expliquer quelle fonction fait quoi? pourquoi ? comment s'en servir concrètement dans Blender ? Le top du top serait de faire ça sur Mumble et d'enregistrer notre conversation (audio+vidéo) afin que ça deviennent un tuto.
Une fois que je saurai ce que peux faire le script et ce qu'il ne fait pas encore j'aurai une idée de quoi faire pour contribuer au script. Actuellement je crois savoir que le script fait déjà beaucoup mais personne ne sait vraiment bien s'en servir, du coup on ne peut pas dire <<ah tiens quand on fais ça, ça serait mieux d'avoir un raccourcis là>> ou bien <<ah quand je veux ajouter une propriété FG ça serai cool de pouvoir faire ceci et cela comme ça c'est plus simple>>
En ce sens, je pense que la prochaine étape est d'avoir des retours des utilisateurs afin de connaître les problèmes qu'ils ont pu rencontrer ou bien des suggestions.
Quand serais-tu dispo pour ça ? Moi je suis dispo toutes les après midi et soir jusqu'au 10 août pour le moment.
Amicalement,
Clément
@René: Je suis à nouveau disponible, j'aimerai comprendre de fond en comble les possibilités déjà implémenté dans ton script. Le hic c'est que je n'ai vraiment pas beaucoup de connaissance de Blender. Du coup, te serait-il possible de m'expliquer quelle fonction fait quoi? pourquoi ? comment s'en servir concrètement dans Blender ? Le top du top serait de faire ça sur Mumble et d'enregistrer notre conversation (audio+vidéo) afin que ça deviennent un tuto.
Une fois que je saurai ce que peux faire le script et ce qu'il ne fait pas encore j'aurai une idée de quoi faire pour contribuer au script. Actuellement je crois savoir que le script fait déjà beaucoup mais personne ne sait vraiment bien s'en servir, du coup on ne peut pas dire <<ah tiens quand on fais ça, ça serait mieux d'avoir un raccourcis là>> ou bien <<ah quand je veux ajouter une propriété FG ça serai cool de pouvoir faire ceci et cela comme ça c'est plus simple>>
En ce sens, je pense que la prochaine étape est d'avoir des retours des utilisateurs afin de connaître les problèmes qu'ils ont pu rencontrer ou bien des suggestions.
Quand serais-tu dispo pour ça ? Moi je suis dispo toutes les après midi et soir jusqu'au 10 août pour le moment.
Amicalement,
Clément
Re: Script flightgear
Salut Clément,
Je suis heureux de te lire, et ok pour un rdv sur mumble. Je suis dispo, par exemple demain, si tu veux. Fixes l'heure ! Il serait bien que Alexis soit dispo aussi. J'ai tenté de prendre contact, en message privé, sur flightgear.org, avec d'autres personnes pouvant aider. Mais je n'ai pas eu de réponses positives. Pas graves.
A+
Je suis heureux de te lire, et ok pour un rdv sur mumble. Je suis dispo, par exemple demain, si tu veux. Fixes l'heure ! Il serait bien que Alexis soit dispo aussi. J'ai tenté de prendre contact, en message privé, sur flightgear.org, avec d'autres personnes pouvant aider. Mais je n'ai pas eu de réponses positives. Pas graves.
A+
_run_- Le baron rouge
- Messages : 433
Date d'inscription : 10/06/2011
Re: Script flightgear
C'est bien dommage que tu n'ai pas eu de réponses positive...
Pour moi c'est ok demain vers 16h30/17h. Alexis seras-tu dispo ? Si tu es dispo à une autre heure dis le je peux m'adapter
Amicalement,
Clément
Pour moi c'est ok demain vers 16h30/17h. Alexis seras-tu dispo ? Si tu es dispo à une autre heure dis le je peux m'adapter
Amicalement,
Clément
Re: Script flightgear
Bonjour à tous,
J'ai pushé la correction concernant les "/" en début de propriété. Par contre je vois que dans le dico des propriétés (props_armature.py) les propriétés commencent par un "/" qu'il faudrait donc supprimer Alexis ?
Après avoir pris un "cours de Blender" avec René, voici quelques explications :
Importer un appareil FlightGear :
L'opération est très simple, il suffit d'ouvrir le fichier .xml de son choix à l'aide du menu : File > Import > FlightGear (.xml)
Vous pouvez sélectionner n'importe quel fichier .xml d'animation (ne pas ouvrir de fichier .xml qui contient les sons ou l'interface GUI) Vous pouvez même sélectionner le fichier -set.xml de l'appareil afin de charger l'intégralité de l'appareil.
Les options d'import :
Vous aurez constaté qu'il y a plusieurs options d'importation, qui sont :
Option ac :
*Un exemple concernant le edge split / split angle : Imaginez un cube, chaque face du cube est à angle droit (90°) par rapport au autres face. Si vous indiquez un Split angle de 89°, alors les angles de votre cube seront divisé afin de les rendre plus doux. Si vous indiquez un Split angle de 91°, les angles de votre cube ne subiront aucune transformation. Par défaut Split angle vaut 65° ce qui signifie que si 2 surfaces sont à plus relié à plus de 65°, le Edge split sera appliqué.
@René : corrige moi si j'ai faux !
Option xml :
Afficher les animations :
Pressez la touche "f" de votre clavier en prenant soin de mettre votre pointeur de souris dans la vue 3D de Blender
Le menu "FlightGear menu tools" apparaît, vous pouvez maintenant cliquer sur "Creation animations", laissez le script calculer les animations pendant quelques secondes.
Maintenant vous pouvez presser "Alt+a" et les animations se lancent sous vos yeux. Pour arrêter les animations faites à nouveau "Alt+a" ou "Echap"
Il vous est possible d'accélérer ou ralentir la visualisation les animations, pour cela vous devez presser "f" puis sélectionnez "Time x2" pour accélérer la visualisation ou "Time x0.5" pour ralentir la visualisation.
Notez bien que vous pouvez cliquer plusieurs fois sur "Time x2" et "Time x0.5" chaque clique accélérera/ralentira la visualisation. Si vous voulez voir les animations 4 x moins vite, il vous faudra donc cliquer sur "Time x0.5" 4 fois.
Afficher les propriétés d'un objet :
Pour connaître les propriétés d'un objet il vous faut tout d'abord sélectionner l'objet désiré ensuite allez dans le menu "Object" (représenté par un cube orange) et descendez tout en bas. Vous y trouverez un menu FlightGear avec les informations suivantes :
Cliquez maintenant sur le bouton "Select" de l'armature dont dépend l'objet.
S'affiche alors les propriétés de l'objet, ou plutôt les propriétés de l'armature dont dépend l'objet. Il faut bien comprendre que dans Blender on ne peut pas animer un objet. On ne peut animer que des armatures auxquelles on associe nos objets. Ce sont les armatures qui font bouger nos objets.
On a donc les informations suivantes :
Générer le fichier XML :
--- coming soon ---
Amicalement,
Clément
J'ai pushé la correction concernant les "/" en début de propriété. Par contre je vois que dans le dico des propriétés (props_armature.py) les propriétés commencent par un "/" qu'il faudrait donc supprimer Alexis ?
Après avoir pris un "cours de Blender" avec René, voici quelques explications :
Importer un appareil FlightGear :
L'opération est très simple, il suffit d'ouvrir le fichier .xml de son choix à l'aide du menu : File > Import > FlightGear (.xml)
Vous pouvez sélectionner n'importe quel fichier .xml d'animation (ne pas ouvrir de fichier .xml qui contient les sons ou l'interface GUI) Vous pouvez même sélectionner le fichier -set.xml de l'appareil afin de charger l'intégralité de l'appareil.
Les options d'import :
Vous aurez constaté qu'il y a plusieurs options d'importation, qui sont :
Option ac :
- Smooth all : permet d'adoucir les angles des objets 3D (Recommandé)
- Edge split* : permet de diviser les arrêtes des objets 3D (Recommandé)
- Split angle* : indique l'angle à partir duquel l'Edge split doit être appliqué
- Active layer : ?????? René peux-tu expliquer ?
*Un exemple concernant le edge split / split angle : Imaginez un cube, chaque face du cube est à angle droit (90°) par rapport au autres face. Si vous indiquez un Split angle de 89°, alors les angles de votre cube seront divisé afin de les rendre plus doux. Si vous indiquez un Split angle de 91°, les angles de votre cube ne subiront aucune transformation. Par défaut Split angle vaut 65° ce qui signifie que si 2 surfaces sont à plus relié à plus de 65°, le Edge split sera appliqué.
@René : corrige moi si j'ai faux !
Option xml :
- Include file : permet d'inclure les fichiers enfants rencontré dans les balises <include>
- Active layer : ?????? René peux-tu expliquer ?
Afficher les animations :
Pressez la touche "f" de votre clavier en prenant soin de mettre votre pointeur de souris dans la vue 3D de Blender
Le menu "FlightGear menu tools" apparaît, vous pouvez maintenant cliquer sur "Creation animations", laissez le script calculer les animations pendant quelques secondes.
Maintenant vous pouvez presser "Alt+a" et les animations se lancent sous vos yeux. Pour arrêter les animations faites à nouveau "Alt+a" ou "Echap"
Il vous est possible d'accélérer ou ralentir la visualisation les animations, pour cela vous devez presser "f" puis sélectionnez "Time x2" pour accélérer la visualisation ou "Time x0.5" pour ralentir la visualisation.
Notez bien que vous pouvez cliquer plusieurs fois sur "Time x2" et "Time x0.5" chaque clique accélérera/ralentira la visualisation. Si vous voulez voir les animations 4 x moins vite, il vous faudra donc cliquer sur "Time x0.5" 4 fois.
Afficher les propriétés d'un objet :
Pour connaître les propriétés d'un objet il vous faut tout d'abord sélectionner l'objet désiré ensuite allez dans le menu "Object" (représenté par un cube orange) et descendez tout en bas. Vous y trouverez un menu FlightGear avec les informations suivantes :
- Name in .ac file : C'est le nom de l'objet telle qu'il est dans le fichier AC3D
- Ac file : C'est le nom du fichier AC3D dans lequel se situe l'objet
- Parent : C'est le nom de l'armature dont dépend l'objet. L'armature est ce qui permet l'animation de l'objet
Cliquez maintenant sur le bouton "Select" de l'armature dont dépend l'objet.
S'affiche alors les propriétés de l'objet, ou plutôt les propriétés de l'armature dont dépend l'objet. Il faut bien comprendre que dans Blender on ne peut pas animer un objet. On ne peut animer que des armatures auxquelles on associe nos objets. Ce sont les armatures qui font bouger nos objets.
On a donc les informations suivantes :
- Family : C'est la famille de propriété associé à l'animation
- Value : C'est le nom de la propriété qui doit être utilisé
- Property : C'est le chemin complet de la propriété qui doit être utilisé
- Value : Dans le cas d'une propriété numéroté c'est la valeur du numéro de la propriété. Par exemple, si value = 0, la propriété sera gear/gear]0]/rollspeed-ms, si value = 3, la propriété sera gear/gear]3]/rollspeed-ms
- xml File : C'est le chemin du fichier XML dans lequel l'animation de l'objet est écrite
- Type : C'est le type de l'animation
- Factor : C'est la valeur de la balise <factor>
- Time : ?????
- Min : C'est la valeur minimum que peut prendre la propriété dans FlightGear
- Max : C'est la valeur maximum que peut prendre la propriété dans FlightGear
- Child(s) object(s) : C'est la liste des objets et armature qui dépendent de cette armature
- Parent : C'est l'armature dont dépend l'armature actuellement sélectionné
Générer le fichier XML :
--- coming soon ---
Amicalement,
Clément
Dernière édition par F-JJTH le Ven 3 Aoû 2012 - 18:59, édité 2 fois
Re: Script flightgear
Bonjour tout le monde,
Pour les options, il faudrait presque ne pas en tenir compte. En faites, certaines sont issues du premier script mais ne sont pas fonctionnelles.
Il n'y a qu'une seule option réellement implanté. L'option "include file". Cette option permet de lire l'ensemble du fichier xml sélectionné, ainsi que tous les fichiers inclus. Inversement, le script ne lit que le fichier sélectionné.
Certainement edge split et smooth all vont disparaître.
Voici le problématique :
Les fichiers .ac utilise un paramètre "crease" pour indiquer qu'il faut lisser l'objet suivant un angle. Dans blender, il est possible de faire la même chose , mais utilise une autre approche. Il faut rajouter un "modifier" du doux nom de "edge-split". Clément l'explique très bien. Mais voilà, dans le script, ajouter un modifier sur chaque objet, ralenti le script. J'ai donc utiliser une autre approche. Le paramètre crease est sauvegardé dans blender, puis après une sélection, on peut appliquer un edge-split sur la sélection en fonction de cette valeur sauvegardée. (touche F, "Flightgear Tools Menu >Edge-Split')
Enfin une autre option qui n'est pas encore totalement implémenté, "active layer"
Blender permet d'utiliser des layers ( calques en français ), et il en possède 20. Lors de l'import, les objets créés apparaissent dans le (ou les) calques actif. Il m'est venu à l'idée de changer de layer à chaque changement de fichier xml. Dans certains avions il y a beaucoup de fichiers, cela permettrait d'avoir des sélections par layers, plus efficace. Aujourd'hui je suis pas sur de l'intérêt de la chose. J'avais dans l'idée d'avoir un layer pour les objets et un autre layer pour les armatures. Et une relation entre les layers. Par exemple, les armatures du layer 3 se trouverait dans le layer 13, et ainsi de suite.
Lorsque j'ai travaillé sur les avions de mon programme, j'ai trouvé cette façon de faire très pratique. A la fin il y a beaucoup d'armatures, et il n'est pas toujours évident de s'y retrouver.
J'ai modifier le script pour insérer la propriété "name_ac" dans le panel flightgear
A+
F-JJTH a écrit:
Vous aurez constaté qu'il y a plusieurs options d'importation, qui sont :
Option ac :
- Smooth all : permet d'adoucir les angles des objets 3D (Recommandé)
- Edge split* : permet de diviser les arrêtes des objets 3D (Recommandé)
- Split angle* : indique l'angle à partir duquel l'Edge split doit être appliqué
- Active layer : ?????? René peux-tu expliquer ?
Pour les options, il faudrait presque ne pas en tenir compte. En faites, certaines sont issues du premier script mais ne sont pas fonctionnelles.
Il n'y a qu'une seule option réellement implanté. L'option "include file". Cette option permet de lire l'ensemble du fichier xml sélectionné, ainsi que tous les fichiers inclus. Inversement, le script ne lit que le fichier sélectionné.
Certainement edge split et smooth all vont disparaître.
Voici le problématique :
Les fichiers .ac utilise un paramètre "crease" pour indiquer qu'il faut lisser l'objet suivant un angle. Dans blender, il est possible de faire la même chose , mais utilise une autre approche. Il faut rajouter un "modifier" du doux nom de "edge-split". Clément l'explique très bien. Mais voilà, dans le script, ajouter un modifier sur chaque objet, ralenti le script. J'ai donc utiliser une autre approche. Le paramètre crease est sauvegardé dans blender, puis après une sélection, on peut appliquer un edge-split sur la sélection en fonction de cette valeur sauvegardée. (touche F, "Flightgear Tools Menu >Edge-Split')
Enfin une autre option qui n'est pas encore totalement implémenté, "active layer"
Blender permet d'utiliser des layers ( calques en français ), et il en possède 20. Lors de l'import, les objets créés apparaissent dans le (ou les) calques actif. Il m'est venu à l'idée de changer de layer à chaque changement de fichier xml. Dans certains avions il y a beaucoup de fichiers, cela permettrait d'avoir des sélections par layers, plus efficace. Aujourd'hui je suis pas sur de l'intérêt de la chose. J'avais dans l'idée d'avoir un layer pour les objets et un autre layer pour les armatures. Et une relation entre les layers. Par exemple, les armatures du layer 3 se trouverait dans le layer 13, et ainsi de suite.
Lorsque j'ai travaillé sur les avions de mon programme, j'ai trouvé cette façon de faire très pratique. A la fin il y a beaucoup d'armatures, et il n'est pas toujours évident de s'y retrouver.
J'ai modifier le script pour insérer la propriété "name_ac" dans le panel flightgear
A+
_run_- Le baron rouge
- Messages : 433
Date d'inscription : 10/06/2011
Re: Script flightgear
Ce que je pense : (je pense pas forcément bien... c'est juste un avis)
Si c'est possible à faire : oublier l'import/export AC3D, mr_no sur le forum US semble avoir les choses bien en main. On pourrait donc se dire : Pour utiliser le script de _run_ il faut au préalable avoir installer le script de mr_no. C'est comme une "dépendance" (on connait bien ça nous les linuxiens )
Le problème qui peut exister... René, à toi de me dire si c'est vraiment un problème : actuellement le script d'import AC3D c'est le tiens et tu sais où il se trouve (dans le même dossier) puisque c'est toi qui le fourni. Le problème de laisser l'utilisateur aller chercher lui-même l'import/export AC3D et de l'installer lui-même c'est que tu ne peux pas savoir avec exactitude là où l'utilisateur a installer le script AC3D, du coup ton script ne saura pas où aller chercher le script d'import AC3D. Je me trompe ?
La solution à cela c'est de demander à l'utilisateur de dire où est installer le script d'import/export AC3D de la même façon qu'il faudrait lui demander où est son dossier $FG_ROOT. Cette solution permet de se dire : pour l'import export AC3D on est dépendant de quelqu'un d'autre et donc on doit respecter son système (les objets sont-ils edge-splitter? sont-ils smoother ?) Bref plutot que se dire : bon on smooth et edge-split tout à l'import ou bien on laisse l'utilisateur le faire 1 par 1 si il veut sur les objets ?
Ou alors, on se dit qu'on "suit le standard" : l'ancien script d'import/export AC3D de la version 2.49b et le script d'import/export de mr_no font-ils un smooth et un edge-split à l'import? si oui alors on le fait. Ainsi on ne donne pas le choix à l'utilisateur... mais honnêtement je pense que si on donne trop de choix/fonctionnalité à l'utilisateur il sera perdu ! Moi le premier. Là on dit à l'utilisateur : voilà on va importer tout ce que tu demande en mettant un smooth et un edge-split, ça peut prendre du temps mais c'est comme ça.
Ou encore : on revient "en arrière" et on réactive les options smooth, edge-split et split angle. On peut tout de même garder le edge-split dans le menu FlightGear menu tools, d'ailleurs est-il possible de grisé l'option si jamais l'objet séléctionné est déjà edge-splitter ?
Bon tout compte fait je suis bien partant pour la 3ème solution... ça veut dire qu'on fournit toujours notre propre script d'import/export AC3D.
Qu'en dites-vous ? Et surtout René, qu'en dis-tu ?
Le système "d'active layer" est super, mais tu dis que Blender possède 20 layer, que se passerait-il si jamais on a plus de 20 fichiers XML ? dans ce cas il manquerai des layer :/
Personnellement je trouve que le fonctionnement actuel des layers est très bien : 1 layer avec l'avion + 1 layer avec les armatures
Amicalement,
Clément
Si c'est possible à faire : oublier l'import/export AC3D, mr_no sur le forum US semble avoir les choses bien en main. On pourrait donc se dire : Pour utiliser le script de _run_ il faut au préalable avoir installer le script de mr_no. C'est comme une "dépendance" (on connait bien ça nous les linuxiens )
Le problème qui peut exister... René, à toi de me dire si c'est vraiment un problème : actuellement le script d'import AC3D c'est le tiens et tu sais où il se trouve (dans le même dossier) puisque c'est toi qui le fourni. Le problème de laisser l'utilisateur aller chercher lui-même l'import/export AC3D et de l'installer lui-même c'est que tu ne peux pas savoir avec exactitude là où l'utilisateur a installer le script AC3D, du coup ton script ne saura pas où aller chercher le script d'import AC3D. Je me trompe ?
La solution à cela c'est de demander à l'utilisateur de dire où est installer le script d'import/export AC3D de la même façon qu'il faudrait lui demander où est son dossier $FG_ROOT. Cette solution permet de se dire : pour l'import export AC3D on est dépendant de quelqu'un d'autre et donc on doit respecter son système (les objets sont-ils edge-splitter? sont-ils smoother ?) Bref plutot que se dire : bon on smooth et edge-split tout à l'import ou bien on laisse l'utilisateur le faire 1 par 1 si il veut sur les objets ?
Ou alors, on se dit qu'on "suit le standard" : l'ancien script d'import/export AC3D de la version 2.49b et le script d'import/export de mr_no font-ils un smooth et un edge-split à l'import? si oui alors on le fait. Ainsi on ne donne pas le choix à l'utilisateur... mais honnêtement je pense que si on donne trop de choix/fonctionnalité à l'utilisateur il sera perdu ! Moi le premier. Là on dit à l'utilisateur : voilà on va importer tout ce que tu demande en mettant un smooth et un edge-split, ça peut prendre du temps mais c'est comme ça.
Ou encore : on revient "en arrière" et on réactive les options smooth, edge-split et split angle. On peut tout de même garder le edge-split dans le menu FlightGear menu tools, d'ailleurs est-il possible de grisé l'option si jamais l'objet séléctionné est déjà edge-splitter ?
Bon tout compte fait je suis bien partant pour la 3ème solution... ça veut dire qu'on fournit toujours notre propre script d'import/export AC3D.
Qu'en dites-vous ? Et surtout René, qu'en dis-tu ?
Le système "d'active layer" est super, mais tu dis que Blender possède 20 layer, que se passerait-il si jamais on a plus de 20 fichiers XML ? dans ce cas il manquerai des layer :/
Personnellement je trouve que le fonctionnement actuel des layers est très bien : 1 layer avec l'avion + 1 layer avec les armatures
Amicalement,
Clément
Re: Script flightgear
J'ai mis à jour mon post "tuto".
Du coup vu que j'essaye de mettre des mots sur les actions en rédigeant ce tuto, je m'aperçois de plusieurs choses, donc j'écris ici les choses que j'ai pu noter histoire de ne pas les perdre.
Dans le menu "File>Import" est-il possible de masquer "FlightGear (.ac)" ? Je pense que l'utilisateur si il veut uniquement travailler en AC3D il ira chercher le script de mr_no et verra "AC3D format (.ac)" si il veut travailler les animations il verra "FlightGear (.xml)". Si il y a en plus "FlightGear (.ac)" l'utilisateur peut avoir un doute sur quel script utiliser pour importer un fichier AC3D. Cependant on garde toujours "notre" version de l'import AC3D c'est juste qu'on le dit pas à l'utilisateur
Concernant les panneaux créer pour FlightGear dans Blender, j'ai l'impression qu'il y a un panneau qui ne sert pas à grand chose puisque le second panneau fait tout ce que le premier panneau fait sauf la sélection/désélection. Je veux parler ici du panneau "FlightGear" situé à gauche de la vue 3D qui ne contient que quelques boutons et du panneau "FlightGear" situé tout en bas de l'onglet "Object" situé sur la droite de la vue 3D. Serait-il possible de faire passer tout ce qui se trouve dans le panneau "FlightGear du l'onglet "Object" à la place du panneau "FlightGear" situé à gauche de la vue 3D en y ajoutant les boutons de sélection/désélection ? Je trouve que le panneau "FlightGear" situé dans l'onglet "Object" n'est pas du tout accessible du faite que : d'une part il faut aller dans l'onglet "Object" et d'autre part il faut descendre tout en bas de l'onglet "Object" pour le voir.
Ainsi on réduit aussi le nombre de "truc" créer pour FlightGear, c'est à dire qu'on a que 2 truc : un menu "raccourcis" avec la touche "f" + un menu FlightGear
Dans le panneau FlightGear de l'onglet "Object" (arrfff c'est pas évident d'avoir 2 panneau FlightGear... faut préciser à chaque fois lequel d'où mon paragraphe précédent ) dans la première section on a ça :
Je propose ceci à la place :
Dans la liste déroulante "Property" les chemin seront du genre : gear/gear[%d]/rollspeed-ms
Une fois le chemin sélectionné, la valeur de %d remplacera directement gear/gear[%d]/rollspeed-ms dans la liste déroulante
Ou alors, si ce n'est pas possible (ce dont je crains), on met par défaut la variable %d = 0, donc dans la liste déroulante TOUS les chemins seront du genre gear/gear[0]/rollspeed-ms et lorsque l'utilisateur change la valeur de %d, la liste déroulante se met à jour et si par exemple l'utilisateur avait mis %d = 2 alors dans la liste déroulante, TOUS les chemins seront du genre gear/gear[2]/rollspeed-ms
Hmmm voilà pour le moment !
Attention ! Je ne dis pas "C'est possible de le faire?" je me sers surtout de ce post comme "aide mémoire", j'ai bien l'intention d'essayer de le faire moi-même. Je ne sais pas encore comment mais ça s'apprend. Et puis ça permet aussi d'avoir vos avis.
Amicalement,
Clément
Du coup vu que j'essaye de mettre des mots sur les actions en rédigeant ce tuto, je m'aperçois de plusieurs choses, donc j'écris ici les choses que j'ai pu noter histoire de ne pas les perdre.
Dans le menu "File>Import" est-il possible de masquer "FlightGear (.ac)" ? Je pense que l'utilisateur si il veut uniquement travailler en AC3D il ira chercher le script de mr_no et verra "AC3D format (.ac)" si il veut travailler les animations il verra "FlightGear (.xml)". Si il y a en plus "FlightGear (.ac)" l'utilisateur peut avoir un doute sur quel script utiliser pour importer un fichier AC3D. Cependant on garde toujours "notre" version de l'import AC3D c'est juste qu'on le dit pas à l'utilisateur
Concernant les panneaux créer pour FlightGear dans Blender, j'ai l'impression qu'il y a un panneau qui ne sert pas à grand chose puisque le second panneau fait tout ce que le premier panneau fait sauf la sélection/désélection. Je veux parler ici du panneau "FlightGear" situé à gauche de la vue 3D qui ne contient que quelques boutons et du panneau "FlightGear" situé tout en bas de l'onglet "Object" situé sur la droite de la vue 3D. Serait-il possible de faire passer tout ce qui se trouve dans le panneau "FlightGear du l'onglet "Object" à la place du panneau "FlightGear" situé à gauche de la vue 3D en y ajoutant les boutons de sélection/désélection ? Je trouve que le panneau "FlightGear" situé dans l'onglet "Object" n'est pas du tout accessible du faite que : d'une part il faut aller dans l'onglet "Object" et d'autre part il faut descendre tout en bas de l'onglet "Object" pour le voir.
Ainsi on réduit aussi le nombre de "truc" créer pour FlightGear, c'est à dire qu'on a que 2 truc : un menu "raccourcis" avec la touche "f" + un menu FlightGear
Dans le panneau FlightGear de l'onglet "Object" (arrfff c'est pas évident d'avoir 2 panneau FlightGear... faut préciser à chaque fois lequel d'où mon paragraphe précédent ) dans la première section on a ça :
- Family : nom_de_famille (menu déroulant)
- Value : nom_de_la_propriété (menu déroulant)
- Property : chemin_de_la_propriété
- value : valeur_de_%d_si_existant (slider)
Je propose ceci à la place :
- Family : nom_de_famille (menu déroulant)
- Property : chemin_de_la_propriété (menu déroulant)
- %d : valeur_de_%d_si_existant (slider)
Dans la liste déroulante "Property" les chemin seront du genre : gear/gear[%d]/rollspeed-ms
Une fois le chemin sélectionné, la valeur de %d remplacera directement gear/gear[%d]/rollspeed-ms dans la liste déroulante
Ou alors, si ce n'est pas possible (ce dont je crains), on met par défaut la variable %d = 0, donc dans la liste déroulante TOUS les chemins seront du genre gear/gear[0]/rollspeed-ms et lorsque l'utilisateur change la valeur de %d, la liste déroulante se met à jour et si par exemple l'utilisateur avait mis %d = 2 alors dans la liste déroulante, TOUS les chemins seront du genre gear/gear[2]/rollspeed-ms
Hmmm voilà pour le moment !
Attention ! Je ne dis pas "C'est possible de le faire?" je me sers surtout de ce post comme "aide mémoire", j'ai bien l'intention d'essayer de le faire moi-même. Je ne sais pas encore comment mais ça s'apprend. Et puis ça permet aussi d'avoir vos avis.
Amicalement,
Clément
Re: Script flightgear
F-JJTH a écrit:Ce que je pense : (je pense pas forcément bien... c'est juste un avis)
Si c'est possible à faire : oublier l'import/export AC3D, mr_no sur le forum US semble avoir les choses bien en main. On pourrait donc se dire : Pour utiliser le script de _run_ il faut au préalable avoir installer le script de mr_no. C'est comme une "dépendance" (on connait bien ça nous les linuxiens )
Le problème qui peut exister... René, à toi de me dire si c'est vraiment un problème : actuellement le script d'import AC3D c'est le tiens et tu sais où il se trouve (dans le même dossier) puisque c'est toi qui le fourni. Le problème de laisser l'utilisateur aller chercher lui-même l'import/export AC3D et de l'installer lui-même c'est que tu ne peux pas savoir avec exactitude là où l'utilisateur a installer le script AC3D, du coup ton script ne saura pas où aller chercher le script d'import AC3D. Je me trompe ?
La solution à cela c'est de demander à l'utilisateur de dire où est installer le script d'import/export AC3D de la même façon qu'il faudrait lui demander où est son dossier $FG_ROOT. Cette solution permet de se dire : pour l'import export AC3D on est dépendant de quelqu'un d'autre et donc on doit respecter son système (les objets sont-ils edge-splitter? sont-ils smoother ?) Bref plutot que se dire : bon on smooth et edge-split tout à l'import ou bien on laisse l'utilisateur le faire 1 par 1 si il veut sur les objets ?
Dans l'état actuel des choses, les scripts ne sont pas compatibles. Je m'explique.
Le script d'import de fichier ac, permet aujourd'hui, d'éviter la duplication des objets lors d' import multiple. Par exemple sur le DR400 deux commandes des gaz sont définis. Mais il y a qu'un seul fichier .ac. Le fichier xml charge une première fois le fichier ac, puis une seconde fois ce même fichier avec un offset différent. Le script dans ce cas, créé deux objets à des offsets différents (bpy.data.objects['Cube'].location) mais les données sont identiques. (bpy.data.objects['Cube'].data==bpy.data.objects['Cube.001'].data). Ainsi si on modifie le maillage sur une commande de gaz, par exemple, la modification est mise à jour dans le deuxième objet. Fait le test en mode edit. C'est pareil pour les pilotes du dc-3, etc....
Cette gestion n'est pas pris en compte dans l'ancien script, et mr_no n'en a pas la nécessité car il ne lit pas de xml.
Ensuite, avec les offsets définis dans le fichier xml, j'ai utiliser toutes les possibilités de blender. J'utilise les extra_position , extra_rotation et extra_scale. Ces possibilités ne sont pas nécessaire lorsque l'on lit uniquement les fichiers .ac
Lorsque j'ai pris contact avec lui, je ne crois pas qu'il a vu toutes les conséquences de la lecture du xml. Cela rend les deux scripts incompatibles, car la gestion est assez différentes. Ce qui est vraiment dommage, c'est qu'a la fin on aura un doublon, où son script sera certainement meilleure pour la lecture des fichiers ac, mais on ne pourra plus faire de "merge". Pire on utilisera les deux scripts, et cela ne sera vraiment pas pratique. Mais c'est comme ça.
F-JJTH a écrit:Ou encore : on revient "en arrière" et on réactive les options smooth, edge-split et split angle. On peut tout de même garder le edge-split dans le menu FlightGear menu tools, d'ailleurs est-il possible de grisé l'option si jamais l'objet séléctionné est déjà edge-splitter ?
Oui je pense comme toi ! Virer l'option et griser edge-split si il y en a un
F-JJTH a écrit:
Le système "d'active layer" est super, mais tu dis que Blender possède 20 layer, que se passerait-il si jamais on a plus de 20 fichiers XML ? dans ce cas il manquerai des layer :/
Personnellement je trouve que le fonctionnement actuel des layers est très bien : 1 layer avec l'avion + 1 layer avec les armatures
Amicalement,
Clément
Le but est de faire des layers tournants par exemple de 1 à 5 pour les objets et 6 à 10 pour les armatures. Evidement les bornes seront definis par l'utilisateur
_run_- Le baron rouge
- Messages : 433
Date d'inscription : 10/06/2011
Re: Script flightgear
Déplace-le dans le forum tutoriel !! je pense qu'il y sera mieux, en debut de post ...F-JJTH a écrit:J'ai mis à jour mon post "tuto".
Du coup vu que j'essaye de mettre des mots sur les actions en rédigeant ce tuto, je m'aperçois de plusieurs choses, donc j'écris ici les choses que j'ai pu noter histoire de ne pas les perdre.
F-JJTH a écrit:
Dans le menu "File>Import" est-il possible de masquer "FlightGear (.ac)" ? Je pense que l'utilisateur si il veut uniquement travailler en AC3D il ira chercher le script de mr_no et verra "AC3D format (.ac)" si il veut travailler les animations il verra "FlightGear (.xml)". Si il y a en plus "FlightGear (.ac)" l'utilisateur peut avoir un doute sur quel script utiliser pour importer un fichier AC3D. Cependant on garde toujours "notre" version de l'import AC3D c'est juste qu'on le dit pas à l'utilisateur
.
D'accord
F-JJTH a écrit:
- Family : nom_de_famille (menu déroulant)
- Property : chemin_de_la_propriété (menu déroulant)
- %d : valeur_de_%d_si_existant (slider)
Regarde un détail. Lorsque tu chosis dans familly , le choix "custom", alors il faudra renseigner la valeur de property. Exemple une propriété crée dans un fichier nasal, où une propriété oublié. Lorsque familly et Value ont des valeurs alors Property n'est là que pour renseignement, ce n'est pas éditable
A+
_run_- Le baron rouge
- Messages : 433
Date d'inscription : 10/06/2011
Re: Script flightgear
Les onglets sont déplaçables en cliquant et maintenant ici
_run_- Le baron rouge
- Messages : 433
Date d'inscription : 10/06/2011
Re: Script flightgear
René,
Concernant le script d'import/export AC3D : ok j'ai pigé Effectivement c'est vraiment dommage d'avoir un doublon mais c'est nécessaire car comme tu l'explique ton script est vraiment spécifique. Donc comme tu le dis si bien : Mais c'est comme ça Et ça me va très bien
Concernant les options d'import AC3D : Pour être sûr qu'on dit bien la même chose (je m'y perd un peu... j'apprends lentement ) Je suis POUR :
Concernant les layers : j'ai encore du mal^^ je n'arrive pas à me rendre compte des possibilité offerte par les layers. On en reparlera plus tard c'est pas urgent je pense.
J'ai réussi à cacher l'option "FlightGear (.ac) ! C'est sur le dépôt J'ai aussi fait des modifications mineur qui me semble rendre le script plus "standard" du genre au lieu d'avoir "Options ac" c'est maintenant "Option AC3D". Bref c'est du détail. j'ai vu plusieurs petite chose comme ça par-ci par là. Par exemple dans le menu déroulant qui permet de sélectionner la propriété, actuellement ce menu déroulant s'appelle "Value", je pense que le nom "Node" serait mieux adapter car en Nasal on écrit "getNode()" et "setNode()". Bref ça c'est ce que j'appelle du lexique, ce n'empêche pas le script de fonctionner, mais je veillerai à ce que le lexique couramment utilisé dans FlightGear soit le même dans ce script afin que l'utilisateur s'y retrouve.
[EDIT] Bon j'ai continuer à faire des modifications mineur de lexique dans le but d'homogénéiser la chose. J'ai aussi fait en sorte que la valeur de %d ne puisse pas être négative (à ma connaissance ça n'existe pas dans FG). Si les changements ne te paraissent pas judicieux ou peuvent porter à confusion dis-le moi
Ça y est ! je commence à vraiment mettre les mains dans le cambouis Tout est pushé sur le dépôt
[/EDIT]
Amicalement,
Clément
Concernant le script d'import/export AC3D : ok j'ai pigé Effectivement c'est vraiment dommage d'avoir un doublon mais c'est nécessaire car comme tu l'explique ton script est vraiment spécifique. Donc comme tu le dis si bien : Mais c'est comme ça Et ça me va très bien
Concernant les options d'import AC3D : Pour être sûr qu'on dit bien la même chose (je m'y perd un peu... j'apprends lentement ) Je suis POUR :
- Laisser le choix à l'utilisateur de faire un smooth lors de l'import
- Laisser le choix à l'utilisateur de faire un edge-split lors de l'import
- Laisser le choix à l'utilisateur du seuil du angle-split lors de l'import
- Si l'utilisateur décide de ne pas faire de edge-split lors de l'import il pourra toujours faire un edge-split à l'aide du menu FlightGear tools menu (raccourcis "f"). Dans ce cas comment fait l'utilisateur pour régler le angle-split ?
- Griser la case "edge-split" du menu FlightGear tools menu si jamais l'objet a déjà subit un edge-split. (comment savoir si l'objet a déjà été edge-splitté ? j'ai regardé dans l'API blender et il ne semble pas y avoir d'outils qui fasse ça )
Concernant les layers : j'ai encore du mal^^ je n'arrive pas à me rendre compte des possibilité offerte par les layers. On en reparlera plus tard c'est pas urgent je pense.
J'ai réussi à cacher l'option "FlightGear (.ac) ! C'est sur le dépôt J'ai aussi fait des modifications mineur qui me semble rendre le script plus "standard" du genre au lieu d'avoir "Options ac" c'est maintenant "Option AC3D". Bref c'est du détail. j'ai vu plusieurs petite chose comme ça par-ci par là. Par exemple dans le menu déroulant qui permet de sélectionner la propriété, actuellement ce menu déroulant s'appelle "Value", je pense que le nom "Node" serait mieux adapter car en Nasal on écrit "getNode()" et "setNode()". Bref ça c'est ce que j'appelle du lexique, ce n'empêche pas le script de fonctionner, mais je veillerai à ce que le lexique couramment utilisé dans FlightGear soit le même dans ce script afin que l'utilisateur s'y retrouve.
[EDIT] Bon j'ai continuer à faire des modifications mineur de lexique dans le but d'homogénéiser la chose. J'ai aussi fait en sorte que la valeur de %d ne puisse pas être négative (à ma connaissance ça n'existe pas dans FG). Si les changements ne te paraissent pas judicieux ou peuvent porter à confusion dis-le moi
Ça y est ! je commence à vraiment mettre les mains dans le cambouis Tout est pushé sur le dépôt
[/EDIT]
Amicalement,
Clément
Re: Script flightgear
F-JJTH a écrit:Concernant les options d'import AC3D : Pour être sûr qu'on dit bien la même chose (je m'y perd un peu... j'apprends lentement ) Je suis POUR :
Ne te focalise pas la dessus, c'est vraiment secondaire. Dans notre échange d'idée nous avons perdu de vue, qu'il faut considérer que le modélisateur à un but. Faire un avion dans FG de manière aussi précise qu'il le peut. Et qu'il sait ce qu'il fait.
Si il ne sait pas , soit il apprend, soit il échoue. Donc il sait ce qu'il fait.
Le but maintenant est de faire un script qui reste aussi fidèle que possible, entre le rendu blender et le rendu flightgear.
Donc j'ai fait une erreur, je n'aurait pas dû laisser le choix, et j'aurais dû imposer le edge-split. Car c'est le seul moyen d'avoir des rendus similaires. J'ai vu des recopies d'écran sur flightgear.org, où l'on voit que le lissage des objets n'est pas conforme au rendu de flightgear. Je crois mais je n'ai pas regarder en détail, qu'il n'utilise pas le "modifier" "edge-split".
Le but ultime du script est le suivant:
Eviter au maximum le lancement de blender, la sauvegarde de l'avion et le test "in-situ" dans flightgear. Faire gagner du temps au maximun lors de l'élaboration d'un avion. la modélisation est quelque chose de lourd et ardu. Et ces retours entre blender et flightgear sont pénibles.
Maintenant cela n'engage que moi. Mais lorsque je fais des manipulations répétitives, je trouve cela "anti-informatique" . Informatique viens de la contraction de deux mots, automatique et information, et je déteste les manipulations répétitives. Comme je vois que tu écris des script shell, je pense que tu as le même réflexe que moi.
Je deviens très optimiste sur l'avancement du script, car toi et alexis vous vous y impliqués. Cela me fait plaisir, et je vous dit un grand merci du fond du coeur. A un moment je me suis senti ... un peu seul ... et cela m'encourage à continuer.
A++
P.S. J'ai mis à jour le git pour la gestion des layers.
P.P.S. Pour griser le edge-split je te laisse le faire. Mais je vais t'aider aussi. ui_menu.py contient la définition du menu, et indique à blender quel opérateur doit être appeler. En l'occurrence, bpy.ops.view3d.edge_split. Cet opérateur est défini dans ops.flightgear.py. La fonction poll() de cet opérateur, grise le menu si elle retourne false et inversement l'active si elle retourne true. Donc ici tu fait le test sur l'objet actif ou la sélection, et tu regardes si il y déja un modifier edge-split bpy.data.objects['Cube'].modifiers est la liste des modifiers de l'objet.
_run_- Le baron rouge
- Messages : 433
Date d'inscription : 10/06/2011
Re: Script flightgear
Exactement_run_ a écrit:Comme je vois que tu écris des script shell, je pense que tu as le même réflexe que moi.
Oui je m'en voulais de ne pas m'impliquer plus que ça, mais le mois de Juillet a été un mois chargé pour moi. Maintenant que j'ai plus de temps je saute sur l'occasion pour m'impliquer à fond car j'ai bien vu que tu as créer plus de 98% du script à toi tout seul en fait._run_ a écrit:Je deviens très optimiste sur l'avancement du script, car toi et alexis vous vous y impliqués. Cela me fait plaisir, et je vous dit un grand merci du fond du coeur. A un moment je me suis senti ... un peu seul ... et cela m'encourage à continuer.
Ok je vais voir ça de suite._run_ a écrit:P.P.S. Pour griser le edge-split je te laisse le faire.
Je suis sur Mumble si jamais tu veux discuter
Amicalement,
Clément
Re: Script flightgear
Salut,
Le tuto avance : https://equipe-flightgear.forumactif.com/t1019-script-d-animation-blender
J'ai fait des tests concernant la gestion des layers, j'ai donc tout essayé ! Comme ça je sais de quoi je parle Donc j'ai fait :
- Option AC3D > Active layer décoché + Option XML > Active layer décoché = Le script charge les éléments dans les 10 premiers layers
- Option AC3D > Active layer coché + Option XML > Active layer décoché = Le script charge les éléments dans le premier layer
- Option AC3D > Active layer décoché + Option XML > Active layer coché = Le script charge les éléments dans les 10 premiers layers
- Option AC3D > Active layer coché + Option XML > Active layer coché = Le script charge les éléments dans le premier layer
J'ai l'impression que ce comportement c'est pas celui attendu (ou du moins ce n'est pas celui que j'ai compris ) Voici donc comment j'avais compris la chose :
- Option AC3D > Active layer décoché + Option XML > Active layer décoché = Choix qui ne doit pas être possible ! Car on va essayé de mettre 1 fichier AC3D par layer ainsi que 1 fichier XML par layer, hors un fichier XML peut inclure plusieurs fichiers AC3D... que va faire le script ??
- Option AC3D > Active layer coché + Option XML > Active layer décoché = Là le script va mettre tous les fichier AC3D inclue par un XML dans un layer, Si plusieurs XML inclus plusieurs fichiers AC3D on aura autant de layer que de fichier XML
- Option AC3D > Active layer décoché + Option XML > Active layer coché =Là le script va mettre chaque fichier AC3D dans un layer sans se préoccuper des XML
- Option AC3D > Active layer coché + Option XML > Active layer coché = Là le script met tout dans 1 seul layer (je préconise que ce soit le choix par défaut )
Ce dont j'en conclu : l'option 1 doit être impossible à faire, l'option 3 et 4 sont équivalentes. Du coup, je pense qu'on peut supprimer l'Option XML > Active layer, et cocher l'Option AC3D > Active layer par défaut, ça sera à l'utilisateur de la décocher si il en a besoin.
Encore une fois c'est ce que j'ai compris... et ce que j'ai compris n'est pas forcément ce qu'il fallait comprendre René, dis moi ce que tu en pense peut-être ai-je besoin d'explications ?
Pour le tuto il me reste a apprendre à créer des animations pour compléter la partie que ça concerne, ainsi que l'utilisation du dépliage X4
Il faudra aussi se pencher sur le script d'export AC3D, René je crois que tu es le seul à pouvoir faire ça :/
Amicalement,
Clément
Le tuto avance : https://equipe-flightgear.forumactif.com/t1019-script-d-animation-blender
J'ai fait des tests concernant la gestion des layers, j'ai donc tout essayé ! Comme ça je sais de quoi je parle Donc j'ai fait :
- Option AC3D > Active layer décoché + Option XML > Active layer décoché = Le script charge les éléments dans les 10 premiers layers
- Option AC3D > Active layer coché + Option XML > Active layer décoché = Le script charge les éléments dans le premier layer
- Option AC3D > Active layer décoché + Option XML > Active layer coché = Le script charge les éléments dans les 10 premiers layers
- Option AC3D > Active layer coché + Option XML > Active layer coché = Le script charge les éléments dans le premier layer
J'ai l'impression que ce comportement c'est pas celui attendu (ou du moins ce n'est pas celui que j'ai compris ) Voici donc comment j'avais compris la chose :
- Option AC3D > Active layer décoché + Option XML > Active layer décoché = Choix qui ne doit pas être possible ! Car on va essayé de mettre 1 fichier AC3D par layer ainsi que 1 fichier XML par layer, hors un fichier XML peut inclure plusieurs fichiers AC3D... que va faire le script ??
- Option AC3D > Active layer coché + Option XML > Active layer décoché = Là le script va mettre tous les fichier AC3D inclue par un XML dans un layer, Si plusieurs XML inclus plusieurs fichiers AC3D on aura autant de layer que de fichier XML
- Option AC3D > Active layer décoché + Option XML > Active layer coché =Là le script va mettre chaque fichier AC3D dans un layer sans se préoccuper des XML
- Option AC3D > Active layer coché + Option XML > Active layer coché = Là le script met tout dans 1 seul layer (je préconise que ce soit le choix par défaut )
Ce dont j'en conclu : l'option 1 doit être impossible à faire, l'option 3 et 4 sont équivalentes. Du coup, je pense qu'on peut supprimer l'Option XML > Active layer, et cocher l'Option AC3D > Active layer par défaut, ça sera à l'utilisateur de la décocher si il en a besoin.
Encore une fois c'est ce que j'ai compris... et ce que j'ai compris n'est pas forcément ce qu'il fallait comprendre René, dis moi ce que tu en pense peut-être ai-je besoin d'explications ?
Pour le tuto il me reste a apprendre à créer des animations pour compléter la partie que ça concerne, ainsi que l'utilisation du dépliage X4
Il faudra aussi se pencher sur le script d'export AC3D, René je crois que tu es le seul à pouvoir faire ça :/
Amicalement,
Clément
Re: Script flightgear
Salut Clément,
Je vais te répondre, en te parlant sur l'utilisation des layers.
Un objet blender (mesh, armature, camera, lumière, ...) appartient au moins à un layer. Ils peuvent être dans plusieurs layers. Par exemple, on pourrait avoir les objets du fuselage dans le layer 1 et 2, et les objets de l'aile dans les layers 1 et 3. En ne visualisant que le layer 1, on visualise tout l'avion. Le layer 2, uniquement le fuselage, et le layer 3 uniquement l'aile. On peut faire toutes sortes de combinaison pour faciliter la sélection. La touche 'a', sélectionne ou annule la sélection sur tous les objets visibles. C'est un peut comme les bureaux multiples de linux, une fois que l'on a compris comment ça marche on ne peut plus s'en passer.
En modélisant le spitfire, j'ai fait un découpage de ce genre , un layer fuselage, un autre aile, un cockpit, un éléments mobiles avions, un éléments mobiles cockpit. Les armatures dans des layers différents, les camera et lampes dans d'autres layers etc .. On fait comme on veut et c'est très personnel. par contre c'est très utile.
L'option Active layer (xml ou ac ). Permet de faire l'import dans le ou les layers actifs au moment du lancement de l'import.
En désactivant cette option les layers tournent entre chaque fichier xml.
Exemple Active layer décoché, Begin = 2 et End = 5.
Au premier xml le layer actif est le layer 2. Au xml suivant c'est le layer 3. Ainsi de suite jusqu'au layer 5. Si il y a encore des fichiers xml on recommence au layer 2.
Et ainsi de suite ..
A+
Je vais te répondre, en te parlant sur l'utilisation des layers.
Un objet blender (mesh, armature, camera, lumière, ...) appartient au moins à un layer. Ils peuvent être dans plusieurs layers. Par exemple, on pourrait avoir les objets du fuselage dans le layer 1 et 2, et les objets de l'aile dans les layers 1 et 3. En ne visualisant que le layer 1, on visualise tout l'avion. Le layer 2, uniquement le fuselage, et le layer 3 uniquement l'aile. On peut faire toutes sortes de combinaison pour faciliter la sélection. La touche 'a', sélectionne ou annule la sélection sur tous les objets visibles. C'est un peut comme les bureaux multiples de linux, une fois que l'on a compris comment ça marche on ne peut plus s'en passer.
En modélisant le spitfire, j'ai fait un découpage de ce genre , un layer fuselage, un autre aile, un cockpit, un éléments mobiles avions, un éléments mobiles cockpit. Les armatures dans des layers différents, les camera et lampes dans d'autres layers etc .. On fait comme on veut et c'est très personnel. par contre c'est très utile.
L'option Active layer (xml ou ac ). Permet de faire l'import dans le ou les layers actifs au moment du lancement de l'import.
En désactivant cette option les layers tournent entre chaque fichier xml.
Exemple Active layer décoché, Begin = 2 et End = 5.
Au premier xml le layer actif est le layer 2. Au xml suivant c'est le layer 3. Ainsi de suite jusqu'au layer 5. Si il y a encore des fichiers xml on recommence au layer 2.
Et ainsi de suite ..
A+
_run_- Le baron rouge
- Messages : 433
Date d'inscription : 10/06/2011
Re: Script flightgear
Bonjour à tous,
Ici vous pourrez lire 2 post, l'un de Detlef Faber, et l'autre de mr_no qui trouvent que c'est difficile de faire de bonnes animations... le script d'animation en sera le remède !
Peut-être même qu'un expert Blender pourrait faire une "vidéo démo" de l'animation d'un bras en fonction de la position de la manette des gaz Ça pourrait faire un beau coup de pub !
http://www.flightgear.org/forums/viewtopic.php?f=18&t=17162&p=163706#p163706
Amicalement,
Clément
Ici vous pourrez lire 2 post, l'un de Detlef Faber, et l'autre de mr_no qui trouvent que c'est difficile de faire de bonnes animations... le script d'animation en sera le remède !
Peut-être même qu'un expert Blender pourrait faire une "vidéo démo" de l'animation d'un bras en fonction de la position de la manette des gaz Ça pourrait faire un beau coup de pub !
http://www.flightgear.org/forums/viewtopic.php?f=18&t=17162&p=163706#p163706
Amicalement,
Clément
Re: Script flightgear
Salut clement,
Je me propose de refaire l'animation du pilote du DR400 jsbsim.
En faites je vais faire une approche méthodique, pour obtenir des rotations plus "propres"
Et déja je vois des modifications à faire au script.
Je voudrais avoir des rotations uniquement dans certains plans. Je pense que cette approche est beaucoup plus compréhensible.
Je me propose de refaire l'animation du pilote du DR400 jsbsim.
En faites je vais faire une approche méthodique, pour obtenir des rotations plus "propres"
Et déja je vois des modifications à faire au script.
Je voudrais avoir des rotations uniquement dans certains plans. Je pense que cette approche est beaucoup plus compréhensible.
_run_- Le baron rouge
- Messages : 433
Date d'inscription : 10/06/2011
Re: Script flightgear
Bonjour,
Un premier test sur la main droite du pilote.
Lorsque le tronc du pilote avance, des rotations ont été introduitent sur le bras gauche pour annuler les effets du tronc.
La main droite suit à peu près le manche. C'est à affiner. Pour l'instant je ne push rien sur le dêpot , car il y a encore beaucoup de modifications à faire sur le script. Il a fallut créer des sauvegardes et des restaurations de rotations.
J'ai travaillé de cette manière. Je bloque les rotations pour les ailerons, (sauvegarde et mise à zéro), et je travaille sur les animations de la profondeur. Une fois terminé. Je restaure les ailerons. Je bloque les rotations pour la profondeur, (sauvegarde et mise à zéro), et je travaille sur les ailerons. Puis je restaure la profondeur.
Les axes des rotations sont différents.
Voilà ce que j'obtiens .... bien sûr ... je pense que l'on peut faire mieux. Mais le temps de modélisation est relativement court. C'est encourageant. Ce qui est très long chez moi, c'est que je passe sans arrêt de l'élaboration du script à la modélisation.
Voila le pilot.xml
Pour ceux qui feront le test, n'oubliez pas de sauvegarder l'original, avant de faire le transfert.
Il y a encore pas mal de boulot pour le script, toujours à cause des offsets. Mais c'est en bonne voie
A+
Un premier test sur la main droite du pilote.
Lorsque le tronc du pilote avance, des rotations ont été introduitent sur le bras gauche pour annuler les effets du tronc.
La main droite suit à peu près le manche. C'est à affiner. Pour l'instant je ne push rien sur le dêpot , car il y a encore beaucoup de modifications à faire sur le script. Il a fallut créer des sauvegardes et des restaurations de rotations.
J'ai travaillé de cette manière. Je bloque les rotations pour les ailerons, (sauvegarde et mise à zéro), et je travaille sur les animations de la profondeur. Une fois terminé. Je restaure les ailerons. Je bloque les rotations pour la profondeur, (sauvegarde et mise à zéro), et je travaille sur les ailerons. Puis je restaure la profondeur.
Les axes des rotations sont différents.
Voilà ce que j'obtiens .... bien sûr ... je pense que l'on peut faire mieux. Mais le temps de modélisation est relativement court. C'est encourageant. Ce qui est très long chez moi, c'est que je passe sans arrêt de l'élaboration du script à la modélisation.
Voila le pilot.xml
Pour ceux qui feront le test, n'oubliez pas de sauvegarder l'original, avant de faire le transfert.
- Code:
<?xml version="1.0" encoding="UTF-8"?>
<!-- ########################################
# DR400-jsbSim by PAF team
# April 2012 : Modified by PAF team
# http://equipe-flightgear.forumactif.com
##########################################-->
<!-- Centres de rotation
Gauche
Epaule 0.4114 -0.10914 0.3536
Coude 0.2271 -0.259 0.1412
Poignet 0.196 -0.1621 0.1961
Genoux -0.0413 -0.1076 -0.0271
Pieds -0.2769 -0.1210 -0.3484
Bassin 0.2476 -0.0662 0.3740
Droite
Epaule 0.4127 0.1275 0.3540
Coude 0.291 0.2859 0.1418
Poignet 0.0415 0.1973 0.1961
Genoux -0.0413 0.1076 -0.0271
Pieds -0.2769 0.1210 -0.3484
Bassin 0.2476 0.0662 0.3740
tete 0.3791 0 0.3887
-->
<PropertyList>
<path>general_pilot.ac</path>
<animation>
<!-- Objets opaques -->
<object-name>mainG</object-name>
<object-name>mainD</object-name>
<object-name>tete</object-name>
<object-name>corps</object-name>
<object-name>brasG</object-name>
<object-name>brasD</object-name>
<object-name>avbrasG</object-name>
<object-name>avbrasD</object-name>
<object-name>avantbrasG</object-name>
<object-name>avantbrasD</object-name>
<object-name>cuisseG</object-name>
<object-name>cuisseD</object-name>
<object-name>jambeG</object-name>
<object-name>jambeD</object-name>
<object-name>piedG</object-name>
<object-name>piedD</object-name>
<!-- Objets transparents -->
</animation>
<animation>
<type>select</type>
<object-name>tete</object-name>
<object-name>corps</object-name>
<object-name>brasG</object-name>
<object-name>brasD</object-name>
<object-name>avbrasG</object-name>
<object-name>avbrasD</object-name>
<object-name>avantbrasG</object-name>
<object-name>avantbrasD</object-name>
<object-name>manche</object-name>
<object-name>cuisseG</object-name>
<object-name>cuisseD</object-name>
<object-name>jambeG</object-name>
<object-name>jambeD</object-name>
<object-name>piedG</object-name>
<object-name>piedD</object-name>
<object-name>mainG</object-name>
<object-name>mainD</object-name>
<condition>
<or>
<and>
<not-equals>
<property>sim/current-view/view-number</property>
<value>0</value>
</not-equals>
<not-equals>
<property>sim/current-view/view-number</property>
<value>12</value>
</not-equals>
</and>
<property>sim/model/config/show-pilot</property>
</or>
</condition>
</animation>
<!-- always hide the pilot's head when you're the pilote -->
<animation>
<type>select</type>
<object-name>tete</object-name>
<condition>
<and>
<not-equals>
<property>sim/current-view/view-number</property>
<value>0</value>
</not-equals>
<not-equals>
<property>sim/current-view/view-number</property>
<value>12</value>
</not-equals>
</and>
</condition>
</animation>
<!--
Script fg2blender v0.1 alpha (c)paf http://gitorious.org/paf/fg2blender
http://equipe-flightgear.forumactif.com
-->
<!--Armature.023-->
<animation>
<type>rotate</type>
<object-name>mainG</object-name>
<object-name>avbrasG</object-name>
<object-name>brasG</object-name>
<object-name>mainD</object-name>
<object-name>avbrasD</object-name>
<object-name>brasD</object-name>
<object-name>tete</object-name>
<object-name>corps</object-name>
<property>/controls/flight/aileron</property>
<factor>1.000000</factor>
<center>
<x-m>0.3174</x-m>
<y-m>-0.0001</y-m>
<z-m>-0.0221</z-m>
</center>
<axis>
<x>0.0000</x>
<y>0.0000</y>
<z>1.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>0.0000</dep>
</entry>
</interpolation>
</animation>
<!--Armature.024-->
<animation>
<type>rotate</type>
<object-name>mainG</object-name>
<object-name>avbrasG</object-name>
<object-name>brasG</object-name>
<object-name>mainD</object-name>
<object-name>avbrasD</object-name>
<object-name>brasD</object-name>
<object-name>tete</object-name>
<object-name>corps</object-name>
<property>/controls/flight/elevator</property>
<factor>1.000000</factor>
<center>
<x-m>0.3174</x-m>
<y-m>-0.0001</y-m>
<z-m>-0.0221</z-m>
</center>
<axis>
<x>0.0000</x>
<y>1.0000</y>
<z>0.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>-0.0508</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>-17.2501</dep>
</entry>
</interpolation>
</animation>
<!--Armature.025-->
<animation>
<type>rotate</type>
<object-name>mainG</object-name>
<object-name>avbrasG</object-name>
<object-name>brasG</object-name>
<property>/controls/flight/aileron</property>
<factor>1.000000</factor>
<center>
<x-m>0.4005</x-m>
<y-m>-0.1152</y-m>
<z-m>0.3418</z-m>
</center>
<axis>
<x>0.0000</x>
<y>0.0000</y>
<z>1.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>0.0000</dep>
</entry>
</interpolation>
</animation>
<!--Armature.026-->
<animation>
<type>rotate</type>
<object-name>mainG</object-name>
<object-name>avbrasG</object-name>
<object-name>brasG</object-name>
<property>/controls/flight/elevator</property>
<factor>1.000000</factor>
<center>
<x-m>0.4005</x-m>
<y-m>-0.1152</y-m>
<z-m>0.3418</z-m>
</center>
<axis>
<x>0.0000</x>
<y>1.0000</y>
<z>0.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>-0.0169</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>2.9323</dep>
</entry>
</interpolation>
</animation>
<!--Armature.027-->
<animation>
<type>rotate</type>
<object-name>mainG</object-name>
<object-name>avbrasG</object-name>
<property>/controls/flight/aileron</property>
<factor>1.000000</factor>
<center>
<x-m>0.2157</x-m>
<y-m>-0.2546</y-m>
<z-m>0.1430</z-m>
</center>
<axis>
<x>0.0000</x>
<y>0.0000</y>
<z>1.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>0.0000</dep>
</entry>
</interpolation>
</animation>
<!--Armature.028-->
<animation>
<type>rotate</type>
<object-name>mainG</object-name>
<object-name>avbrasG</object-name>
<property>/controls/flight/elevator</property>
<factor>1.000000</factor>
<center>
<x-m>0.2157</x-m>
<y-m>-0.2546</y-m>
<z-m>0.1430</z-m>
</center>
<axis>
<x>0.0000</x>
<y>1.0000</y>
<z>0.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>-0.0169</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>31.9899</dep>
</entry>
</interpolation>
</animation>
<!--Armature.029-->
<animation>
<type>rotate</type>
<object-name>mainG</object-name>
<property>/controls/flight/aileron</property>
<factor>1.000000</factor>
<center>
<x-m>0.0212</x-m>
<y-m>-0.2055</y-m>
<z-m>0.2026</z-m>
</center>
<axis>
<x>0.0000</x>
<y>0.0000</y>
<z>1.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>0.0000</dep>
</entry>
</interpolation>
</animation>
<!--Armature.030-->
<animation>
<type>rotate</type>
<object-name>mainG</object-name>
<property>/controls/flight/elevator</property>
<factor>1.000000</factor>
<center>
<x-m>0.0212</x-m>
<y-m>-0.2055</y-m>
<z-m>0.2026</z-m>
</center>
<axis>
<x>0.0000</x>
<y>1.0000</y>
<z>0.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>-0.0169</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>-33.0091</dep>
</entry>
</interpolation>
</animation>
<!--Armature.031-->
<animation>
<type>rotate</type>
<object-name>mainD</object-name>
<object-name>avbrasD</object-name>
<object-name>brasD</object-name>
<property>/controls/flight/aileron</property>
<factor>1.000000</factor>
<center>
<x-m>0.4012</x-m>
<y-m>0.1302</y-m>
<z-m>0.3419</z-m>
</center>
<axis>
<x>0.0000</x>
<y>0.0000</y>
<z>1.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>5.6235</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>-7.7598</dep>
</entry>
</interpolation>
</animation>
<!--Armature.138-->
<animation>
<type>rotate</type>
<object-name>mainD</object-name>
<object-name>avbrasD</object-name>
<object-name>brasD</object-name>
<property>/controls/flight/aileron</property>
<factor>1.000000</factor>
<center>
<x-m>0.4012</x-m>
<y-m>0.1302</y-m>
<z-m>0.3419</z-m>
</center>
<axis>
<x>0.0000</x>
<y>-1.0000</y>
<z>0.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>-4.6965</dep>
</entry>
<entry>
<ind>-0.0169</ind>
<dep>0.0000</dep>
</entry>
</interpolation>
</animation>
<!--Armature.032-->
<animation>
<type>rotate</type>
<object-name>mainD</object-name>
<object-name>avbrasD</object-name>
<object-name>brasD</object-name>
<property>/controls/flight/elevator</property>
<factor>1.000000</factor>
<center>
<x-m>0.4012</x-m>
<y-m>0.1302</y-m>
<z-m>0.3419</z-m>
</center>
<axis>
<x>0.0000</x>
<y>1.0000</y>
<z>0.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>-24.5331</dep>
</entry>
<entry>
<ind>-0.0169</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>28.5580</dep>
</entry>
</interpolation>
</animation>
<!--Armature.033-->
<animation>
<type>rotate</type>
<object-name>mainD</object-name>
<object-name>avbrasD</object-name>
<property>/controls/flight/aileron</property>
<factor>1.000000</factor>
<center>
<x-m>0.1463</x-m>
<y-m>0.1156</y-m>
<z-m>0.1736</z-m>
</center>
<axis>
<x>0.0000</x>
<y>0.0000</y>
<z>1.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>0.0000</dep>
</entry>
</interpolation>
</animation>
<!--Armature.137-->
<animation>
<type>rotate</type>
<object-name>mainD</object-name>
<object-name>avbrasD</object-name>
<property>/controls/flight/aileron</property>
<factor>1.000000</factor>
<center>
<x-m>0.1463</x-m>
<y-m>0.1156</y-m>
<z-m>0.1736</z-m>
</center>
<axis>
<x>0.0000</x>
<y>-1.0000</y>
<z>0.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>21.8262</dep>
</entry>
<entry>
<ind>-0.0169</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>-4.7771</dep>
</entry>
</interpolation>
</animation>
<!--Armature.034-->
<animation>
<type>rotate</type>
<object-name>mainD</object-name>
<object-name>avbrasD</object-name>
<property>/controls/flight/elevator</property>
<factor>1.000000</factor>
<center>
<x-m>0.1463</x-m>
<y-m>0.1156</y-m>
<z-m>0.1736</z-m>
</center>
<axis>
<x>0.0000</x>
<y>1.0000</y>
<z>0.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>44.2933</dep>
</entry>
<entry>
<ind>-0.0169</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>-39.6084</dep>
</entry>
</interpolation>
</animation>
<!--Armature.035-->
<animation>
<type>rotate</type>
<object-name>mainD</object-name>
<property>/controls/flight/aileron</property>
<factor>1.000000</factor>
<center>
<x-m>-0.0487</x-m>
<y-m>0.0436</y-m>
<z-m>0.1965</z-m>
</center>
<axis>
<x>0.0000</x>
<y>0.0000</y>
<z>1.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>0.0000</dep>
</entry>
</interpolation>
</animation>
<!--Armature.136-->
<animation>
<type>rotate</type>
<object-name>mainD</object-name>
<property>/controls/flight/aileron</property>
<factor>1.000000</factor>
<center>
<x-m>-0.0487</x-m>
<y-m>0.0436</y-m>
<z-m>0.1965</z-m>
</center>
<axis>
<x>0.0000</x>
<y>-1.0000</y>
<z>0.0000</z>
</axis>
<interpolation>
<entry>
<ind>-0.0169</ind>
<dep>0.0000</dep>
</entry>
</interpolation>
</animation>
<!--Armature.036-->
<animation>
<type>rotate</type>
<object-name>mainD</object-name>
<property>/controls/flight/elevator</property>
<factor>1.000000</factor>
<center>
<x-m>-0.0487</x-m>
<y-m>0.0436</y-m>
<z-m>0.1965</z-m>
</center>
<axis>
<x>0.0000</x>
<y>1.0000</y>
<z>0.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>-0.0169</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>0.0000</dep>
</entry>
</interpolation>
</animation>
<!--Armature.037-->
<animation>
<type>rotate</type>
<object-name>tete</object-name>
<property>/controls/flight/aileron</property>
<factor>1.000000</factor>
<center>
<x-m>0.3727</x-m>
<y-m>0.0000</y-m>
<z-m>0.3905</z-m>
</center>
<axis>
<x>0.0000</x>
<y>0.0000</y>
<z>1.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>0.0000</dep>
</entry>
</interpolation>
</animation>
<!--Armature.038-->
<animation>
<type>rotate</type>
<object-name>tete</object-name>
<property>/controls/flight/elevator</property>
<factor>1.000000</factor>
<center>
<x-m>0.3727</x-m>
<y-m>0.0000</y-m>
<z-m>0.3905</z-m>
</center>
<axis>
<x>0.0000</x>
<y>1.0000</y>
<z>0.0000</z>
</axis>
<interpolation>
<entry>
<ind>-1.0000</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>-0.0169</ind>
<dep>0.0000</dep>
</entry>
<entry>
<ind>1.0000</ind>
<dep>18.6565</dep>
</entry>
</interpolation>
</animation>
</PropertyList>
Il y a encore pas mal de boulot pour le script, toujours à cause des offsets. Mais c'est en bonne voie
A+
_run_- Le baron rouge
- Messages : 433
Date d'inscription : 10/06/2011
Re: Script flightgear
C'est pas mal du tout ! J'imagine que lorsque les 2 animations se rencontrent (animation elevator + animation aileron) c'est pas facile à gérer ?
Effectivement c'est en faisant des exemples concret qu'on voit ce dont on a besoin dans le script.
Je vais bientôt continuer le tuto avec la partie "Créer des animations"
Amicalement,
Clément
Effectivement c'est en faisant des exemples concret qu'on voit ce dont on a besoin dans le script.
Je vais bientôt continuer le tuto avec la partie "Créer des animations"
Amicalement,
Clément
Re: Script flightgear
F-JJTH a écrit:C'est en faisant des exemples concret qu'on voit ce dont on a besoin dans le script.
Tout à fait d'accord, c'est pour cela que je voulais passer à l'étape suivant la création d'un avion. Cela va transformer profondément le script. Et à partir de là on pourra publier quelque chose sur flightgear.org.
J'attends avec impatience , l'arrivée de l'hélico.
A+
_run_- Le baron rouge
- Messages : 433
Date d'inscription : 10/06/2011
Page 8 sur 17 • 1 ... 5 ... 7, 8, 9 ... 12 ... 17
Sujets similaires
» Script flightgear Import/Export .ac
» Script download_and_compile.sh
» Script blender ...
» Photo flightgear
» ALAT flightgear
» Script download_and_compile.sh
» Script blender ...
» Photo flightgear
» ALAT flightgear
Page 8 sur 17
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|