Charger les fichiers ".ase" de 3dsmax en code source opengl

Soyez le premier à donner votre avis sur cette source.

Vue 9 748 fois - Téléchargée 833 fois

Description

Ce petit prog permet de creer des fichier codes sources en C pour une implementation OpenGL d'objets creer sous 3DsMAX : modelisez votre objet sous 3DsMAX, sauvegardez le fichier dans le format ".ASE" de 3DsMAX (ce fichier contient toutes les informations sur les formes qui composent votre objet), puis utiliser mon prog pour creer un fichier ".c" par solide qui compose l'objet. Ensuite, il suffit d'ecrire des routines OpenGL en utilisant les données des fichiers sources pour faire afficher votre modèle.

Pour le moment, le prog gère uniquement les coordonnées des vertex de chacun des solides du modèle ainsi que les index pour definir chaque face du solide.
Il faudrait implementer la gestion des normales definies dans 3DsMAX, exactement de la meme maniere que les vertex.

Il faudrait aussi modifier le code de facon a n'obtenir qu'un seul fichier avec les coordonnées de tous les vertex de tous les solides du modele (au lieu d'avoir un fichier par solide).
Il serait egalement interessant d'ecrire dans les fichiers sources de sorties les routines OpenGL permettant d'afficher directement le modele.

POUR UTILISER LES CODES SOURCES GENERES DANS UN PROG OPENGL :
il suffit de tracer tous les triangles dont les coordonnées des sommets sont dans le tableau de vertex du fichier et les indices des vertex pour former les faces sont dans le tableau d'index.
ex:

glBegin(GL_TRIANGLES);
for(i=0;i<nb_faces;i++) // pour chacuns des faces du sommet
{
glVertex3fv(ObjetVertex[ObjetIndex[i][0]]); // coordonnees du 1er sommet
glVertex3fv(ObjetVertex[ObjetIndex[i][1]]); // du second
glVertex3fv(ObjetVertex[ObjetIndex[i][2]]); // et du dernier
}
glEnd();

Conclusion :


Je viens de voir qu'il y a apparement un BUG au niveau du nom du tableau de vertex (apparament...) ;)

c'est que la premiere version, je suis dessus pour apporter des modifs interessantes, il y aura certainement une nouvelle version bientot ;)

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

nesk01
Messages postés
18
Date d'inscription
jeudi 29 janvier 2004
Statut
Membre
Dernière intervention
17 mai 2004
-
pour avoir des informations sur la forme des fichiers ".ase" allez voir le tutoriel tres interessant sur le site http://prografix.free.fi

nesk01
Funto66
Messages postés
1267
Date d'inscription
mercredi 1 janvier 2003
Statut
Membre
Dernière intervention
28 février 2007
3 -
Intéressant. J'ai pas pu tester ton prog parce que je n'ai pas de fichier ASE sous la main.
Personnellement j'essaie de rester dans la légalité (3ds max c'est cher :'( ) et j'utilise gmax (gratuit) + un script d'exportation en MAXScript vers un format perso + un copier-coller (impossible de créer un fichier en MAXScript avec gmax :( ) + un loader OpenGL perso.
Mais l'avantage de ton prog c'est qu'avec ça on n'a besoin de rien d'autre que de l'exe.
Aussi, est-ce qu'il prend en charge les coordonnées de textures?

Ah oui, faudrait que tu mettes dans le zip :
-l'exe de ton prog compilé
-le source et l'exe d'un prog d'exemple
-un fichier ASE de test
s'il te plaît ^^.
"Il serait egalement interessant d'ecrire dans les fichiers sources de sorties les routines OpenGL permettant d'afficher directement le modele." -> un détail/conseil : utilise les display lists ;)

Enfin, je ferais remarquer que ton prog connaît un concurrent en 3D Exploration qui peut aussi exporter dans un fichier .c pour OpenGL ^^

Sur ce bonne prog ;)
cs_Kirua
Messages postés
3006
Date d'inscription
dimanche 14 avril 2002
Statut
Membre
Dernière intervention
31 décembre 2008
-
3D Exploration existe depuis un moment qd même, et couvre bcp de formats.

C'est une idée de hard-coder les modèles, pour qu'ils soient dans l'exe, mais c'est pas une bonne méthode pr un gros projet je pense. Les ASE st au format ASCII non (lisibles par un humain)? Dans ce cas, utiliser la zlib au Run-Time pourrait épargner beaucoup de place, ne demanderais pas de recompiler l'exe à chaque modif d'objet et ne coûterait, somme toute, pas grand chose (si ce n'est un ralentissement certain au démarrage du programme).

Ceci dit, j'ai bien compris l'utilité, bien réelle, de ton programme, je me permettais seulement de mettre le doigt sur le fait que c'est, AMHA, pas approprié pour des projets longue durée.

Bonne journée!

Kirua
nesk01
Messages postés
18
Date d'inscription
jeudi 29 janvier 2004
Statut
Membre
Dernière intervention
17 mai 2004
-
c clair ke pr un gros projet c pa la solution de joindre le modele ds le code mais on peut faire des fichier .c independant et tt compilé ensemble. c une facon de modulariser. enfin je pense aussi ke c pas un prog pr de gros modele mais je debute en open gl et ca me permet de realiser mes modeles sous 3ds (kan meme plus sympa ke direct en code open gl ;) ) !
sinon je connaissais pa gmax je vais me renseigner la dessus!
et je pense renvoyer ds la semaine un zip ac l'exe, un exemple et tt...
nesk01
Messages postés
18
Date d'inscription
jeudi 29 janvier 2004
Statut
Membre
Dernière intervention
17 mai 2004
-
c clair ke pr un gros projet c pa la solution de joindre le modele ds le code mais on peut faire des fichier .c independant et tt compilé ensemble. c une facon de modulariser. enfin je pense aussi ke c pas un prog pr de gros modele mais je debute en open gl et ca me permet de realiser mes modeles sous 3ds (kan meme plus sympa ke direct en code open gl ;) ) !
sinon je connaissais pa gmax je vais me renseigner la dessus!
et je pense renvoyer ds la semaine un zip ac l'exe, un exemple et tt...

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.