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.

RDShaderSPIRV

Успадковує: Resource < RefCounted < Object

Проміжне представлення SPIR-V як частина RDShaderFile (використовується RenderingDevice).

Опис

RDShaderSPIRV представляє код SPIR-V з RDShaderFile для різних етапів шейдерів, а також можливі повідомлення про помилки компіляції. SPIR-V – це низькорівневе проміжне представлення шейдерів. Це проміжне представлення не використовується безпосередньо графічними процесорами для рендерингу, але його можна скомпілювати у двійкові шейдери, які графічні процесори можуть зрозуміти. На відміну від скомпільованих шейдерів, SPIR-V є портативним між моделями графічних процесорів та версіями драйверів.

Цей об'єкт використовується RenderingDevice.

Властивості

PackedByteArray

bytecode_any_hit

PackedByteArray()

PackedByteArray

bytecode_closest_hit

PackedByteArray()

PackedByteArray

bytecode_compute

PackedByteArray()

PackedByteArray

bytecode_fragment

PackedByteArray()

PackedByteArray

bytecode_intersection

PackedByteArray()

PackedByteArray

bytecode_miss

PackedByteArray()

PackedByteArray

bytecode_raygen

PackedByteArray()

PackedByteArray

bytecode_tesselation_control

PackedByteArray()

PackedByteArray

bytecode_tesselation_evaluation

PackedByteArray()

PackedByteArray

bytecode_vertex

PackedByteArray()

String

compile_error_any_hit

""

String

compile_error_closest_hit

""

String

compile_error_compute

""

String

compile_error_fragment

""

String

compile_error_intersection

""

String

compile_error_miss

""

String

compile_error_raygen

""

String

compile_error_tesselation_control

""

String

compile_error_tesselation_evaluation

""

String

compile_error_vertex

""

Методи

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)


Описи властивостей

PackedByteArray bytecode_any_hit = PackedByteArray() 🔗

Байт-код SPIR-V для етапу шейдера «any hit».

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_closest_hit = PackedByteArray() 🔗

Байт-код SPIR-V для етапу шейдера з найближчим збігом.

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_compute = PackedByteArray() 🔗

СПИР-В байт-код для складання шейдера.

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() 🔗

СПИР-В байт-код для фрагмента шейдера.

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_intersection = PackedByteArray() 🔗

Байт-код SPIR-V для етапу шейдера перетину.

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_miss = PackedByteArray() 🔗

Байт-код SPIR-V для етапу шейдера промахів.

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_raygen = PackedByteArray() 🔗

Байт-код SPIR-V для етапу шейдера генерації променів.

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() 🔗

Код SPIR-V для фази керування відтінками.

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() 🔗

СПИР-В байтовий код для етапу оцінювання шейдера.

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() 🔗

Код SPIR-V для фази шейдера.

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_any_hit = "" 🔗

Повідомлення про помилку компіляції для етапу шейдера «any hit» (визначається компілятором SPIR-V та Godot). Якщо поле порожнє, це означає, що компіляція шейдера пройшла успішно.


String compile_error_closest_hit = "" 🔗

Повідомлення про помилку компіляції для етапу шейдера, що найбільше відповідає запиту (визначається компілятором SPIR-V та Godot). Якщо поле порожнє, це означає, що компіляція шейдера пройшла успішно.


String compile_error_compute = "" 🔗

Повідомлення про помилку збірника для складання етапу шейдера (постановки компілятора SPIR-V і Godot). При порожньому, відтінковому збірнику було успішним.


String compile_error_fragment = "" 🔗

Повідомлення про помилку збірника для фрагмента шейдера (заміщено компілятором SPIR-V і Godot). При порожньому, відтінковому збірнику було успішним.


String compile_error_intersection = "" 🔗

Повідомлення про помилку компіляції для етапу шейдера перетину (визначається компілятором SPIR-V та Godot). Якщо поле порожнє, це означає, що компіляція шейдера пройшла успішно.


String compile_error_miss = "" 🔗

Повідомлення про помилку компіляції для етапу шейдера «miss» (встановлюється компілятором SPIR-V та Godot). Якщо поле порожнє, це означає, що компіляція шейдера пройшла успішно.


String compile_error_raygen = "" 🔗

Повідомлення про помилку компіляції для етапу шейдера генерації променів (визначається компілятором SPIR-V та Godot). Якщо поле порожнє, це означає, що компіляція шейдера пройшла успішно.


String compile_error_tesselation_control = "" 🔗

Повідомлення про помилку збірника для фази керування відтінками (заданий компілятором SPIR-V і Godot). При порожньому, відтінковому збірнику було успішним.


String compile_error_tesselation_evaluation = "" 🔗

Повідомлення про помилку збірника для етапу оцінювання шейдера (заданий компілятором SPIR-V і Godot). При порожньому, відтінковому збірнику було успішним.


String compile_error_vertex = "" 🔗

Повідомлення про помилку збірника для фази шейдера вершини (зміщено компілятором SPIR-V і Godot). При порожньому, відтінковому збірнику було успішним.


Описи методів

PackedByteArray get_stage_bytecode(stage: ShaderStage) const 🔗

Еквівалентно отриманню одного з bytecode_compute, bytecode_fragment, bytecode_tesselation_control, bytecode_tesselation_evaluation, bytecode_vertex.


String get_stage_compile_error(stage: ShaderStage) const 🔗

Повертає повідомлення про помилку компіляції для заданого шейдера stage. Еквівалентно отриманню одного з 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) 🔗

Встановлює SPIR-V bytecode для заданого шейдера stage. Еквівалентно встановленню одного з bytecode_compute, bytecode_fragment, bytecode_tesselation_control, bytecode_tesselation_evaluation, bytecode_vertex.


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

Встановлює повідомлення про помилку компіляції для заданого шейдера stage на compile_error. Еквівалентно встановленню одного з compile_error_compute, compile_error_fragment, compile_error_tesselation_control, compile_error_tesselation_evaluation, compile_error_vertex.