Message #10626
Sujet: Créer un téléporter
| Type | Date | Auteur | Contenu |
|---|---|---|---|
| Dernière modification | 13-07-2012 17:51:29 | johnplayer |
Si l'encadrement de ton portail est construit en un seul mesh, tu peux faire un ISceneNode::getBoundingBox() pour récupérer la zone de téléportation puisqu'elle englobera ton portail (tu peux l'agrandir ou la réduire facilement après si tu le veux). Ensuite, tu utilises aabbox3d::isPointInside(camera->getPosition()) pour savoir si tu dois le téléporter ou non.
Si tu utilises la BoundingBox, tu peux utiliser les infos de debug pour la visualiser sinon il y a driver->draw3DBox(). Par contre, fais attention, la téléportation est un déplacement sur une certaine distance donc si tu intègres la collision à ton projet, tu auras des surprises si tu as des obstacles entre tes 2 points de téléportation. Pour ce qui est de déplacer la box, tu fais : Sinon, il y a une autre méthode, si tu as le centre de ton portail, tu fais : (centre_portail - camera->getPosition()).getLength() et tu testes la distance. |
| Création du message | 13-07-2012 17:47:38 | johnplayer |
Si l'encadrement de ton portail est construit en un seul mesh, tu peux faire un ISceneNode::getBoundingBox() pour récupérer la zone de téléportation puisqu'elle englobera ton portail (tu peux l'agrandir ou la réduire facilement après si tu le veux). Ensuite, tu utilises aabbox3d::isPointInside(camera->getPosition()) pour savoir si tu dois le téléporter ou non.
Si tu utilises la BoundingBox, tu peux utiliser les infos de debug pour la visualiser sinon il y a driver->draw3DBox(). Par contre, fais attention, la téléportation est un déplacement sur une certaine distance donc si tu intègres la collision à ton projet, tu auras des surprises si tu as des obstacles entre tes 2 points de téléportation. Pour ce qui est de déplacer la box, tu fais : Sinon, il y a une autre méthode, si tu as le centre de ton portail, tu fais : (centre_portail - camera->getPosition()).getLength() et tu testes la distance. |
| Options | Liens officiels | Caractéristiques | Statistiques | Communauté |
|---|---|---|---|---|
|
Préférences cookies Corrections |
![]() ![]() ![]() ![]() |
Propulsé par Django xhtml 1.0 css 2.1 |
884 membres 1440 sujets 11337 messages |
Dernier membre inscrit: Saidov17 153 invités en ligne membre en ligne: - RSS Feed |