Problème d'allocation dynamique
Bonjour, bonsoir,
J'ai commencé depuis quelques temps la création d'un moteur physique 2D, j'ai donc crée mes différentes classes et autres.
Le moteur physique est composé de formes basiques ( Bloc, triangle, cercle ).
Chaque forme hérite de la classe "Listener" qui elle contient les informations nécessaires à tester les collision et autres ( Force, Velocité, position, ...).
La classe "Listener" contient aussi un pointeur appellé m_vertices, celui-ci sert à allouer dynamiquement par la suite les sommets des polygons.
Exemple : Je crée un objet de type "Cercle", je choisis le nombre de points que le cercle possedera puis celui-ci se crée.
Malheuresement cette partie la pose problème, Si je crée un premier cercle, celui-ci fonctionne correctement. Des que je souhaite en crée un autre, le programme plante, ou celui-ci se lance mais le second cercle à un point en moins.
Voici un screen montrant le problème :
http://images2.hiboox.com/vignettes/4907/ackmercd.jpg
Le second cercle ressemble plus à pacman et le programme plante à sa fermeture.
Je ne voit pas du tout d'ou ça vient, a chaque nouvel objet crée ( apres un premier ), les suivant on un sommet en moins ( Le premier du tableau j'ai l'impression ( m_vertices) ).
Voici le code source du moteur ( Inclus un programme de test ) :
Télécharger depuis un client SVN : svn checkout http://hx-engine.googlecode.com/svn/trunk/ hx-engine-read-only
Télécharger archive .rar : Voir le Fichier : hxengine_l6yxj7gfr7.rar
L'allocation se fait dans les classes du dossier "Formes".
J'ai inclus un programme d'exemple avec. ( Dans le dossier "Exemple" )
Merci à vous.
Hybrix.