[BCB+OpenGL] Niewidoczne ściany.

0

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.

0

Oblicz wektor normalny i pomiń gdy z < 0.

Być może wystarczy ustawić modelview = twoside + colormaterial = 100% transparent,
lub coś w tym stylu...

0

glFrontFace(GL_CCW); // albo CW, zależy jak leży ;p
glEnable(GL_CULL_FACE);

0

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 [???]

0

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]

0

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]

0

ukrywanie niewidocznych scian to: glcullface(GL_BACK); glenable(GL_CULLFACE);

rysujesz scene

gldisable(GL_CULL_FACE);

1 użytkowników online, w tym zalogowanych: 0, gości: 1