0

我有一个程序,我在其中渲染两个绑定到某些多边形的纹理并使用以下方法添加结果:

glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_ADD)

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

此外,我的程序的性质意味着直到运行时我才会知道要混合多少纹理,所以我需要一个可以处理 n 个纹理的解决方案。

有谁知道我会怎么做?

4

1 回答 1

0

If you're able to use fragment shaders, you should write code in the fragment shader that changes the brightness with a shader parameter that your application passes in. This approach will be both fast and flexible.

于 2012-02-17T15:41:15.877 回答