Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

OpenGl + szescian na bialo i krawędzie dlaczego?

Ostatnio zmodyfikowano 2012-03-16 17:08
Autor Wiadomość
kata.mic
Temat założony przez niniejszego użytkownika
OpenGl + szescian na bialo i krawędzie dlaczego?
» 2012-03-16 16:54:12
tak jak w temacie. Mam problem z kodem bo nie wiem dlaczego rysuje mi sześcian wraz z krawędziami na biało tak że ciężko odróżnić figurę. Co sugerujecie dodać może? Jakąś funkcję albo co odpowiada za zmianę ramek na kolor np czarny?
P-52707
Toboe
» 2012-03-16 17:08:33
Musiałbyś bufor głębokości "odsunąć" (glPolygonOffset(GLfloat factor, GLfloat units) (możesz te wartości spróbować ustawić na -1, -1, a tak trzeba doświadczalnie dobrać) i oddzielnie rysować ramki.

Czyli:
C/C++
//Tu rysujesz biały sześcian z włączonym buforem głębi
Rysuj_szescian();
//a potem...
glPolygonOffset( - 1.0f, - 1.0f );
glEnable( GL_POLYGON_OFFSET_LINE );

//rysowanie linii:
glPolygonMode( GL_FRONT_AND_BACK, GL_LINE );

//tu rysujesz swój sześcian ponownie po ustawieniu odpowiedniego koloru linii. Bufor głębi włączony ma być.
Rysuj_szescian();

//Przywracanie do stanu normalnego:
glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );
glDisabe( GL_POLYGON_OFFSET_LINE
Pisałem z palca przepisując fragmenty przykładu z podręcznika, więc nie obiecuję, że zadziała.^^'
Łatwiej nadać różne kolory ścianom i rysować sześcian z buforem głębi.
P-52708
« 1 »
  Strona 1 z 1