Je dois utiliser OGRE3D pour un projet universitaire, cependant, nous ne sommes pas autorisés à utiliser des bibliothèques tierces pour la physique ou la détection de collision. Cela inclut l'utilisation de la détection de collision intégrée d'OGRE.Intégrer des classes de physique personnalisées avec OGRE 3D?
J'ai quelques difficultés avec la bonne façon d'aborder l'ajout de mes propres routines physiques personnalisées aux entités intégrées d'OGRE. OGRE utilise les objets "Entité" comme les plus élémentaires des blocs de construction et pour la physique, vous avez besoin d'objets ayant des attributs de masse, de vélocité, etc. Ce qui m'embrouille, c'est que les boucles de rendu/logique d'OGRE semblent être cachées à l'utilisateur à l'intérieur du moteur OGRE. C'est un problème parce que je dois être en mesure d'obtenir toutes les entités dans OGRE et d'effectuer des calculs de détection de collision et de physique avec mon moteur physique personnalisé que je construis.
Comment puis-je intégrer mes propres classes de moteur physique/collisions avec OGRE?
Mise à jour: Prendre les conseils ci-dessous je l'ai sous-classé OGRE :: Entité, à savoir:
class PhysicsEntity : public Ogre::Entity;
PhysicsEntity *ent1 = (PhysicsEntity*)mSceneMgr->createEntity("PhysicsNinja", "ninja.mesh");;
SceneNode *node1 = mSceneMgr->getRootSceneNode()->createChildSceneNode("NinjaNode1");
node2->attachObject((Ogre::Entity*)ent1);
L'état des commentaires ce n'est pas la meilleure façon de Comform à OO, et je suis d'accord je ne peux cependant pas voir une meilleure moyen à ce stade? Que pensez-vous et avez-vous de meilleures idées parce que je ne suis pas totalement heureux de le faire.
Merci pour votre réponse, beaucoup de bonnes informations dans votre réponse, je reviendrai à vous sur celui-ci dans les prochains jours pendant que j'essaye de l'implémenter. Merci +1 –