Pages: 1
Bonjour à tous
J'ai fais une petite fonction pour ajouter des objets donc en gros à chaque fois que je veux créer un objet, je créer un node puis je lance ma fonction ex:
irr::scene::IAnimatedMeshSceneNode* arbre1; creer_objet(driver, sceneManager, "meshs/arbre.irrmesh", "mesh/Wood1.jpg", arbre1, irr::core::vector3df(18512, 1419, 5440), etc..... etc.....);
J'ai mis aussi des bool pour savoir si ils doivent générer des ombres, lumières etc...
Par contre je ne trouve pas le moyen d'ajouter une collision avec le joueur pour chaque node créé dans ma fonction
J'ai essayé plusieurs moyen mais ça plante tout le temps (pas à la compil, je parle du programme)
Je vois le truc dans les grandes lignes (créer selector pour chaque node creer et récupérer ces selector dans un meta) mais pas moyen de mettre tout ça en oeuvre
Je ne demande pas le code complet, mais juste un ptit coup de pouce pour me remettre en scelle svp
Merci d'avance
Hors ligne
petite question, tu créer tous tes objets à l'initialisation en même temps que ton joueur, où est-ce que tu recrer des objets plus tard que tu veux à eux aussi leurs rajouter les collisions ?
pour la première partie de la question, tu peux jeter un œil au tutorial 15 de Irrlicht qui utilise une belle boucle qui récupère tous les objets pour créer les sélecteur en fonction du type d'objet.
Pour la deuxième, ça peut être un peut plus compliqué.
Dernière modification par nabouill (19-10-2010 12:35:04)
Hors ligne
en fait j'ai refait une fonction "charger_scene" ou je place mes fonctions "creer_objet" et c'est là dedans que je crée mes nodes d'objets
mon joueur est créé simplement dans le main
donc en gros, oui, on peut dire que mes objets sont chargés en même temps que mon joueur
mais d'un côté, ça m'intéresse aussi pour ce qui est des objets qui vont être "créés plus tard" (si je veux faire apparaitre des objets au cours du jeu)
mais là il me semble que je dois créer une classe? donc je peux laisser tomber ma pauvre fonction et plutôt m'orienter vers une classe non? (en plus ça me fera de l'entrainement..n'est ce pas Magun et TUpac? ^^)
merci de ton aide en tout cas nabouill
Hors ligne
Effectivement ma poule
C'est bien ça la poo !!
La question est comment "découper mon poulet" comme dirait mon prof d'algo.
C'est à dire dans quelle class insérer la fonction de chargement, la class de managment, la class du modèle3D ?? A mon avis tu devrais créer une class générique "Objet" et insérer ton code de chargement dans le constructeur de cette dernière.
ex:
Dernière modification par TUpac (19-10-2010 19:10:17)
Hors ligne
merci
bon ben du coup je regarde les cours sur les classes (ça à l'air moins compliqué que ça en à l'air apparemment et là je commence a comprendre le vrai principe de la POO)
une fois que je serais à l'aise avec les classes, je pourrais surement résoudre mon problème de collision (là j'avoue avoir mis la charrue avant les boeufs... )
(dans le cas contraire, je ferai un up de ce sujet...mouhahaha!!)
PS: du coup TUpac, après avoir lu un cours sur les classes, je vois ce que tu veux dire par "découper mon poulet", on peu faire plein de chose avec les classe, mais il y a 50000 moyen de faire ces choses
Hors ligne
Exactement je te souhaite bon courage mais n'hésite pas à poser des questions ici si tes cours ne sont pas clairs.
Hors ligne
c'est gentil TUpac, le cours sur le site du zéro est assez clair, j'ai compris et j'ai fait ma première classe (je vais maintenant m'attaquer aux héritages)
bon...ok j'en rêve un peu la nuit car je me rend compte que ça peut être très casse tête si on veux faire des trucs poussés mais bon...
et merci aussi Nabouill, en fait je n'avais pas vu ton EDIT ^^
j'ai testé, ça fonctionne mais je me rend vraiment compte que la gestion des collisions d'irrlicht est toute pourrie (et je suis poli :p) car c'est pas mal bugué (même en essayant différents paramètres)
par exemple, la collision de mon joueur avec le terrain: dès que je rencontre un petit changement de hauteur, mon perso se bloque...c'est assez hasardeux en fait
de plus, j'ai constaté une chute vertigineuse de FPS lorsqu'il y a beaucoup d'objets (même en bounding box...)
enfin bref je pense que par la suite j'intègrerai Newton car même si il me faut juste de la gravité sur mon terrain et des collisions simples (mesh ou BB) sans déformations ou truc du genre, ce sera tout de même plus performant que sous irrlicht
Hors ligne
Pages: 1