2013-05-16 7 views
0

Je semble avoir un problème pour obtenir libgdx pour rendre les choses correctement. Je rends 2 triangles colorés en utilisant les sommets:3D PerspectiveCamera Rendering Depth libgdx OpenGL ES 2.0

Triangle 1 (bleu): (-1,0f, 0,0f, -1,0f), (1,0f, 0,0f, -1,0f), (0,0f, 1,0 f, -1,0f)

Triangle 2 (rouge): (0,0f, 0,0f, -3,0f), (1,0f, 1,0f, -3,0f), (2,0f, 0,0f, -3,0 f)

Le triangle 2 devrait être à droite et derrière le triangle 1. Je ne sais pas vraiment ce qui se passe parce que le triangle 2 est à droite et il est plus petit que le triangle 1, mais il est rendu devant le triangle 1 Tout conseil sur la façon de résoudre ce problème serait apprécié. J'ai essayé de chercher google, mais je ne trouve rien qui aide.

+0

Avez-vous activé les tests de profondeur? – jellyfication

+0

Oui. Je ne suis pas sûr de ce qui ne va pas. – Jay

Répondre

0

I utilisé ce code pour dessiner 2 triangles où le second triangle (le rouge) se trouve à droite et en arrière de triangle 1:

glTranslated(0,0,-5); 
glEnable(GL_DEPTH_TEST); 
glBegin(GL_TRIANGLES); 
    glColor3ub(0,0,255);     //Triangle 1 
    glVertex3f(-1.0f, 0.0f, -1.0f); 
    glVertex3f(1.0f, 0.0f, -1.0f); 
    glVertex3f(0.0f, 1.0f, -1.0f); 

    glColor3ub(255,0,0);     // Triangle 2 
    glVertex3f(0.0f, 0.0f, -3.0f); 
    glVertex3f(1.0f, 1.0f, -3.0f); 
    glVertex3f(2.0f, 0.0f, -3.0f); 
glEnd(); 

est ici les résultats des tirages:

draw results

+0

J'utilise libgdx avec GLES 2.0. Qu'est-ce que vous utilisez? Cette image est ce que j'attends mais ce n'est pas ce que je vais obtenir. – Jay

+0

J'utilise OpenGl avec C++. – EyadMhanna

+0

Pouvez-vous poster l'intégralité du code? Je travaille en Java mais je vois quels drapeaux vous mettez et tout peut aider. – Jay