zzzrrrzzz : on est en train de mettre en place le jeu que l´on veut faire, ça avance, ça avance!
Patience
En tout cas, dès qu´on est mieux fixé, je te tiens au courant via ce post.
J´ai une question : pour l´instant dans mon programme, je charge des fichiers .3DS et une texture lié à l´objet 3ds sous forme d´un unique .bmp; quelqu´un sait comment on charge une animation? et sous quel format elle existe si elle a été faite au moyen de 3D Studio Max?
Bye!
PiXNeodyme
Site du projet : http://rom3fr.free.fr
il y a surement des exporteurs/importeurs clef en main, mais si tu veux la faire sur mesure, il va te falloir faire des choix techniques.
le truc le plus standard est d´utiliser des bones pour les animations, et du vertex twinning (et plus..) pour les deformations.
En gros tu charges une structure de bones, le skelette sous jacent au maillage ; tu calcules le squelette dans ton code (les positions etant donnees dans tes ressources, t´as plus qu´a interpoler/blender, et rajouter de l´IK si tu veux), reste plus alors qu´ "skinner" la mesh, qui consiste a deformer les vertices en prenant en compte la position des bones pour la frame en cours.
c´est un truc assez classique, tu trouveras facilement des tuts plus detailles sur le net.
LGV : et bien je suis un peu obligé de faire cela "sur mesure" comme tu dis, parce que je dois stocker les éléments chargés dans mes classes.
D´accord, alors je ne comprends pas tout :
IK?
skinner la mesh? (lui mettre une peau?
)
Donc le principe, c´est que chaque "frame" correspond à un état du modèle (position des vertices)? c´est ça?
On connait le nombre de frames?
En gros est-ce qu´une animation sous 3D Studio Max peut être considérée comme une succession de modèles statiques? (ces derniers, je sais les charger)
Reste plus qu´ à trouver la bonne commande (le bon "chunk" à loader).
Les animations existent au format .3ds?
Merci pour ton aide LGV!
PiXNeodyme
http://rom3fr.free.fr (changement de design
)
LGV?? ![]()
skinner un mesh, c´est définir de quelle manière le squelette (bnes) déforme le maillage (skinning).
Ik = Inverse Kinematique, c´est une technique d´animation qui permet de déplacer un memebre par son extremité ; pour faire simple, disons qu´au lieu de définir la rotation de l´avant bras, puis du bras, puis du poignet, pour placer ta main au bon endroit, eh bien tu place ta main et le reste du bras suit. C´est ben plus naturel.
salut
vous avez pas besoin d´un compositeur pour votre jeu ?
durstboiler@msn.com
_balooo : merci bien! je comprends mieux; IK est la technique la plus répandue?
PiXNeodyme
http://rom3fr.free.fr
tu peux faire des animations sans utiliser l´IK ; l´IK n´est interessante que si tu veux dynamiquement modifier le comportement des animations, pour que des elements soient controles par le code. Les jeux qui n´ont pas besoin d´animation complexes ne se servent pas d´IK : on continue de "skinner" la mesh avec les bones, mais on se contente d´utiliser les ressources editees par les artistes.
J´ai une nouvelle question :
J´ai vu dans 3D Studio Max qu´il existait une fonction "Optmize" permettant d´obtenir un nombre de face minimal pour un modèle donné.
Existe-t-il une fonction (peut-être pas seulement dans 3D Studio max) permettant de réduire le nombre de polygones d´un modèle jusqu´à un certain seuil choisi (dégradant bien sûr la qualité du modèle)?
Si certains d´entre vous connaissent une telle fonction...
Bye!!
PiXNeodyme
http://rom3fr.free.fr
Moi en passant je dis bravo pour le petit site. JE vous conseille de mettre des "news" dès que vous le pouvez même des trucs du genre :
"on a avancé dans ceci ou cela".
C´est toujours plus attirant quelque chose qui est souvent mis a jour ![]()
oui, il y a des algos et des outils pour reduire automatiquement le nombre de polys d´un modele, pour atteindre un seuil donne.
Selon la qualite initiale de tes ressources, le resultat peut etre excellent comme mediocre.
il y a un tel outil fourni avec le SDK de directX.
il y a d´ailleurs l´inverse, pour augmenter le nb de poly automatiquement, tout en affinant les courbes du modeles (cf. techno TrueForm de nVidia par ex.). En pratique c´est jamais utilise, mais ca existe.. (comme le support en hard de nurbs, ca a existe dans UNE generation de carte, juste histoire de dire "on peut le faire" et ensuite ca a degage car trop complexe et trop couteux)
si tu combines avec un outils comme meLODy de nVidia, tu peux en plus integrer les normal maps de tes modeles highpoly sur tes lowpoly, pour garder un eclairage et un rendu TRES detaille, meme avec peu de polygones.
Parce qu´en fait, je travaille avec OpenGL, et la fonction de progressive mesh (qui existe dans DirextX) n´existe pas ici, je dois donc mettre en place de PM tout seul. Donc, je ne dois que diminuer le nbre de poly de mes modèles pour les obtenir avec un niveau de détails à adapter selon leur distance au point de vue de la caméra.
Ce système est très important à mettre en place puisqu´on veut beaucoup d´unités à l´ecran...
on fait rarement des progressive meshes dynamiques : on fait les LOD en static, et au runtime on blend entre les LODs.
les fonctions de PM de D3DX ne sont la que pour faciliter les realisation d´outils permettant de calculer les LODs. Tu peux t´en servir comme pretraitement "offline" de tes donnes, passer le tout dans une moulinette maison pour te sortir le format que tu veux, et c´est CA que tu utiliseras au runtime.
oui, bien sur, je ne calcule rien (ou pas grand chose) lors du runtime comme tu dis, je ne fais qu´afficher le niveau de détail appropré, je fais ca pour gagner en nombre de calculs. C´est nécessaire.
Donc, je recherche toujours un algo me permettant de me chnger un modele en un autre avec 2 fois moins de poly par exemple. Tous ces calculs d´allegement seront bsur des précalculs
PiXNeodyme
http://rom3fr.free.fr
c´est un pb complexe ; si tu souhaites le coder a la main, tape dans les whitepapers de recherche (siggraph, i3s, etc.), "mesh simplification" sous google donne pas mal de pistes pour trouver des references
LGV : boarf, complexe, complexe... C´est de la minimisation d´énergie quoi!
Le problème c´est que c´est assez longuet à mettre en place... mais bon, j´vais le faire, j´espère.
Je cherchais quand même, c´est vrai, une méthode me permettant de le faire plus rapidement grâce à un logiciel comme 3ds.
Sinon je réïtère ma demande :
Quelqu´un pourrait - il nous filer un coup de main pour les modélisations? Parce qu´on essaie un peu, on est pas très bon! ![]()
Par exemple, un ami a "modelé" (si l´on peut dire) un fantassin mais pour mettre les textures sur une seul image unique (j´en ai besoin pour pouvoir charger tout ca en .3ds + .bmp), c´est pas facile, y a t-il des astuces, des techniques?
Bye!
PiXNeodyme
http://rom3fr.free.fr
il y a aussi des considerations sur les enveloppes, les centroides, etc. il n´y pas vraiment de critere ultime qui marche pour tout, dans la simplification de maillage :/
ca m´etonne quand meme que 3DS max ne propose pas qqch comme ca ; sinon tu peux toujours convertir ton modele en .X, utiliser les tools DirectX et Nvidia, et au final reconvertir vers le format que tu veux..
pour les textures, faut unwrapper la mesh, et mapper en UVW ; ca te permet de definir des portions de textures mappees sur des portions de maillage, et ainsi tout cumuler sur une seule image.
Ok merci pour les textures LGV!
Oui, la "mesh simplification" c´est assez empirique... Il y a plusieurs critères de minimisation.
Site du projet mis à jour : http://rom3fr.free.fr
Pour ceux qui désirent participer concrètement au projet, n´hésitez pas à me contacter!!
Je répète que nous avons besoin d´aide niveau modelage et texturage!!
Salut!
PiXNeodyme
Ca y est, nous avons choisi un peu plus le concept de notre jeu.
Il y aura 2 aspects :
I)une carte 2D représentant le monde dans lequel on évolue, avec des ressoureces (l´or principalement), des petites qûetes, des villes... On possèdera une ville à développer ,on développera une armée symbolisée par un pion (c´est un exemple) sur la carte et on pourra la diviser en petit groupe et faire des quêtes, des batailles ... etc
II)le mode temps réel qui représente le mode bataille. On aura une vue à la war3, les batailles comporteront un nombre important d´unités, on veut jouer sur cet aspect pour que le jeu soit fun et arcade (en tout cas pour ce mode)
Voilou!
Site du projet : http://rom3fr.free.fr
PiXNeodyme