Lau*_*ves 6 opengl-es opengl-es-2.0
如果您绑定(不同的纹理)同时会发生什么GL_TEXTURE_2D,并GL_TEXTURE_CUBE_MAP在同一纹理图像单元?
例如,假设我结合一种纹理GL_TEXTURE0的GL_TEXTURE_2D目标和另一个纹理到相同的纹理单元的GL_TEXTURE_CUBE_MAP目标.那么我可以有两个统一变量,一个是a sampler2D,另一个是a,samplerCube并且都设置为0(参考GL_TEXTURE0)?
我怀疑答案是"不"(或结果未定义)但我没有在规范中发现任何明确禁止在同一纹理图像单元中使用多个纹理目标的内容.
我还没有找到任何描述你是否可以在同一纹理单元中绑定2D纹理和立方体贴图纹理的东西,但是(或者说)我想这是完全可能的.允许它是有意义的,因为无论如何,所有纹理修改功能都要求您指定要操作的纹理目标.
但OpenGL ES 2规范明确禁止在着色器中同时使用两者,如第2.10章所述:
不允许具有指向程序对象内的相同纹理图像单元的不同采样器类型的变量.只能在下一个发出的渲染命令中检测到这种情况,然后会生成INVALID_OPERATION错误.
因此,您不能同时使用a sampler2D和samplerCube引用相同的纹理单元来弯曲实现的纹理单元限制.
| 归档时间: |
|
| 查看次数: |
853 次 |
| 最近记录: |