See site in english Voir le site en francais
Website skin:
home  download  forum  link  contact

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

Author Topic: Hermès enfin terminée !! ;) Addon dispo page 15 !  (Read 89060 times)

0 Members and 2 Guests are viewing this topic.

Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #50 - 03 August 2006, 09:08:13
Je suis bien d'accord ;) Effectivement, je suis parti sur cette version car visiblement, c'était la dernière étape d'un
point de vue évolution d'hermès. Donc, je voulais rester sur une base réaliste d'un point de vue "historique".
Pour le raccord aile corps, je vois ce que vous voulez dire, j'essaierai de corriger ...

Sinon, si quelqu'un a une méthode sûre pour le PMI ( et par la même occasion, les paramètres aérodynamiques pour
le vol atmosphérique de la navette), c'est le bienvenue ! ;) Car là, je pêche un peu ....



Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #51 - 03 August 2006, 22:50:00
Alors, j'ai un soucis, et c'est primordial pour la suite; je vous expose mon problème, si quelqu'un a la solution, ça
m'aidera pour la suite :

Petit résumé : Hermès est composé :
- du mph (propulseur principal d'hermès, système de docking à un module extérieur (ISS, etc) et panneaux)
- du mrh (module de ressource, intégré entre la navette et le mph)
- d'hermès (la navette seule)

J'utilise le lanceur ariane 5, jusque la, ça va. Je souhaiterais que hermes, le mrh et le mph soient attachés entre eux  
lorsque l'ensemble se détache d'ariane, mais de façon à ce que les 3 modules puissent être utilisé distinctement. Je
pensais utiliser le mph et le mrh en "STAGE" dans le fichier ini du multistage, et hermes en "PAYLOAD". Le pb est que
je ne peux accèder à ceux ci que lorsqu'il sont tous détachés les uns des autres. Donc, ça ne va pas.

Je pensais utiliser ensuite ci comme 3 PAYLOAD différents mais lorsqu'un se détache d'ariane, les autres restent
attachés à celle ci (logique ;)) mais ça ne va pas du coup ;)
Je voudrais qu'ils restent dockés les uns aux autres, tout en pouvant switcher d'un à un autre (avec la touche "F3"
d'obiter, vous voyez ce que je veux dire) et donc utiliser leur module (fichier ini ou dll) de manière distinctes (exemple
la touche "K"  pour les panneaux du mph et mettons la touche "G" pour le train d'atterissage d'hermès, bien sur c'est
un exemple).

Donc, là je perds un peu les pédales car je ne vois pas comment je pourrais faire, je me demande d'ailleurs si c'est
gérable.

Après je me suis dit, pourquoi ne pas afficher un seul mesh pour l'ensemble, puis 2 après un séparation et enfin 3 à la
dernière séparation, de façon à faire la rentrée avec hermès, mais pareil, je ne vois pas trop comment faire.

Donc, si quelqu'un a une idée, je lui en serait très reconnaissant, car là, j'ai un peu mal au crane à me torturer
l'esprit :) Merci d'avance ;)



Message modifié ( 03-08-2006 22:50 )


Offline korben62

  • Hero Member
  • *****
  • Posts: 561
  • Karma: 0
Reply #52 - 04 August 2006, 00:25:52
Je ne sais pas comment fonctionne le systéme de payload d'ariane,  ni multistage, mais je connais les différents types
d'attachement; les docks, les "child attachment" , les "parent attachment" et leurs influences sur le modéle de vol
dans le cas  du SANKUKAI j'ai utilisé les "child" 1 sur le stragire et 1 sur le jetiscope
2 "parent" et 1 "dock" sur le sankukai , Si j'avais imaginé un (hypothétique ) étage de lancement pour le sankukai
j'aurais sans doute équipé celui ci d'un attachement "child" suplémentaire et l'etage de lancement d'un
attachement "parent" (et aussi un calcul de transfers de masse puisque contrairement au "dock"s les attachements
n'ont pas d'influence)
de cette façon lorsque l'etage propulseur est détaché les trois vaisseaux restent, eux , attachés ensemble
Tu vois ou je veut en venir, il y a une hiérarchie
ton probléme est le méme, c'est juste la disposition qui est différente
Donc , a mon avis en gerant l'ensemble Hermes MRH MPH avec spacecraft (ou mieux un dll du type SANKUKAI) et le
reste avec multistage ça devrais marcher
J'explique

Le DLL sert d'interface entre l'ensemble hermes MRH MRB et le lanceur
Je l'ai fait sur la 1ére version du sankukai les 2 chasseurs etaient gérés par le spacecraft 3 et le sankukai par le DLL
ce doit étre possible aussi avec multistage




Offline korben62

  • Hero Member
  • *****
  • Posts: 561
  • Karma: 0
Reply #53 - 04 August 2006, 00:38:27
Nota:
bien sur si tu fait un DLL spécifique pour chaque elements la tu peut faire ce que tu veut
puisque tu peu quasiment tout controler à partie de l'Hermes
Tout sauf les animations user, DAN , j'arrive pas à faire marcher le GetProcAddress CRIMSON ne permet pas d'utiliser
des fichier DEF
j'ai aussi essayé avec __declspec( dllexport ) pour les fonctions exportés de la dll et ça marche pas non plus




Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #54 - 04 August 2006, 06:42:38
Super, je vois ce que tu veux dire ! ;)  J'ai pensé à 2 solutions hier soir :
soit je ne me prenais pas la tête et je gérais ça juste avec des points de dock dans un premier temps (en gros juste
le mph attaché et les autres dockés à celui ci) et ca impose juste de bien configurer le fichier scn. le risque c'est que
tout se détache lors de la rentrée.
Ou alors, juste une dll comme tu l'as fait pour le sankukai donc merci pour ta réponse, ça confirme ce que je pensais,
je bosse ça ! ;)

Peux tu me dire sinon comment tu as trouver le PMI STP ?



Message modifié ( 04-08-2006 07:12 )


Offline korben62

  • Hero Member
  • *****
  • Posts: 561
  • Karma: 0
Reply #55 - 04 August 2006, 12:40:05
A l'aide de Shipedit.
j'ai jamais aprécié les intégrales, je prefére la descro et la trigo




Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #56 - 04 August 2006, 16:39:27
Et ca correspond à quoi dedans ? Y'a pas écrit PMI ! ;) juste cross section et un paquet d'autres trucs ..



Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #57 - 04 August 2006, 20:51:27
Bon tout va bien, grace à korben, j'ai une solution qui marche !! Un grand merci à toi, tu figurera dans les docs, car
sans toi, je n'aurais pu y parvenir ! ;)
Petit soucis néanmoins.
J'ai 3 DLL (associé au 3 module sur le meme principe que le sankukai). J'arrive à les afficher niquel sous orbiter mais
comment docker finalement la partie MPH à ariane 5 sans le désigner dans multistage, car si je le fais, c'est un autre
objet MPH qui est créé et qui n'a rien à voir avec les 3 modules précédents.
J'espère ne pas être trop vague dans mes propos ! ;)
Merci d'avance ...



Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #58 - 05 August 2006, 00:47:44
J'avais une petite idée, mais qui ne marche pas vraiment ...
J'ai créé un point de docking sur Ariane5 (fichier de config que ai créé) sur lequel je dock le MPH. Je pensais que ça
règlerai mon pb mais visiblement, après chargement du scénario, ca charge bien mais les module ne sont pas
attaché. Si je vais vérifié les infos sur les 2 modules (sous orbiter), ils me mets pourtant qu'ils sont dockés
(informatiquement mais pas visuellement) ... Bizarre ...
La j'ai épuisé mon stock d'idée ... si vous en avez une autre, je suis preneur ! ;)



Offline korben62

  • Hero Member
  • *****
  • Posts: 561
  • Karma: 0
Reply #59 - 05 August 2006, 02:23:53
Bon j'ai plongé dans la doc Multistage , effectivement le multistage est moins souple que le spacecraft 3
De ce que j'en ais compris le mesh payload ne devienst un vaisseaux qu'au momment de sa séparation et le fichier
config de ce payload n'est lu qu'a ce momment la.
Pas top ça
Je vois bien (peut étre) une ou 2 autre possibilité, mais ça risque de demander de proceder par tatonnement

1 peut etre le multistage utilise des "attachment"s  pour les payload (je pense ! c'est pour les fonctions attachchild et
detachchild ); le truc ce serais de récuperer le handle de ces attachment, un peu comme j'ai fait pour les stragire et
jetiscope a l'aide de getvesselbyname. Si on récupére le handle on recupére son sens et ses coordonnées dans le
repére du vaisseaux Ariane.
le but serais, connaissant le sens et les coordonnée du payload dans le repére Ariane, de les traiter dans le dll du mrh
de maniére a afficher le mrh à cette position et dans cette orientation, corrigée a la position et à l'orientation du
vaisseaux Ariane.
Pour cela il faudrais créer un mesh bidon ( je sais pas, une vis, un boulon, un joint ) bref un truc dont le nom de
vaisseau est connus et qui n'apparaitra qu'au moment de sa création (de son larguage)par le multistage (vessel
créate); de detecter cette création a l'aide de getvesselbyname pour lancer les moteurs du MRH

2 si il est impossible de récuperer ces fameux handles, alors il faudrais recuperer directement la position et
l'orientation du vaisseaux ariane de maniére a afficher le mrh au bon endroit (position et orientation du payload)
toujours a l'aide de getvesselbyname GetGlobalPos GetGlobalOrientation
et comme au dessus recuperer l'instant de la création du vaisseau "dummy"

personellement je pense que multistage ne gére que des mesh,  il ne crée les vaisseaux qu'au moment de leur
larguage( ce qui explique pourquoi  il n'apparaissent pas par F4 et aussi pourquoi il faut donner au multistage
le nom du mesh et de son fichier config)

la 3 éme plus compliquée est de faire aussi un dll pour ariane en s'inpirant de celui de l'exemple spaceshuttle du SDK
se serait intéressant car cela permettrais de lui accrocher  n'importe quoi




Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #60 - 05 August 2006, 10:18:17
Merci korben pour ces idées, je vois comment je vais m'y prendre ! ;)



Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #61 - 05 August 2006, 13:52:27
Bon, alors je viens de tester différentes manières :
j'ai essayé de récupérer les attachements d'ariane5 (korben et moi pensions qu'il en existait pour les payload), ce
n'est malheureusement pas le cas.

Du coup, la seule solution valable serait de créer une dll spécifique pour ariane5 en incluant cette fois un attachment
pour hermès.
Le problème est que je ne connais pas les dimensions exactes de chaque meshs, donc là  je requiers ton aide well,
toi qui a été le développeur de cette belle fusée ! :)

J'aurais besoin que tu me fournisses (si ca ne te dérange pas bien sur) les fichiers 3ds des 3 modules différents
d'ariane (à savoir un booster, le premier étage et le second) afin de retrouver toutes les coordonnées pour intégrer
les exhausts sur celle ci (afin que la tienne et la mienne soit à l'identique d'un point de vue visuel).

Grâce à ca, plus de problème pour moi car chaque étage sera géré indépendamment, il me faudra juste quelques
infos pour la gestion des boosters, mais je devrait pouvoir trouver ça dans les sources de la navette atlantis, vu que
le principe est le même.

Bon, c'est vrai, ça me file du coup un max de boulot, mais ça en vaut la peine pour la suite !

Dernier carat, l'idéal aurait été que vinka intègre un système d'attachment (optionnel par exemple) qui m'aurait évité
tout ça, mais bon, on va pas se plaindre, ses modules sont déjà géniaux, un grand bravo à lui d'ailleurs, j'ai tout
compris sur le multistage et ses dérivés gràce à sa doc ! ;)



Offline Well

  • Legend
  • ******
  • Posts: 2722
  • Karma: 46
    • L'Atelier Wellographique
Reply #62 - 05 August 2006, 14:32:13
Je fait une exportation directement depuis 3dstudio max... mais detoute façon avrai dire je ne comprend pas ce que
tu veux faire...

Multistage gére trés bien les payload comportant une dll...
Le systéme est totalement different de spacecraft, mais c'est normal car les besoin ne sont pas les mêmes, il n'y a
aucun interet à avoir un systeme d'attachement sur Multistage...


Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #63 - 05 August 2006, 14:48:57
Je ne suis pas d'accord. Je t'explique : l'objet n'est créé uniquement que lorsque celui ci est détaché et il n'y a pas
d'attachment permettant de docker un autre objet spécifié dans le scénario. Moralité, j'ai beau avoir mes 3 modules
défini dans mon scénario, impossible de les connecter à ariane5.
Et quand bien même j'incluerai un de mes module dans le payload de multistage, d'une je ne pourrai le voir sous
orbiter tant qu'il ne sera pas détaché, et de 2, il sera créer en double si j'intègre mes 3 modules dans le scénar.
Je ne sais pas si j'ai été clair, mais crois moi, c'est impossible de docker un module défini dans le scénar à un lanceur
utilisant multistage pour résumer. Car comme je le disais, pas d'attachment spécifié dans multistage.dll, tout
simplement.

[EDIT] : J'ai envoyer un mail à vinka pour avoir quelques infos et lui soumettre mon soucis afin de voir si il y a moyen de trouver une soluce.



Message modifié ( 05-08-2006 15:03 )


Offline Well

  • Legend
  • ******
  • Posts: 2722
  • Karma: 46
    • L'Atelier Wellographique
Reply #64 - 05 August 2006, 15:11:29
Ce que je comprend c'est que tes 3 modules sont detaché... il faudrait simplement que tu ai une seule dll pour
l'ensemble. Generalement c'est comme cela que ça se passe pour tous les autres add-ons...

Bon je ne sais pas si cela peut t'aider, mais No matter avait configurer l'ancienne ariane en multistage2 pour lancer
l'ancienne hermes... c'est dans son pack ESA Orbital lab "Cassiopée" for Orbiter05
http://perso.orange.fr/nomat/orbiter/index.html

Avec Multistage2, pour que le mesh de la charge utile soit visible pendant le lancement, même avant d'appuyer
sur "J", Il y a juste un parametre à rentré dans le fichier config...
Je ne sais plus quoi, mais No Matter doit le savoir.
En regardant son ancienne config Ariane pour hermes tu doit pouvoir trouver.


Offline Extincteur

  • Legend
  • ******
  • Posts: 1170
  • Karma: 0
Reply #65 - 05 August 2006, 15:35:33
bon ben ca a par l'air simple boncourage pour ton magnifique add-on !!!!



Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #66 - 05 August 2006, 15:42:12
Et non, j'ai besoin de 3 dll car les 3 modules ne fonctionne pas de la meme facon. J'ai besoin d'un paramétrage précis
et c'est la meilleure méthode. Mais la n'est pas mon problème puisque ca marche. Je ne peux juste pas attacher
hermes a ariane autrement qu'avec le payload de multistage. Ca ne m'interesse pas d'utiliser le payload car ca ne fait
pas ce que je souhaite. J'ai envoyé un mail à vinka pour lui expliquer tout ca, on verra ce qu'il en penser et s'il peux
faire un ti patch à son module néanmoins très pratique. Je lui ai soumis l'idée d'un attachment paramétrable dans le
fichier .ini (de multistage) qui résoudrait mon problème et probablement celui de beaucoup d'autre pour de futurs
lanceurs.



Offline Well

  • Legend
  • ******
  • Posts: 2722
  • Karma: 46
    • L'Atelier Wellographique
Reply #67 - 05 August 2006, 15:45:52
Je te souhaite bon courage ^^
Je serais toi j'ecrirais quand même un mess à No matter, je suis quasiment certain qu'il trouverais une solution à ton
probleme.


Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #68 - 05 August 2006, 15:46:39
Je vais faire ça également, merci well pour tes conseils ! ;)
Tu as son @ email well à tout hasard ? si oui, pourrais tu me l'envoyer en MP ? merci

Merci aussi à toi extincteur et à tous les autres pour vos encouragements, c'est motivant ! :)



Message modifié ( 05-08-2006 15:48 )


Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #69 - 06 August 2006, 11:58:26
Voici la réponse de vinka :

"Actuellement, les 'attachment' sont gérés dans spacecraft.dll mais pas dans multistage.dll Je comprends bien ce que tu veux faire mais je ne vois pas de solution évidente avec multistage.

Il devrait y avoir moyen de bidouiller quelque chose en définissant l'attachment nécessaire dans un fichier cfg
standard d'Orbiter en plus du fichier ini de multistage.

L'ajout des attachment dans multistage est au programme de la future version mais j'ai tellement de choses à faire
en dehors d'Orbiter que pour l'instant je n'y travaille pas."

Voila, donc je ne sais pas encore comment je vais me débrouiller mais j'y réfléchis ...



Message modifié ( 06-08-2006 12:14 )


Offline no matter

  • Legend
  • ******
  • Posts: 2826
  • Karma: 1
Reply #70 - 06 August 2006, 16:35:50
Pour moi, il n'y a pas vraiment de solutions à ton problème.
Si je comprend bien, tu as trois modules donc trois dll et mettre çà sur Ariane5 est bien sûr impossible.
La seule chose que tu puisses faire est de créer un mesh regroupant tes 3 modules pour l'intégrer à Ariane5,
seulement dans la définition [Payload_1] tu dois pointer "module" vers non pas une nouvelle définition mais la
définition d'un de tes modules. Ceci couvrira le lancement.

Mais tu te retrouveras encore dans la même situation lorsque la charge utile sera larguée, un seul de tes modules
sera présent. Je connais trop mal le C++ mais pourrait-il y avoir un moyen de gérer celà à ce niveau, créér un état
dans lequel un des modules appèlerai les autres automatiquement selon la situation donnée...

Je ne vois malheureusement pas d'autre alternative.

Bon courage ;)


------------

no matter.

Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #71 - 06 August 2006, 17:07:25
Attends, tu me donnes une idée, il ya peut être un solution ; détruire le mesh composés des 3 modules et créer les 3
autres modules ( 3 meshs différents cette fois immédiatement).

Du coup une dll au départ pour le meshs global et à la séparation, on crée les 3 meshs correspondants aux 3 autres
DLL.

Après, bon, c'est peut être un peu tendu à réaliser, j'aurais peut être besoin de l'aide de korben pour ça, mais je
pense que c'est réalisable !

MErci pour tes idées no matter ! ;)

Sinon, les animations sont en cours de réalisation, j'ai fini l'animation du sas d'hermès et du train  d'atterissage.
Je mettrais quelques photos plus tard. Il me reste l'animation des 4 panneaux radiateurs du mph.

[EDIT] : au pire, j'attendrais le multistage suivant avec les attachments intégrés mais bon, c'est peut être pas pour aujourd'hui ! ;)



Message modifié ( 06-08-2006 17:08 )


Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #72 - 06 August 2006, 22:55:22
Bon, ca avance, j'ai quelques idées mais des soucis avec la fonction oapiCreateVessel. J'ai utilisé l'exemple de
surveyor mais ca plante. Je tente de créer le mesh d'hermès lorsque je largue le payload (de façon à supprimer l
meshs global (les 3 modules en 1 meshs)) de façon à créer les autres meshs de façon distinctes. Je commence juste
avec hermès pour tester si ça fonctionne mais ça plante. Et c'est bien oapiCreateVessel qui fait planter mais je ne vois
pas pourquoi, car j'ai recopier correctement le code indiqué dans de multiples exemples.
Si quelqu'un a déjà fait la manip, je suis preneur ! ;)
Merci d'avance !



Offline brainstorm

  • Legend
  • ******
  • Posts: 2694
  • Karma: 0
Reply #73 - 06 August 2006, 23:22:15
Pardon, petite correction, c'est la fonction GetStatus qui me fait planter ... Donc la, je cherche encore si vous avez une
idée... ;) Je poste si je trouve cette fois ;)



Offline korben62

  • Hero Member
  • *****
  • Posts: 561
  • Karma: 0
Reply #74 - 07 August 2006, 00:29:25
tu devrais poster to code