Bonsoir à vous,
J'ai un petit problème de gestion de scène.
Est il possible de décharger une scène IrrEdit pour en charger une autre avec le même "ISceneManager" ? Ou en fait, le chargement d'une scène IrrEdit rajoute simplement des objets à ISceneManager et du coup il n'est plus possible de revenir en arrière? (à moins de noter les identifiants dans IrrEdit de tous les objets pour les supprimer par le suite...)
Merci
Dernière modification par Gehogor (01-09-2009 00:13:51)
Hors ligne
Bonjour,
Oui, c'est possible : c'est la méthode Clear qui supprime tous les nodes de la scène.
m_IrrSceneManager->clear();
Dernière modification par oli03 (04-09-2009 17:05:23)
Hors ligne
Oui en effet, je l'utilise déjà, le problème de cette méthode c'est que tous les objets rajoutés en dehors de la scène IrrEdit sont eux aussi supprimés. Je pense donc qu'il n'y a qu'un seul moyen de supprimer que la scène IrrEdit, c'est de la configurer avec des identifiants astucieusement choisis afin de les récupérer avec le "ISceneManager" dans son programme et en suite, d'enlever ses éléments un par un..... On fera avec..
Merci...
Hors ligne
Peut être pourrais-tu alors utiliser plusieurs scenemanager : un pour les objets de IrrEdit et un autre pour les autres nodes.
C'était une de mes questions récentes.
Une fois que le scenemanager "principal" est créé :
m_IrrSceneManager_IrrEdit = device->getSceneManager()->createNewSceneManager(false); m_IrrSceneManager_Autre = device->getSceneManager()->createNewSceneManager(false);
Et après tu peux les traiter séparément.
Le post en question : ici
Olivier
Hors ligne
En effet, c'est une très bonne idée, je l'ai codé immédiatement d'ailleurs, mais j'ai rencontré un problème. Les lumières placées dans la scène IrrEdit n'éclairent pas les objets ajoutés dans l'autre ISceneManager. (même dans le cas où le deuxième ISceneManager est créé comme clone "createNewSceneManager(true)"...).
En même temps, il sans doute normal que, lorsqu'on créé deux manageurs de scène différents, qu'ils réagissent de manière indépendante. Je vais voir si je peux trouver une astuce. Merci encore.
Dernière modification par Gehogor (06-09-2009 01:10:41)
Hors ligne