我想画一个有一定透明度的glutSolidSphere
,但是好像不行。
glColor4f(1, 0, 0, 0); // should be completely invisible
glPushMatrix();
glTranslatef(position.x, position.y, position.z);
glutSolidSphere(3, 5, 5);
glPopMatrix();
在我的主要功能中,我使用以下显示模式进行初始化:
glutInitDisplayMode(GLUT_DEPTH | GLUT_DOUBLE | GLUT_RGBA | GLUT_ALPHA);
我在这里错过了什么?
最佳答案
您需要明确设置 alpha blending . Another example .
glEnable (GL_BLEND);
glBlendFunc (GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
关于c++ - 在 openGL 中绘制具有透明度的实心球体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4451399/