Dracul86 Ecris:
Alors me voilà parti pour un petit message fleuve, je médite ces questions depuis bien longtemps maintenant, et ayant parcouru votre forum dans tous les sens, il arrive un moment où il faut se lancer.
Bienvenue !
Personnellement je me suis lancé dans Irrlicht il y a moins d'un an, et je ne le regrette pas, bien que j'ai des lacunes en C++

Dracul86 Ecris:
1. (Question déjà vu 100 fois je suppose) le jeu que je souhaiterais développer serait un jeu de course 3D futuriste (ne riez pas) très rapide. Pour celà, il me faudrait la possibilité d'afficher des (très) grands circuits, quelques vaisseaux et quelques effets à un framerate suffisant(>60 fps), avec si possible une qualité sympas (disons niveau Quake 3 si possible). Irrlicht de base sera-t'il suffisant pour celà ? Si oui, sera-t'il possible au terme du développement de toucher directement au code du moteur pour tenter de l'accélerer encore plus (par exemple en limitant l'affichage à OpenGL) ?
Irrlicht est a mon avis suffisant pour faire un affichage de niveau Quake 3 avec quelques petits effets en plus (a 60 fps),
Au niveau des grands circuits, je pense que oui, mais Irrlicht a quelques faiblesses pour tres grand terrains (vraiment grands), mais je ne détaillerai pas plus, parce que je n'en sais pas beaucoup plus a ce sujet
Toucher au moteurs ? ben pas mal de gens le font avec succes, donc je pense qu'on peut dire que oui ^^
Dracul86 Ecris:
2. Je me doute que la réponse à la question 1 sera du type "ça dépend de ce que tu veux afficher", d'où ma seconde question. Selon vous, un mesh agréable à l'oeil, c'est combien de polygones ? ça se compte en centaines ? milliers ?
euh .. ca dépends

(pour faire une voiture ou un marteau, pas besoin de millions de poly)
pour t'apporter un élément de réponse, je me rappelle avoir fait un petit jeu de fourmis ou chaque fourmis comptait en gros pour une centaine de polygones, et ca rendais tres bien, (ya des images dans la partie screenshots de vos projets)
Dracul86 Ecris:
3. Je me perds un peu lorsque l'on s'attaque à la modélisation des vaisseaux. En regardant les logiciels de modélisation, énormément de fonction sont présentes, dont certaines devraient être gérées par Irrlicht à la base. Je me pose donc cette question, jusqu'où faut-il aller au niveau de la modélisation ? Par exemple, je suppose que les shader ne sont pas à définir dans maya directement non ? A priori, je dirais que les modèles 3D devraient contenir les meshs, les textures, et les animations. Quelque chose à rajouter ?
Non c'est exactement ca,
Selon tes besoins, dans certain formats tu peux aussi définir un squelette qui permet d'associer des meshs par ces points
Certains logiciels de modélisations ont des fonctions supplémentaire pour faire du dessin de scenes, voire des mini videos, et du coup on peut mettre des shaders dans la partie modélisation, mais ca ne s'applique pas a irrlicht
Dracul86 Ecris:
4. J'ai été assez déçu de ne pas trouver des articles de bases sur la représentation physique des éléments de irrlicht. Un exemple tout bête, j'ai du écrire un code à la main pour me rendre compte que le vector3D de rotation contenait les angles de rotation en degrés (d'ailleurs qui as eu cette idée lumineuse ?

). Auriez-vous un lien ou un livre expliquant les bases soit de Irrlicht, soit des moteurs 3D en général, avec si possible les maths qui vont avec ?
euh, j'ai des tas de bouquins, mais aucun la dessus
sans aller jusqu'au livre, pour faire une rotation de x degré, j'utilise ca (code fourni par exedor qui la lui meme trouvé sur le forum):
void rotate(vector3df rp) //rp is angle to turn, pitch or roll
{
vector3df r = nodeSydney->getRotation(); //get current rotation (euler)
matrix4 m;
matrix4 mp;
m.setRotationDegrees(r); //set matrix to current rotation
mp.setRotationDegrees(rp); //set second matrix to rotation to add
m *= mp; //multipy them
r = m.getRotationDegrees(); //get rotation vector from matrix (euler)
nodeSydney->setRotation(r); //rotate node
}
et voila, pas besoin de quoi que ce soit d'autre
Dracul86 Ecris:
5. Histoire d'avoir des mouvements fluides et "réalistes", nous avons décidés d'intégrer un moteur physique (ODE dans notre cas). A priori, d'un point de vue physique, notre projet devrait être relativement facile (collision d'une boite englobant le vaisseau avec le niveau, application de forces prédéfinies au niveau des moteurs), voir même que ça simplifierai fondamentalement le code (par exemple, appuyer sur une touche ne revient qu'a allumer les moteurs, et donc à appliquer une force). Mais après avoir parcouru votre forum, notamment le post traitant de la voiture et des joints, je me rends compte que le tableau idyllique que je m'en faisais ne sera peut-être pas si joyeux. Pensez-vous que c'est du suicide à mon niveau de me lancer là dedans ?
Du suicide non, rien n'est dangereux dans Irrlicht ...

au pire tu apprendra beaucoup de choses en essayant,
tu n'a rien a perdre essaie et vois si ca te convient
Apres, la physique, je pense que c'est quand meme bien plus qu'une boite en collision avec un circuit, il faut des roues, et une gestion du temps tres complexe, bref, c'est plus complexe qu'une boite et un circuit
C'est Copland qui planche sur la voiture physique, et je vais le laisser exprimer une meilleure opinion que la mienne
un lien passionnant sur la question (merci Copland) :
http://www.nofrag.com/2004/oct/23/14529/Dracul86 Ecris:
En tout cas, si vous avez des conseils pour un débutant...
euh, éclates toi bien ?