Skocz do zawartości


[C++][OpenGL] Polygony nachodzą na siebie


3 odpowiedzi w tym temacie

#1 halil1107

    Nowy na forum

  • Użytkownicy
  • 5 Postów:
  • Gadu-Gadu:7871225

Napisano nie, 20 mar 2011 - 15:53

Witam,
Mam problem z OpenGl - prawdopodobnie głupi i banalny. Napisałem klasę do pracy z plikami .obj. Kłopot pojawił się gdy chciałem wyświetlić model. Okazuje się, że kolejność rysowania polygonów ma znaczenie, tzn. ostatni rysowany zawsze jest na wierzchu. Poniższy obrazek pokazuje co mam na myśli. Cyfry określają kolejność rysowania. Jak widać po obrocie modelu polygon nr 3 przykrywa 2 i 1, a 2 przykrywa 1.

Obrazek

Z OpenGl miałem do czynienia dawno temu i wtedy nic takiego się nie zdarzyło dlatego teraz jestem zaskoczony. Kod raczej nie jest jakiś paranormalny :/
c++

 glBegin( GL_QUADS );
// vertexy....
glVertex3f( 1.0, 0.0, 0.0);
// vertexy....
glEnd();

 


Moje IDE to Dev-cpp. Kiedy wybieram projekt OpneGl i Dev generuje mi przykładowy kod sprawa jest identyczna - więcej vertexów = nakładanie polygonow.
Gdzie tkwi problem?

#2 Blind

    Dzień dobry

  • Moderatorzy
  • 1057 Postów:

Napisano nie, 20 mar 2011 - 15:58

Musisz włączyć z-buffor

#3 Jason

    Avatar

  • Super użytkownicy
  • 1118 Postów:

Napisano nie, 20 mar 2011 - 16:25

c++

glEnable(GL_DEPTH_TEST);

 


#4 halil1107

    Nowy na forum

  • Użytkownicy
  • 5 Postów:
  • Gadu-Gadu:7871225

Napisano nie, 20 mar 2011 - 17:42

Dzięki za pomoc smile.gif Działa jak należy.