Fred a écrit :C'est une discussion plutot interessante et j'avoue que je ne suis pas particulièrement fort en 3D. Si il ne manque que les quelques fonctions pré-citées, je vais essayer de voir ce qu'il est possible de faire.
Pour OGRE, c'est effectivement un des moteurs en vogue actuellement et même si exposer toutes ses fonctions en PureBasic n'est pas réaliste (la doc de OGRE fait 10x celle de PB), il est probablement possible de faire bien mieux.
Bon le chat sort le sac !!!
Je feuillette l'énorme Forum de OGRE régulièrement et il y a plein de sujet qui parle de fonctionnalité du moteur qui ne sont pas accessible avec PB. C'est dommage car il y en a plusieurs que j'aurais bien besoin pour mon projet.
- La Gestion des Sous-mesh
- Les joints entre les entitées
- La gestion des collisions
- La sélection d'élément (Entité, Vertice, Triangle) avec la souris.
- Les Materials qui peuvent générer de la lumière (Exemple : Un tir laser va illuminer les éléments qui l'entour)
- La possibilité de sauvegarder des géométries 3D dans le format MESH directement.
Pour ce qui des géométries de collision :
EntityPhysicBody(#Entity, #PB_Entity_BoxBody)
Comment la box est-elle générée ? Je présume en prennant les extrêmum des vertices de la mesh.
Si c'est le cas, l'erreur est acceptable dans le cas où la forme de la mesh est aligné avec un des axes. Par contre si la géométrie est dans un axe quelconque plus de 75% du volume de la boite est à l'extérieur de la mesh et donc des fausses collisions. On tire à coté et on frappe quand même la cible...
Donc faudrait avoir la possibilité soit :
- de donnée manuellement des points pour la/les boîte(s)
- de spécifier quel vertices utiliser pour former la/les boîte(s)
C'est beaucoup de travaille de programmation tout ça. Et on n'a pas encore commencé à dévelloper le jeu comme tel.
La question qui me parait la plus évidente serait pour Fred :
Est-ce que tu ne connais pas un programmeur professionnel spécialisé en jeux 3D qui pourrait te donner un coup de main ?
Moi avec l'université, j'ai malheureusement pas le temps.
A+
Guimauve