作者newJoey (newJoey)
看板GameDesign
标题[程式] glColor问题
时间Wed Jan 8 21:26:17 2014
我用了glBegin(GL_LINES)画了线段
其中glColor用来设定颜色
但把它与材质贴图混在一起(打开glEnable(GL_TEXTURE_2D);)
结果材质贴图的颜色就变了
结果是要关掉贴图还有重设颜色才回来
例:
glDisable(GL_TEXTURE_2D); //关掉贴图
glBegin(GL_LINES);
glColor3f(1.0,0,0);
glVertex3f(x,y,z);
//glColor3f(1.0,0,0);
glVertex3f(xX,yX,zX);
glColor3f(0,1.0,0);
glVertex3f(x,y,z);
//glColor3f(0,1.0,0);
glVertex3f(xY,yY,zY);
glColor3f(0,0,1.0);
glVertex3f(x,y,z);
//glColor3f(0,0,1.0);
glVertex3f(xZ,yZ,zZ);
glEnd();
glColor3f(1.0,1.0,1.0); //设回白色
这样是正确的吗?
glColor没听说会改到贴图颜色
如果有有正确的修改方法吗?
还有设顶点颜色
还是该每个点设一次?
Sorry一直问ㄧ些简单的蠢问题...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.163.12.151
1F:→ azureblaze:预设设定顶点颜色会和贴图颜色相乘 01/08 22:03
2F:→ azureblaze:顶点颜色如果每个都不一样当然每点设一次 01/08 22:06
3F:→ azureblaze:不过实务用法就用VBO把所有资讯一次全部倒进去了 01/08 22:07
4F:推 Bencrie:另一种做法就是舍弃老旧的 fixed pipeline&immediate mode 01/08 22:11