【发布时间】:2010-01-27 22:00:07
【问题描述】:
我正在尝试使用着色器模拟 OpenGL glTexEnv 的行为。这是一个相当复杂的功能,但应该是可行的。唯一的问题是函数的工作方式因纹理基础内部格式而异。如何从纹理中获取该信息?纹理基础内部格式是由 glTexImage2D 函数给出的,所以我必须将它保存到某个变量中,然后根据绑定的纹理将其传递给着色器,或者我可以通过 OpenGL 以某种方式获得它吗?
【问题讨论】:
-
内部格式如何影响着色器?
-
@Luca 您可能有一个纹理,例如只有一个通道(假设只有红色值,编码为 32 位)。现在,如果您的着色器需要至少两个通道(例如,红色和绿色),您在提供单通道纹理时可能会遇到问题。