Opengl: проблема с маскировкой - PullRequest
0 голосов
/ 14 мая 2010

Я работаю над созданием дыры в стене, используя маскировку в opengl, мой код выглядит так просто,

//Draw the mask
glEnable(GL_BLEND);                         
glBlendFunc(GL_DST_COLOR,GL_ZERO);  
glBindTexture(GL_TEXTURE_2D, texture[3]);

glBegin(GL_QUADS);
glTexCoord2d(0,0); glVertex3f(-20,40,-20);
glTexCoord2d(0,1);glVertex3f(-20,40,40);
glTexCoord2d(1,1);glVertex3f(20,40,40);
glTexCoord2d(1,0);glVertex3f(20,40,-20);

glEnd();

//Draw the Texture
glBlendFunc(GL_ONE, GL_ONE);


glBindTexture(GL_TEXTURE_2D, texture[2]);
glBegin(GL_QUADS);
glTexCoord2d(0,0); glVertex3f(-20,40,-20);
glTexCoord2d(0,1);glVertex3f(-20,40,40);    
glTexCoord2d(1,1);glVertex3f(20,40,40);
glTexCoord2d(1,0);glVertex3f(20,40,-20);
glEnd();

Проблема в том, что я правильно получил дыру в стене, но она полупрозрачная, я получаю черный оттенок, и я тоже могу видеть сквозь нее. Вот фото того, что я получаю: альтернативный текст http://i43.tinypic.com/iw7ju0.jpg

есть предложения?

1 Ответ

0 голосов
/ 15 мая 2010

решено: D Это была проблема нормалей поверхности, как только я установил нормали в правильном положении. Черный оттенок исчез.

...