Dx8 - milkshape ms3d ascii animated model viewer beta 2

Soyez le premier à donner votre avis sur cette source.

Vue 10 786 fois - Téléchargée 4 564 fois

Description

Alors pour faire simple c'est la conversion vb du loader ascii c++ dispo sur le site de milkshape3d
commencé par ciberique continué par moi

les fps dependent exclusivement :
1 - de votre processeur
2 - de votre carte graphique
3 - du nombre de triangles du model bien sur :op (en rapport avec 1 et 2 )
      • prochains updates : **


- Support du format .ms3d binaire animé
- Ajout de methodes a la classe refonte partielle ou tatal je verrais)
- Support jpg,tga,gif pour les textures
- modification du systeme de camera (me soule celui-ci)
- modif de l'interface

Conclusion :


- Transformation du loader en classe
- optimisation du rendu 3d
- correction des matrices pour l'animation
- correction du mode wireframe
- correction du calcul des fps
- suppression du timer
- ajout d'un slider sur la form
- recodage complet de la partie chargement du model
- ajout du culling des triangles pour speeder le rendu
- etc...

bugs a corriger :
- le model est inversé sur l'axe x

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
62
question de stockage, je suppose...
si tu gagne en rapidité (sous tableaux) faut faire des compromis (taille)

au pire, tu peux transformer le format en ce que tu veux... on est bien d'accord que ce format n'est qu'un format de stockage des modèles, pas un format de "travail", pas a exploiter en temps reel, je veux dire...

enfin, ce n'est que mon avis, c'est pas mon rayon, hein ^^
Messages postés
340
Date d'inscription
jeudi 25 juillet 2002
Statut
Membre
Dernière intervention
25 août 2007

euh 10 plombes plus tard :op
pour renfield> tout est a la suite
en gros je voulait dire que toutes les animations sont en fait un tableau de nframes de translations et rotations donc un perso aura par exemple 100 frames (a recalculer bien sur) mais si tu veut par exemple lire l'animation "marche" ou "court" eh bien tu doit connaitre les indexes de debut et de fin de chaque "animation" car la tu dispose d'un tableau contenant toutes les frames et tu doit te de****er avec c'est plutot pas terrible si tu doit ajouter une frame a un animation vu qu'il faut alors reindexer toutes les frames pour pas decaler le tout
il aurait donc été plus interessant de regrouper les animations sous formes de sous tableaux de maniere a ne charger que le tableau des n frames necessaire pour telle ou telle anim ainsi tu ne parcours plus les 1500 frames si tu en utilise que 10, au niveau chargement ce n'en serait que plus rapide aussi , j'ai pu tester ma theorie sur des dump 3ds regroupés par blocs dans des fichier et le resultat et plus que meilleur
l'autre solution serait d'avoir 1 fichier ms3d par animation (comme pour les mdl de half life) mais ca veut dire plus d'access disques ou plus de temps pour interpreter les fichiers.
d'ou l'interet (vu la ram des pc actuels) de charger 1 seul fichier sous forme binaire (genre les md2 de quake2) avec des blocs d'anim utilisant des noms.
je sais pas si c'est suffisament bien expliqué mais bon :/
voila..
Messages postés
589
Date d'inscription
lundi 25 août 2003
Statut
Membre
Dernière intervention
18 juillet 2010

Je pense que ce que veux dire Shadowmoy c'est que actuellement qu'il y ai 10 animation differente (marche,course,mort,coup...) rien n'est classé. Dans un fichier ms3d on à tel transformation pour tel frame(s), donc quand on lit les animations au départ on à une suite de transformation avec un index qui represente le numero de(s) la frame(s).

Dans le cas d'un jeu il est plus simple de traiter les different type d'animation séparément, avec leur propre transformation à chacune, certe cela fait que le fichier est plus lourd, mais au final on est gagnant dans les calculs de rendu.

J'ai deja développé un type perso avec une fonction qui permet de récuperer les models d'un fichier, actuellement je ne travaille pas avec les animations donc je ne les ai pas inclu de mon type, le format des vertices et de type d3dxvertex, et c'est prévu pour un affichage direct en forme de liste de triangles. Sans les animations on arrive à des fichiers légérement plus lourd que les fichiers ms3d avec animation. Par contre en vitesse de traitement c'est incomparable.
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
62
"tout est a la suite"

tu pourrais développer ?
Messages postés
340
Date d'inscription
jeudi 25 juillet 2002
Statut
Membre
Dernière intervention
25 août 2007

le reproche que je ferai au format ms3d deja au niveau des anims c'est que tout est a la suite donc fo connaitre les index des frames pour lire telle ou telle anim c'est plutot chiant je trouve il aurait été plus interessant d'avoir une structure genre

type animation
nom as string
debut as long
fin as long
end type

puis un tableau() as animations

comme ca il aurait été plus facile d'ajouter/modifier/supprimer des animations par blocs complet d'anims
et pour les afficher on aurait pu utiliser le nom directement vu qu'on aurait les index de debut et de fin d'ou l'interet de faire un format perso

et de coder un plugin d'export pour ms3d (ben oui sinon c'est un truc de barbare :p)
Afficher les 13 commentaires

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.