繁体   English   中英

相同的采样器,多个纹理单元,OpenGL

[英]Same sampler, multiple texture units, OpenGL

使用OpenGL(核心配置文件,4.4),将同一采样器对象同时绑定到2个不同纹理单元是否“合法”?

我的测试表明它可以正常工作,但是我不知道我的驱动程序是否被原谅,或者它是否是一项功能。

是的,这完全可以接受,如下所述。

OpenGL 4.4核心配置文件规范 -8.2采样器对象 -第164-165页

8.2采样器对象

当采样器对象绑定到纹理单元时,其状态将取代绑定到该纹理单元的纹理对象的状态。 如果采样器名称零绑定到纹理单元,则当前绑定的纹理的采样器状态将变为活动状态。 单个采样器对象可以同时绑定到多个纹理单元。

采样器对象绑定通过以下命令进行:

void glBindSampler (GLuint unit, GLuint sampler);

unit设置为绑定采样sampler的纹理单元的从零开始的索引,采样sampler设置为从先前对glGenSamplers调用返回的采样器对象的名称。

如果绑定成功,则不会更改绑定的采样器对象的状态,并且以前与单元的任何绑定都将中断。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM