[英]Same sampler, multiple texture units, OpenGL
使用OpenGL(核心配置文件,4.4),将同一采样器对象同时绑定到2个不同纹理单元是否“合法”?
我的测试表明它可以正常工作,但是我不知道我的驱动程序是否被原谅,或者它是否是一项功能。
是的,这完全可以接受,如下所述。
8.2采样器对象
当采样器对象绑定到纹理单元时,其状态将取代绑定到该纹理单元的纹理对象的状态。 如果采样器名称零绑定到纹理单元,则当前绑定的纹理的采样器状态将变为活动状态。 单个采样器对象可以同时绑定到多个纹理单元。
采样器对象绑定通过以下命令进行:
void glBindSampler (GLuint unit, GLuint sampler);
unit
设置为绑定采样sampler
的纹理单元的从零开始的索引,采样sampler
设置为从先前对glGenSamplers
调用返回的采样器对象的名称。如果绑定成功,则不会更改绑定的采样器对象的状态,并且以前与单元的任何绑定都将中断。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.