Pages: 1
Bonjour je viens de créer un fichier .irr avec irredit, et je voudrais savoir s'il est possible d'utiliser cette scene comme un mesh ordinaire.
Par exemple j'ai un mesh (soleil.irr), je le charge avec irrlicht comme sa :
sceneManager->loadScene("soleil.irr");
Sauf que quand je le charge comme sa je ne peut pas l'utiliser comme un mesh normal, je peut pas par exemple augmenter la taille du mesh "soleil" parce que se n'est pas comme une variable, donc j'ai tenter :
irr::scene::ISceneNode *soleil = sceneManager->loadScene("soleil.irr");
Sauf que sa marque "impossible de convertir SceneNode en Bool", alors qu'elle qu'un à une solution pour utiliser un mesh comme une variable normal d'irrlicht ?
Oui je sais c'est difficile à expliquer, mes si qu'elle qu'un pourrais m'aider....
Merci de me répondre.
Dernière modification par mmorpglefilm (14-02-2011 01:13:52)
Hors ligne
tuto
http://irrlicht.sourceforge.net/docu/example015.html
récupération des nodes (tiré du tuto)
core::array<scene::ISceneNode *> nodes; smgr->getSceneNodesFromType(scene::ESNT_ANY, nodes); // Find all nodes for (u32 i=0; i < nodes.size(); ++i) { scene::ISceneNode * node = nodes[i]; scene::ITriangleSelector * selector = 0; switch(node->getType()) { case scene::ESNT_CUBE: case scene::ESNT_ANIMATED_MESH: // Because the selector won't animate with the mesh, // and is only being used for camera collision, we'll just use an approximate // bounding box instead of ((scene::IAnimatedMeshSceneNode*)node)->getMesh(0) selector = smgr->createTriangleSelectorFromBoundingBox(node); break; case scene::ESNT_MESH: case scene::ESNT_SPHERE: // Derived from ImeshSceneNode selector = smgr->createTriangleSelector(((scene::ImeshSceneNode*)node)->getMesh(), node); break; case scene::ESNT_TERRAIN: selector = smgr->createTerrainTriangleSelector((scene::ITerrainSceneNode*)node); break; case scene::ESNT_OCTREE: selector = smgr->createOctreeTriangleSelector(((scene::ImeshSceneNode*)node)->getMesh(), node); break; default: // Don't create a selector for this node type break; } if(selector) { // Add it to the meta selector, which will take a reference to it meta->addTriangleSelector(selector); // And drop my reference to it, so that the meta selector owns it. selector->drop(); } }
Hors ligne
Oui je les déjà vue mes je ne comprend pas comment il peut associer la node aux fichier irr.
Hors ligne
Hors ligne
A mes oui j'ai enfins compris, merci pour t'on aide.
Et attend : il faut créer un tableau de sceneNode (si j'ai compris le code), et pour par exemple je veux modifier la t'aille de chaque objet qu'il y a dans mon fichier irr je fais comme sa :
for (u32 i=0; i < nodes.size(); ++i)
{
nodes[i]->setScale(irr::core::vector3df(10,10,10);
}
Le reste du code n'est juste là que pour créer un selector, si j'ai bien compris....
Hors ligne
voilou
Hors ligne
Et me revoilà avec mes question.......:
Je viens de tester le code est sa marche sauf que je suit en trins de créer un jeu dans l'espace, j'ai donc créer notre système solaire sur irredit, mes pour qu'il soit vraiment énorme je doit augmenter sa t'aille sur irrlicht et pas sur irrdit.
donc j'ai fais comme j'ai dit plus haut pour augmenter la t'aille des planètes sauf que se n'est que l'aure dimension qui augmente et pas l'eure position, donc j'ai tester :
irr::scene::ImeshSceneNode *soleil = nodes;
Mes on ne peut pas convertir un mesh en tableau, mes bon...tous sa pour dire : il y a t-il un moyen d'augmenter la t'aille de tous les objets du tableau en augmentent aussi l'eure position ?
Merci de bien vouloir me répondre.
Hors ligne
Irredit ne peut pas modifier la taille ??
Hors ligne
Si mes moi je doit créer des sphères de t'aille énorme pour représenter notre système solaire, et sur irrdit c'est très difficile de créer des chose énormes, alors il serait (je pense) plus simple de augmenter l'eure t'aille sur irrlicht.
Dernière modification par mmorpglefilm (14-02-2011 17:07:41)
Hors ligne
tu fait des planetes toutes petites et très espacées sous irredit et tu les scale après
Hors ligne
......ouais.....
Hors ligne
A par contre j'ai un autre problème qui est très enbétent :
Je viens de charger mon fichier .irr, je tiens à préciser que quand j'ai créer mon fichier j'ai juste placer des mesh, j'ai pas mit de camera.....et j'ai créer un petit vaisseau qui n'est pas visible bizarrement et une camera qui bug....
Pour le vaisseau je sais pas....on verras plus tard...mes pour la camera c'est un peut bizzar....:je ne peut pas faire bouger la camera avec la sourie, juste avec les touche directionnelle est je ne peut pas aller de haut en bas....c'est un peut comme une camera TrackBall.....sauf que moi j'ai créer une camera FPS !!!!
Si qu'elle qu'un pourrais m'aider sa serais très gentil, et si sa viens du fichier .irr je pense ne plus les utiliser, je pense que c'est plus facilement modifiable sur irrlicht, et si je veux que mon petit système interagis avec l’environnement c'est plus facile de le faire sur irrlicht que sur IrrEdit.
Hors ligne
Pages: 1
Options | Liens officiels | Caractéristiques | Statistiques | Communauté |
---|---|---|---|---|
Corrections |
|
xhtml 1.0 css 2.1 Propulsé par FluxBB Traduit par FluxBB.fr |
882 membres 1429 sujets 11119 messages |
Dernier membre inscrit: LiseBuisson96 20 invités en ligne Aucun membre connecté RSS Feed |