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节点的基类。与场景节点无关。

描述

可视化着色器图由各种节点组成。图中的每个节点都是一个单独的对象,它们表示为带有标题和一组属性的矩形框。每个节点还具有连接端口,允许将其连接到另一个节点并控制着色器的流程。

属性

方法


枚举

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

浮点值的二维向量。在着色器代码中翻译为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

采样器类型。翻译为着色器代码中采样器统一的参考。只能用于非统一节点中的输入端口。

PortType PORT_TYPE_MAX = 9

表示PortType枚举的大小。


属性说明

int linked_parent_graph_frame = -1 🔗

  • void set_frame(value: int)

  • int get_frame()

表示此节点链接到的帧的索引。如果设置为-1,则节点不会链接到任何帧。


int output_port_for_preview = -1 🔗

  • void set_output_port_for_preview(value: int)

  • int get_output_port_for_preview()

设置将显示用于预览的输出端口索引。如果设置为-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, value e0,index1,value e1,…]形式的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