pyopengl改变纹理的亮度

时间:2012-02-17 15:37:44

标签: python opengl textures pyopengl

我有一个程序,我渲染两个绑定到某些多边形的纹理,并使用它添加结果:

glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_ADD)

这种方法效果很好而且速度很快但是我希望在添加它们之前改变每个纹理的亮度,比如增益值。这个值需要在运行时更改,所以我不能只将亮度烘焙到我的纹理中。

此外,我的程序的性质意味着我不知道在运行之前我将混合多少纹理,所以我需要一个可以处理n个纹理的解决方案。

有谁知道我会怎么做?

1 个答案:

答案 0 :(得分:0)

如果您能够使用片段着色器,则应在片段着色器中编写代码,使用应用程序传入的着色器参数更改亮度。此方法既快速又灵活。