Dans mon jeu, je travaille actuellement sur, j'ai seulement besoin de physique très basique, donc je ne veux pas Newton, ODE, Bullet ou similaire. Je ne veux essentiellement tomber que si aucun nœud (tous les blocs de même taille) est en dessous de moi. J'ai essayé d'envoyer un rayon de la caméra et 100.0 unités vers le bas. Mais cela donne des faux positifs.Gérer tomber en utilisant des rayons dans Irrlicht
selectedNode = NULL;
//Falling
ray.start = camera->getPosition();
ray.end = vector3df(ray.start.X, ray.start.Y - 100.0f, ray.start.Z);
selectedNode = collMan->getSceneNodeAndCollisionPointFromRay(ray, intersection, hitTriangle, PICKABLE);
if(selectedNode)
{
std::cout << "ABOVE" << std::endl;
}
Je ne sais pas pourquoi cela fonctionne mal. J'utilise Irrlicht, mais cela ne devrait pas vraiment importer car je pense que le problème est lié aux logiques et pas spécifiquement au moteur de rendu/moteur.