OpenGL仅更改r、g、b或a通道

OpenGL仅更改r、g、b或a通道,opengl,colors,set,alpha,channel,Opengl,Colors,Set,Alpha,Channel,我只想改变阿尔法频道。有办法吗? 要应用颜色,我将十六进制值转换为“r”、“g”、“b”和“a浮动”r、'g'和'b'是静态的,但'a'对于每个对象都是不同的。跟踪您自己的颜色。例如,您有4个浮点数,每个浮点数包含一个组件: GLfloat r,g,b,a; 每当您想要更改alpha值时,将a设置为所需值并调用glColor4f a = 0.5f; glColor4f(r,g,b,a); 您也可以使用完全相同的解决方案单独更改其他组件请澄清此问题。完全不清楚你在问什么。我在搜索类似的东西:g

我只想改变阿尔法频道。有办法吗?
要应用颜色,我将十六进制值转换为“r”、“g”、“b”和“a浮动”r、'g'和'b'是静态的,但'a'对于每个对象都是不同的。

跟踪您自己的颜色。例如,您有4个浮点数,每个浮点数包含一个组件:

GLfloat r,g,b,a;
每当您想要更改alpha值时,将a设置为所需值并调用glColor4f

a = 0.5f;
glColor4f(r,g,b,a);

您也可以使用完全相同的解决方案单独更改其他组件

请澄清此问题。完全不清楚你在问什么。我在搜索类似的东西:glColor1f代表r、g、b或a。而不是glColor3f或GLCOLOR4F,这里没有这样的东西。您必须手动跟踪颜色,并重新提供未更改的组件。