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
。