RDShaderSPIRV

Hereda: Resource < RefCounted < Object

SPIR-V intermediate representation as part of an RDShaderFile (used by RenderingDevice).

Descripción

RDShaderSPIRV represents an RDShaderFile's SPIR-V code for various shader stages, as well as possible compilation error messages. SPIR-V is a low-level intermediate shader representation. This intermediate representation is not used directly by GPUs for rendering, but it can be compiled into binary shaders that GPUs can understand. Unlike compiled shaders, SPIR-V is portable across GPU models and driver versions.

This object is used by RenderingDevice.

Propiedades

PackedByteArray

bytecode_compute

PackedByteArray()

PackedByteArray

bytecode_fragment

PackedByteArray()

PackedByteArray

bytecode_tesselation_control

PackedByteArray()

PackedByteArray

bytecode_tesselation_evaluation

PackedByteArray()

PackedByteArray

bytecode_vertex

PackedByteArray()

String

compile_error_compute

""

String

compile_error_fragment

""

String

compile_error_tesselation_control

""

String

compile_error_tesselation_evaluation

""

String

compile_error_vertex

""

Métodos

PackedByteArray

get_stage_bytecode(stage: ShaderStage) const

String

get_stage_compile_error(stage: ShaderStage) const

void

set_stage_bytecode(stage: ShaderStage, bytecode: PackedByteArray)

void

set_stage_compile_error(stage: ShaderStage, compile_error: String)


Descripciones de Propiedades

PackedByteArray bytecode_compute = PackedByteArray() 🔗

El bytecode SPIR-V para la etapa de shader de cómputo.

Note: The returned array is copied and any changes to it will not update the original property value. See PackedByteArray for more details.


PackedByteArray bytecode_fragment = PackedByteArray() 🔗

El bytecode SPIR-V para la etapa de shader de fragmentos.

Note: The returned array is copied and any changes to it will not update the original property value. See PackedByteArray for more details.


PackedByteArray bytecode_tesselation_control = PackedByteArray() 🔗

El bytecode SPIR-V para la etapa de shader de control de teselación.

Note: The returned array is copied and any changes to it will not update the original property value. See PackedByteArray for more details.


PackedByteArray bytecode_tesselation_evaluation = PackedByteArray() 🔗

El bytecode SPIR-V para la etapa de shader de evaluación de teselación.

Note: The returned array is copied and any changes to it will not update the original property value. See PackedByteArray for more details.


PackedByteArray bytecode_vertex = PackedByteArray() 🔗

El bytecode SPIR-V para la etapa de shader de vértices.

Note: The returned array is copied and any changes to it will not update the original property value. See PackedByteArray for more details.


String compile_error_compute = "" 🔗

El mensaje de error de compilación para la etapa de shader de cómputo (establecido por el compilador SPIR-V y Godot). Si está vacío, la compilación del shader fue exitosa.


String compile_error_fragment = "" 🔗

El mensaje de error de compilación para la etapa de shader de fragmentos (establecido por el compilador SPIR-V y Godot). Si está vacío, la compilación del shader fue exitosa.


String compile_error_tesselation_control = "" 🔗

El mensaje de error de compilación para la etapa de shader de control de teselación (establecido por el compilador SPIR-V y Godot). Si está vacío, la compilación del shader fue exitosa.


String compile_error_tesselation_evaluation = "" 🔗

El mensaje de error de compilación para la etapa de shader de evaluación de teselación (establecido por el compilador SPIR-V y Godot). Si está vacío, la compilación del shader fue exitosa.


String compile_error_vertex = "" 🔗

El mensaje de error de compilación para la etapa de shader de vértices (establecido por el compilador SPIR-V y Godot). Si está vacío, la compilación del shader fue exitosa.


Descripciones de Métodos

PackedByteArray get_stage_bytecode(stage: ShaderStage) const 🔗

Equivalent to getting one of bytecode_compute, bytecode_fragment, bytecode_tesselation_control, bytecode_tesselation_evaluation, bytecode_vertex.


String get_stage_compile_error(stage: ShaderStage) const 🔗

Returns the compilation error message for the given shader stage. Equivalent to getting one of compile_error_compute, compile_error_fragment, compile_error_tesselation_control, compile_error_tesselation_evaluation, compile_error_vertex.


void set_stage_bytecode(stage: ShaderStage, bytecode: PackedByteArray) 🔗

Sets the SPIR-V bytecode for the given shader stage. Equivalent to setting one of bytecode_compute, bytecode_fragment, bytecode_tesselation_control, bytecode_tesselation_evaluation, bytecode_vertex.


void set_stage_compile_error(stage: ShaderStage, compile_error: String) 🔗

Sets the compilation error message for the given shader stage to compile_error. Equivalent to setting one of compile_error_compute, compile_error_fragment, compile_error_tesselation_control, compile_error_tesselation_evaluation, compile_error_vertex.