我正在使用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();
问题是,我正确地在墙上打了一个洞,但它是半透明的,我变得像黑色的阴影,我也可以看透它。 这是我得到的照片: alt text http://i43.tinypic.com/iw7ju0.jpg
有什么建议吗?
答案 0 :(得分:0)
已解决:D 一旦我将法线设置在正确的位置,表面的法线就会出现问题。黑色阴影消失了。