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.

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

AnimationTree 節點的基底類別。與場景節點無關。

說明

視覺化著色器圖由各種節點組成。圖中的每個節點都是一個獨立的物件,它們被表示為帶有標題和一系列屬性的矩形框。每個節點都有連接埠,可以將其連接到另一個節點並控制著色器的流程。

教學

屬性

int

linked_parent_graph_frame

-1

int

output_port_for_preview

-1

方法

void

clear_default_input_values()

int

get_default_input_port(type: PortType) const

Array

get_default_input_values() const

Variant

get_input_port_default_value(port: int) const

void

remove_input_port_default_value(port: int)

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

Floating-point scalar. Translated to float type in shader code.

PortType PORT_TYPE_SCALAR_INT = 1

Integer scalar. Translated to int type in shader code.

PortType PORT_TYPE_SCALAR_UINT = 2

Unsigned integer scalar. Translated to uint type in shader code.

PortType PORT_TYPE_VECTOR_2D = 3

2D vector of floating-point values. Translated to vec2 type in shader code.

PortType PORT_TYPE_VECTOR_3D = 4

3D vector of floating-point values. Translated to vec3 type in shader code.

PortType PORT_TYPE_VECTOR_4D = 5

4D vector of floating-point values. Translated to vec4 type in shader code.

PortType PORT_TYPE_BOOLEAN = 6

Boolean type. Translated to bool type in shader code.

PortType PORT_TYPE_TRANSFORM = 7

Transform type. Translated to mat4 type in shader code.

PortType PORT_TYPE_SAMPLER = 8

取樣器型別。在著色器程式碼中,會被翻譯為對取樣器 uniform 的引用。只能用於非 uniform 節點的輸入埠。

PortType PORT_TYPE_MAX = 9

表示 PortType 列舉的大小。


屬性說明

int linked_parent_graph_frame = -1 🔗

  • void set_frame(value: int)

  • int get_frame()

Represents the index of the frame this node is linked to. If set to -1 the node is not linked to any frame.


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, 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