Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
VisualShaderNode
继承: Resource < RefCounted < Object
派生: VisualShaderNodeBillboard, VisualShaderNodeClamp, VisualShaderNodeColorFunc, VisualShaderNodeColorOp, VisualShaderNodeCompare, VisualShaderNodeConstant, VisualShaderNodeCubemap, VisualShaderNodeCustom, VisualShaderNodeDerivativeFunc, VisualShaderNodeDeterminant, VisualShaderNodeDistanceFade, VisualShaderNodeDotProduct, VisualShaderNodeFloatFunc, VisualShaderNodeFloatOp, VisualShaderNodeFresnel, VisualShaderNodeIf, VisualShaderNodeInput, VisualShaderNodeIntFunc, VisualShaderNodeIntOp, VisualShaderNodeIs, VisualShaderNodeLinearSceneDepth, VisualShaderNodeMix, VisualShaderNodeMultiplyAdd, VisualShaderNodeOuterProduct, VisualShaderNodeOutput, VisualShaderNodeParameter, VisualShaderNodeParameterRef, VisualShaderNodeParticleAccelerator, VisualShaderNodeParticleConeVelocity, VisualShaderNodeParticleEmit, VisualShaderNodeParticleEmitter, VisualShaderNodeParticleMultiplyByAxisAngle, VisualShaderNodeParticleRandomness, VisualShaderNodeProximityFade, VisualShaderNodeRandomRange, VisualShaderNodeRemap, VisualShaderNodeReroute, VisualShaderNodeResizableBase, VisualShaderNodeRotationByAxis, VisualShaderNodeSample3D, VisualShaderNodeScreenNormalWorldSpace, VisualShaderNodeScreenUVToSDF, VisualShaderNodeSDFRaymarch, VisualShaderNodeSDFToScreenUV, VisualShaderNodeSmoothStep, VisualShaderNodeStep, VisualShaderNodeSwitch, VisualShaderNodeTexture, VisualShaderNodeTextureSDF, VisualShaderNodeTextureSDFNormal, VisualShaderNodeTransformCompose, VisualShaderNodeTransformDecompose, VisualShaderNodeTransformFunc, VisualShaderNodeTransformOp, VisualShaderNodeTransformVecMult, VisualShaderNodeUIntFunc, VisualShaderNodeUIntOp, VisualShaderNodeUVFunc, VisualShaderNodeUVPolarCoord, VisualShaderNodeVarying, VisualShaderNodeVectorBase, VisualShaderNodeWorldPositionFromDepth
VisualShader 节点的基类。与场景节点无关。
描述
可视化着色器图由各种节点组成。图中的每个节点都是一个独立的对象,它们被表示为带有标题和一系列属性的矩形框。每个节点还有连接端口,可以将其连接到另一个节点并控制着色器的流程。
教程
属性
|
||
|
方法
void |
|
get_default_input_port(type: PortType) const |
|
get_default_input_values() const |
|
get_input_port_default_value(port: int) const |
|
void |
|
void |
set_default_input_values(values: Array) |
void |
set_input_port_default_value(port: int, value: Variant, prev_value: Variant = null) |
枚举
enum PortType: 🔗
PortType PORT_TYPE_SCALAR = 0
浮点数类型。在着色器代码中,会被翻译为 float
类型。
PortType PORT_TYPE_SCALAR_INT = 1
整数标量。在着色器代码中,会被翻译为 int
类型。
PortType PORT_TYPE_SCALAR_UINT = 2
无符号整数标量。在着色器代码中,会被翻译为 uint
类型。
PortType PORT_TYPE_VECTOR_2D = 3
浮点数 2D 向量。在着色器代码中,会被翻译为 vec2
类型。
PortType PORT_TYPE_VECTOR_3D = 4
浮点数 3D 向量。在着色器代码中,会被翻译为 vec3
类型。
PortType PORT_TYPE_VECTOR_4D = 5
浮点数 4D 向量。在着色器代码中,会被翻译为 vec4
类型。
PortType PORT_TYPE_BOOLEAN = 6
布尔值类型。在着色器代码中,会被翻译为 bool
类型。
PortType PORT_TYPE_TRANSFORM = 7
变换类型。在着色器代码中,会被翻译为 mat4
类型。
PortType PORT_TYPE_SAMPLER = 8
采样器类型。在着色器代码中,会被翻译为对采样器 uniform 的引用。只能用于非 uniform 节点的输入端口。
PortType PORT_TYPE_MAX = 9
表示 PortType 枚举的大小。
属性说明
int linked_parent_graph_frame = -1
🔗
表示该节点被链接到的框的索引。如果设置为 -1
,则表示节点未被链接到任何框。
int output_port_for_preview = -1
🔗
设置将被显示为预览的输出端口索引。如果设置为-1
,则没有端口会被打开进行预览。
方法说明
void clear_default_input_values() 🔗
清除默认输入端口值。
int get_default_input_port(type: PortType) const 🔗
返回输入端口,当由于将连接从已有节点拖动到图形上的空白区域而创建节点时,默认情况下应连接该输入端口。
Array get_default_input_values() const 🔗
返回一个包含节点所有输入端口默认值的 Array,形式为 [index0, value0, index1, value1, ...]
。
Variant get_input_port_default_value(port: int) const 🔗
返回输入端口 port
的默认值。
void remove_input_port_default_value(port: int) 🔗
移除输入端口 port
的默认值。
void set_default_input_values(values: Array) 🔗
使用 [index0, value0, index1, value1, ...]
形式的 Array 设置默认输入端口值。例如: [0, Vector3(0, 0, 0), 1, Vector3(0, 0, 0)]
。
void set_input_port_default_value(port: int, value: Variant, prev_value: Variant = null) 🔗
设置输入端口 port
的默认值 value
。