shader_get_sampler_index

由于无法在着色器本身中更改着色器采样器的值,因此必须在使用可用的Uniform Set函数之一调用着色器之前设置它。但是,为了能够执行,必须首先调用此函数以获取要设置的着色器采样器的"句柄"。

注意尽管着色器由两个独立的程序(Vertex和Fragment)组成,但此函数不会区分这两个程序,并将从其中任何一个程序返回着色器示例的句柄。

 

语法:

shader_get_sampler_index(shader, uniform);

参数类型描述
shaderShader Asset要使用的着色器的索引。
uniformString获取(字符串)句柄的着色器采样器。

 

返回:

Shader Sampler Handle

 

例子:

glassshader_bgsampler = shader_get_sampler_index(GlassShader, "s_BackgroundSampler")
spr = sprite_get_texture(sprite_index, 0);
shader_set(GlassShader);
texture_set_stage(glassshader_bgsampler, spr);
shader_reset();

上面的代码将获取被索引为"GlassShader"的着色器中的采样器的句柄,然后将着色器常量设置为给定的精灵纹理。