07 WebGL 着色器编程语言GLSL ES的取样器(纹理)

将GLSL ES支持的一种内置类型称为取样器(sampler),我们必须通过该类型变量访问纹理。有两种基本的取样器类型:sampler2D和samplerCube。取样器变量只能是uniform变量,或者需要访问纹理的函数,如texture2D()函数的参数。比如:

uniform sampler2D u_Sampler;
此外,唯一能赋值给取样器变量的就是纹理单元编号,而且你必须使用WebGL方法gl.uniform1i()来进行赋值。比如在WebGL纹理相关章节,我们就使用了gl.uniform1i(u_Sampler,0)将纹理单元编号0传给着色器。

除了=、==和!=,取样器变量不可以作为操作数参与运算。

和前几节中介绍的其他类型不同,取样器类型变量受到着色器支持的纹理单元的最大数量限制,见表6.10。该表格中,mediump是一个精度限定字。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值