2013-05-16 2 views
0

У меня, кажется, проблема с libgdx, чтобы правильно отображать вещи. Я рисую 2 цветных треугольника, используя вершины:3D PerspectiveCamera Rendering Depth libgdx OpenGL ES 2.0

Треугольник 1 (синий): (-1.0f, 0.0f, -1.0f), (1.0f, 0.0f, -1.0f), (0.0f, 1.0 f, -1.0f)

Треугольник 2 (красный): (0.0f, 0.0f, -3.0f), (1.0f, 1.0f, -3.0f), (2.0f, 0.0f, -3.0 f)

Треугольник 2 должен быть справа и сзади треугольника 1. Я действительно не знаю, что происходит, потому что треугольник 2 справа и меньше треугольника 1, но он отображается перед треугольником 1 Любой совет о том, как исправить это, будет оценен по достоинству. Я пробовал искать Google, но не могу найти ничего, что поможет.

+0

У вас включено тестирование глубины? – jellyfication

+0

Да. Я не уверен, что с этим не так. – Jay

ответ

0

Я использовал этот код, чтобы нарисовать 2 треугольника, где второй треугольник (красный один) находится справа и сзади треугольника 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(); 

Вот результаты жеребьевки:

draw results

+0

Я использую libgdx с GLES 2.0. Что вы используете? Этот образ - это то, что я ожидаю, но это не то, что я получаю. – Jay

+0

Я использую OpenGl с C++. – EyadMhanna

+0

Можете ли вы опубликовать весь код? Я работаю на Java, но вижу, какие флаги установлены, и все может помочь. – Jay

Смежные вопросы