Shader¶
Inherits: Resource < Reference < Object
Inherited By: VisualShader
自定义着色器程序。
描述¶
此类允许您定义一个 ShaderMaterial 可以使用的自定义着色器程序。着色器允许您编写自己的自定义行为来渲染对象或更新粒子信息。有关详细说明和用法,请参阅下面链接的教程。
教程¶
属性¶
|
||
|
方法¶
get_default_texture_param ( String param ) const |
|
get_mode ( ) const |
|
void |
set_default_texture_param ( String param, Texture texture ) |
枚举¶
enum Mode:
MODE_SPATIAL = 0 --- 用于绘制所有 3D 对象的模式。
MODE_CANVAS_ITEM = 1 --- 用于绘制所有 2D 对象的模式。
MODE_PARTICLES = 2 --- 用于基于每个粒子计算粒子信息的模式。不用于绘图。
属性说明¶
String code
Default |
|
Setter |
set_code(value) |
Getter |
get_code() |
返回用户编写的着色器代码,而不是内部使用的完整生成代码。
String custom_defines
Default |
|
Setter |
set_custom_defines(value) |
Getter |
get_custom_defines() |
返回该着色器的自定义。自定义可以在Godot中用于添加着色器逻辑所需的GLSL预处理指令(例如:扩展)。
注意: 自定义没有经过Godot着色器解析器的验证,所以使用时要注意。
方法说明¶
返回被设置为指定参数的默认纹理。
注意: param
必须与代码中的uniform名称完全匹配。
Mode get_mode ( ) const
返回着色器的着色器模式,MODE_CANVAS_ITEM、MODE_SPATIAL 或 MODE_PARTICLES。
如果着色器在其代码中把这个参数定义为uniform,则返回true
。
注意: param
必须与代码中的uniform名称完全匹配。
设置默认纹理,以用于纹理 uniform。如果 ShaderMaterial 中没有设置纹理,则使用默认值。
注意:param
必须与代码中的 uniform 名称完全匹配。