Właśnie zacząłem się bawić w OpenGL i mam taki problem. Jak w OpenGL zrealizować ukrywanie niewidocznych ścian? Tzn. chodzi mi o nie rysowanie ścian "odwróconych tyłem" do obserwatora.
Oblicz wektor normalny i pomiń gdy z < 0.
Być może wystarczy ustawić modelview = twoside + colormaterial = 100% transparent,
lub coś w tym stylu...
glFrontFace(GL_CCW); // albo CW, zależy jak leży ;p
glEnable(GL_CULL_FACE);
Już mam, wystarczyło dać glEnable(GL_DEPTH_TEST);
Oto co mi wyszło ;P
Teraz jak włączyć światło [???]
Werszon 2.0 ;P
Zaczynam sie zastanawiac nad napisaniem wlasnego silnika [rotfl]
Co z tym światłem [???]
glEnable(GL_LIGHTING);
glEnable(GL_LIGHTx); // x = <0,7>
// imho, gl_depth_test to nie jest to o co pytałeś w pierwszym poście...
// w final2 jak kliknę na pyramid
to nic się nie dzieje (?)
// jezeli brakuje jakiegos pliku *.bmp to błąd się zapętla :/ [diabel]
Coś właśnie te światła mi nie chcą się włączyć :/ korzystam z manuala OpenGL.
A tymczasem moje Panie i Dranie: Werszon 3 with TMyCubeTripEffect! ;P
ps. Nie jest to "idioten sicher" tak więc brak pliku może powodować wyloty, to jest materiał do nauki [green]
ukrywanie niewidocznych scian to: glcullface(GL_BACK); glenable(GL_CULLFACE);
rysujesz scene
gldisable(GL_CULL_FACE);