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: COMMENT FONCTIONNE 3ds2msh  (Read 6458 times)

0 Members and 1 Guest are viewing this topic.

Offline davre

  • Newbie
  • *
  • Posts: 8
  • Karma: 0
06 March 2006, 12:32:42
salut a tous
je n'arrive pas a le faire fonctionner.
il bloque tous de suite.
le probleme vient peut etre d'un probleme avec windows xp.
merci a tous pour votre aide.



Offline Papyref

  • Legend
  • ******
  • Posts: 5361
  • Country: France fr
  • Karma: 354
  • Je suis dans la Lune ne pas me déranger
Reply #1 - 06 March 2006, 13:30:47
Tu lances "Invite de commande" que tu dois avoir dans Tous les programmes--> dossier Accessoires et tu as la main
pour lancer par 3ds2msh

:turning: Papyref


Offline Well

  • Legend
  • ******
  • Posts: 2722
  • Karma: 46
    • L'Atelier Wellographique
Reply #2 - 06 March 2006, 17:30:17
J'en profite de te demander au passage, papyref...
Utilise-tu 3ds2msh ? J'aimerais résoudre mon probléme d'exportation.

Petit recapitulatif:
J'utilise 3d studio max -> j'exporte en .3ds -> je convertis en .msh avec 3ds2msh = disparition des noms que j'ai
attribué au parties de mon modele 3d (pas evident ensuite pour animer !)

Si j'ouvre mon fichier .3ds avec animator les noms sont bien la (ce n'est donc pas à l'export que ça merdouille ^^)
J'aimerais donc savoir si tu convertit ton fichier 3ds venant d'animator avec 3ds2msh, et que tu as bien les noms qui
apparaissent..?
Si c'est le cas je peux essayer la manipulation suivante:
3dsMax export en .3ds -> animator import pui export a nouveau en .3ds -> enfin conversion avec 3ds2msh.


Offline davre

  • Newbie
  • *
  • Posts: 8
  • Karma: 0
Reply #3 - 06 March 2006, 17:48:42
merci les gars
je vais faire un essai


Offline Profil supprimé

  • Newbie
  • *
  • Posts: 1
  • Karma: 0
Reply #4 - 06 March 2006, 21:14:10
sur un site anglo qui fait un tuto pour faire des addons pourOrbiter le gars dit qu'il fait mettre f=v (c'est lié aux
textures). As tu essayé Papy ?
Idem avec a=xyz alors que moi j'utilise xz-y comme tu me l'avais conseillé. Ca doit chambouler un peut tout. mais est
ce mieux de partir ave cla base a=xyz ?



Offline Papyref

  • Legend
  • ******
  • Posts: 5361
  • Country: France fr
  • Karma: 354
  • Je suis dans la Lune ne pas me déranger
Reply #5 - 07 March 2006, 06:12:28
Pour Well
Je convertit le 3ds Animator avec 3ds2msh et j'ai bien les noms dans le mesh. Attention aux noms il semble que le
convertisseur n'aime pas les blancs et les valeurs numériques. Ton probléme vient peut être de là ?

Pour Mustard
Les axes y et z sont inversés entre Animator et Orbiter. Si on dessine le projet en tenant compte de ces particularité
on peut faire la conversion en utilisant a=xyz mais ça peut être génant.
Si on conçoit un appareil type DG ou une voiture, il est normal pour la vision de le représenter avec son axe
longitudinal horizontal dans Animator. Mais quand on convertit le mesh va donner un appareil bizarre si on la place
normalement sur le sol et il aura la tête en haut.
De même si on dessine une fusée tête en haut comme celle ci à son axe longitudinal qui est l'axe Y dans Animator,
elle aura son moteur principal qui poussera comme un Hover dans Orbiter si on n'inverse pas les axes du mesh.
Le choix de a dépend donc de la façon dont on représente l'objet avant d'exporter pour convertir.
Je vais essayer d'écrire un petit tuto pour clarifier les idées

:turning: Papyref


Offline Profil supprimé

  • Newbie
  • *
  • Posts: 1
  • Karma: 0
Reply #6 - 07 March 2006, 09:10:34
Ok c'est bon Papy, en fait je ne savais pas que a=xz-y était spécifique à anim8or. Celui que j'ai vu et qui utilisais
a=xyz devait utiliser gmax ou 3dstudio.
Et f=v ça te dis quelque chose ? c'est lié aux texture apparement



Offline Papyref

  • Legend
  • ******
  • Posts: 5361
  • Country: France fr
  • Karma: 354
  • Je suis dans la Lune ne pas me déranger
Reply #7 - 07 March 2006, 11:24:09
Voilà mes derniers essais.
J'ai créé un avion très simplifié que voici




Aile gauche vue avant en rouge et aile droite en vert.
Le sens de poussée du moteur doit être dans la direction positive de l'axe z
Taille de l'avion sur la grille de 10 environ 10 carreaux ce qui donne 10x10 =100m Je vais appliquer un coefficient a=
0.1 pour avoir en final un mesh d'avion d'environ 10m

J'ai placé un logo ESA dont je n'ai pas inversé la texture en dds

1 - en faisant la conversion du 3ds exporté (que j'ai appelé astucieusement avion.3ds) avec la formule
           3ds2msh i=avion o=avion a=xyz s=0.1 f=v
voilà le résultat avec un scénario posé à KSC



Ce n'est pas terrible, mais il fallait s'y attendre puisque les axes y et sont inversés entre les deux logiciels. On ne le
voit pas sur la photo mais le logo est inversé
Si on allume le moteur principal l'avion se déplace comme une bougie en translation ce qui est normal puisqu'Orbiter
pousse suivant l'axe des y

2 - en faisant la conversion du 3ds exporté avec la formule
           3ds2msh i=avion o=avion a=xzy s=0.1 f=v

tout rentre dans l'ordre et le logo est dans le bon sens



Le moteur principal, le moteur rétro et le hover donnent des déplacements dans le bon sens.

:turning: Papyref



Offline Profil supprimé

  • Newbie
  • *
  • Posts: 1
  • Karma: 0
Reply #8 - 07 March 2006, 11:51:27
a=xz-y tu veux dire ?
Et f=v il sert à quoi concretement ? il remet le logo dans le bon sens ?

Merci pour ces précisions papy



Offline Well

  • Legend
  • ******
  • Posts: 2722
  • Karma: 46
    • L'Atelier Wellographique
Reply #9 - 07 March 2006, 12:07:26
Merci pour les eclaircicement,
Moi j'utilise eglement a=xyz f=v
Je modelise en prenant cela en compte, par contre pour la texture je doit avouer ne pas connaitre le veritable sens
de f=v

Sachant tout cela je vais refaire des essais d'export, je pense qu'en reprenant mon fichier avec animator je devrais
avoir les noms à nouveau. Reste à savoir si ce passage par animator ne va pas trop chambouler mon mesh et mes
textures.


Offline Papyref

  • Legend
  • ******
  • Posts: 5361
  • Country: France fr
  • Karma: 354
  • Je suis dans la Lune ne pas me déranger
Reply #10 - 07 March 2006, 12:33:52
Non j'ai bien dit a=xzy Mustard. Je ne fais aucun effet miroir en prenant la précaution de tourner le derrière de l'avion  
dans le sens des z.
Quand on modélise il faut tenir compte de ce qui va se passer quand on applique a=x??  et une fois que ça convient il
faut y rester. J'ai utilisé quelquefois xz-y pour rectifier des erreurs de conception ou j'avais placé à gauche ce qui
aurait du être à droite comme je l'avais fait avec le char Tintin par exemple.
Si on dessine correctement comme je l'ai fait pour mon avion il n'y a pas de raison de faire un effet miroir. Comme tu
peux voir, mon aile rouge est bien la gauche en vue avant dans Orbiter.

En utilisant f=v on n'a pas besoin de faire une texture dds retournée à partir de la texture bmp utilisée. Il suffit de
convertir directement la texture bmp en texture dds en utilisant DTex avec 1 couche alpha et le convertisseur si on
utilise f=v en tient compte et la retourne automatiquement je pense pour présenter un résultat correct dans Orbiter.
Ca facilite la transformation des textures en évitant d'être obligé de retourner les bmp avant de passer en dds.

En tout cas mon petit avion vole pas mal !

:turning: Papyref


Offline Profil supprimé

  • Newbie
  • *
  • Posts: 1
  • Karma: 0
Reply #11 - 07 March 2006, 12:46:40
Et moi qui mettait toujours a=xz-y, bon je prend note pour mon prochain addon.
Merci bien pour ces précisions Papy



Offline simcosmos

  • Full Member
  • ***
  • Posts: 69
  • Country: Portugal pt
  • Karma: 1
    • simcosmos
Reply #12 - 07 March 2006, 13:52:04
Hummm, sorry, will write in English:

Perhaps it would be simpler to:
a) make the 3D model using the Anim80r's axes
b) to properly scale the model inside the anim80r and apply the textures like wanted
c) before exporting to 3ds, to rotate the model in x=-90 degres and center it as needed (if having in mind the planned COG, and wanting to use t=keep, etc. Else, no need to "center" as it is automatically done by 3ds2msh and the COG can be later also tweaked with shipedit, if needed)
d) then to just use 3ds2msh with the parameters a=-xyz f=v

For a much better (read: extended) text about the issue (3ds2msh conversion, scale tweaks, etc), please read my posts in these threads (if having patience ;) ):
http://orbit.m6.net/v2/read.asp?id=26322
http://orbit.m6.net/v2/read.asp?id=25965

António

Edit: minor addition to point c)



Message modifié ( 07-03-2006 14:24 )

__________________________________________________________________
Flickr: http://www.flickr.com/photos/simcosmos/

Offline Papyref

  • Legend
  • ******
  • Posts: 5361
  • Country: France fr
  • Karma: 354
  • Je suis dans la Lune ne pas me déranger
Reply #13 - 07 March 2006, 14:31:22
Thanks Simcosmos.
Your threads are very interesting to understand scaling and use of A factor.
Rotate x=-90° before convert with a=xyz is another convenient method.

:turning: Papyref


Offline korben62

  • Hero Member
  • *****
  • Posts: 561
  • Karma: 0
Reply #14 - 08 March 2006, 10:20:52
d'apres les essais que j'ai fais sur 3ds2msh & orbiter
j'ai constaté les resultats suivants .
la plusparts des soft 3d que j'ai utilisé  tous utilisent la "loi du tire-bouchon" qui definis l'orientation de l'axe z
 la face superieure du bouchon etant le plan oxoy, si on le tourne en sens horaire; le tire-bouchon
s'enfonce donnant le sens negatif(-z). Tourner en sens antihoraire (sens trigonometrique) donne à notre tire-bouchon
un mouvement inverse (+z)
Seul autocad (à ma connaissance ) permet d'inverser ce mouvement,
apparement c'est le cas sur orbiter.
Ce qui raporté aux origines usuelles donne dans orbiter ceci.



les softs les plus courant travaillant en plan de base OXOY, D'ou la rotation X-90
Mais c'est pas fini ,cette invertion de sens a un autre effet, un mirroir selon le plan OYOZ
(ce qui est à gauche est à droite et inversement)
Donc quend je fais la convertion  3ds2msh , j'effectue avant dans le soft 3D une rotation de -90 autour de OX
Puis lors de la convertion un mirroir par rapport au plan OZOY
xy-z

pour f=v donne le sens positif d'une texture uvmap, uv etant deux vecteur definissant le plan (oxy) de la texture

maintenant je peut me tromper.

On n'est jamais trop aidé! (lire avec la liaison, c'est plus marrant).



Offline Papyref

  • Legend
  • ******
  • Posts: 5361
  • Country: France fr
  • Karma: 354
  • Je suis dans la Lune ne pas me déranger
Reply #15 - 08 March 2006, 12:11:54
Tu as parfaitement raison Korben pour les axes Orbiter
De plus la correspondance des systèmes d'axe entre Orbiter et Animator est la suivante



Quand on échange les axes y et z avec a=xzy on n'obtient aussi un échange de x en -x ce qui fait qu'une partie
gauche est à droite et vice versa.

Il faudrait donc faire a=xz-y pour faire un effet miroir et avoir un mesh correct dans Orbiter.
Dans mon cas, comme je tourne au préalable mon avion pour avoir le derrière dans le sens positif de Z (Animator) en
faisant simplement a=xzy je corrige automatiquement la gauche et la droite dans le mesh Orbiter. En plus j'obtiens la
poussée moteur principal dans le bon sens.

On peut faire comme on veut et on peut toujours refaire une conversion du 3ds si le mesh final n'est pas
satisfaisant. L'essentiel est je crois de trouver une méthode qui convienne et de s'y tenir.

Je te conseille si tu ne l'as pas fait de lire les excellents tutoriaux de l'auteur ar81 que l'on peut charger sur
OrbitHangar. Ils sont en anglais mais très bien faits et instructifs et d'une aide précieuse pour la création.

:turning: Papyref


Offline korben62

  • Hero Member
  • *****
  • Posts: 561
  • Karma: 0
Reply #16 - 08 March 2006, 20:40:30
Merci Papyref, je ne connaissait pas ces tutoriaux.
D'ailleur si tu connais un bon tuto sur les module c++ , je suis prenneur
j'ai bien trouvé celui qui est sur obiterwiki ,mais je le trouve un peu trop basique
comme j'ai pas trop envie de reduire mon xb a un shuttle pb .


« Last Edit: 08 March 2006, 20:40:30 by korben62 »