[OpenGL] Problème d'affichage perso-objets (2d)

Le côté programmation du développement d'un jeu vidéo.

Problème d'affichage perso-objets (2d)

Messagepar misugi » 22 Fév 2009, 18:01

Salut à tous, je suis actuellement en train de programmer un petit jeu 2d iso basique, mais je viens de rencontrer un petit problème...je vous explique ça en image :

Image

sur cette première image, le personnage est situé devant l'objet, il est donc normal que celui-ci soit afficher après l'objet, mais par contre, lorsque je me déplace deux cases au dessus, voilà ce que j'obtiens :

Image

le personnage est quand même affiché par dessus l'objet, alors qu'il ne devrai pas l'être, mais c'est logique, puisque mon code d'affichage est le suivant :

Code: Tout sélectionner

// on boucle les éléments(terrains, objets...)
for(size_t i = 0; i < m_ElementList.size(); i++)
    m_ElementList[i]->Draw();


// on affche les personnages
m_CharacterManager->DrawCharacters();



voilà, donc les personnages seront toujours afficher par dessus les maisons, décos, etc...

comment pourrai-je régler ce problème ? je n'ai pas d'idées :00000002:

merci de bien vouloir m'aider.
misugi
Hello World, I'm new !
 
Messages: 10
Inscription: 05 Mai 2006, 22:35

Messagepar deathangel » 22 Fév 2009, 19:05

si tous tes éléments (personnage, décor) ont la même classe de base (genre DrawableObject) possédant un attribut position sur le terrain, rien ne t'empêche à chaque rendu, de mettre tous ces éléments dans un tableau et de le trier selon cette position sur la carte, en mettant en premier les objets à l'arrière. Dans ce cas là, tu n'aurais qu'une seule boucle de parcours qui prendrait tout tes objets et les dessinerait dans l'ordre.
je pense que ce serait le plus simple à gérer
95% des problèmes informatiques se situent entre la chaise et le clavier
--> Créez votre robot chien : http://doggyproject.free.fr/
--> Gagnez des PACK+ gratuitement : http://www.packbarre.com/
--> S.U.S Tennis de table http://www.sus.asso.fr
Avatar de l’utilisateur
deathangel
Hello World, I'm new !
 
Messages: 963
Inscription: 10 Avr 2005, 08:50
Localisation: Strasbourg

Messagepar misugi » 22 Fév 2009, 19:12

bwa, comment j'ai fais pour ne pas y penser...merci de ton aide, je vais faire ça je pense aussi que c'est plus simple :D.
misugi
Hello World, I'm new !
 
Messages: 10
Inscription: 05 Mai 2006, 22:35


Retourner vers Programmation

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 4 invités

cron