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.

RenderingDeviceยถ

Inherits: Object

Abstraction for working with modern low-level graphics APIs.

Descriptionยถ

RenderingDevice is an abstraction for working with modern low-level graphics APIs such as Vulkan.

On startup, Godot creates a global RenderingDevice which can be retrieved using RenderingServer.get_rendering_device. This global RenderingDevice performs drawing to the screen.

Internally, RenderingDevice is used in Godot to provide support for several modern low-level graphics APIs while reducing the amount of code duplication required.

Local RenderingDevices: Using RenderingServer.create_local_rendering_device, you can create "secondary" rendering devices to perform drawing and GPU compute operations on separate threads.

Note: RenderingDevice is not available when running in headless mode or when using the Compatibility rendering method.

Methodsยถ

void

barrier ( BarrierMask from=7, BarrierMask to=7 )

Error

buffer_clear ( RID buffer, int offset, int size_bytes, BarrierMask post_barrier=7 )

PackedByteArray

buffer_get_data ( RID buffer, int offset_bytes=0, int size_bytes=0 )

Error

buffer_update ( RID buffer, int offset, int size_bytes, PackedByteArray data, BarrierMask post_barrier=7 )

void

capture_timestamp ( String name )

void

compute_list_add_barrier ( int compute_list )

int

compute_list_begin ( bool allow_draw_overlap=false )

void

compute_list_bind_compute_pipeline ( int compute_list, RID compute_pipeline )

void

compute_list_bind_uniform_set ( int compute_list, RID uniform_set, int set_index )

void

compute_list_dispatch ( int compute_list, int x_groups, int y_groups, int z_groups )

void

compute_list_end ( BarrierMask post_barrier=7 )

void

compute_list_set_push_constant ( int compute_list, PackedByteArray buffer, int size_bytes )

RID

compute_pipeline_create ( RID shader, RDPipelineSpecializationConstant[] specialization_constants=[] )

bool

compute_pipeline_is_valid ( RID compute_pieline )

RenderingDevice

create_local_device ( )

void

draw_command_begin_label ( String name, Color color )

void

draw_command_end_label ( )

void

draw_command_insert_label ( String name, Color color )

int

draw_list_begin ( RID framebuffer, InitialAction initial_color_action, FinalAction final_color_action, InitialAction initial_depth_action, FinalAction final_depth_action, PackedColorArray clear_color_values=PackedColorArray(), float clear_depth=1.0, int clear_stencil=0, Rect2 region=Rect2(0, 0, 0, 0), Array storage_textures=[] )

int

draw_list_begin_for_screen ( int screen=0, Color clear_color=Color(0, 0, 0, 1) )

PackedInt64Array

draw_list_begin_split ( RID framebuffer, int splits, InitialAction initial_color_action, FinalAction final_color_action, InitialAction initial_depth_action, FinalAction final_depth_action, PackedColorArray clear_color_values=PackedColorArray(), float clear_depth=1.0, int clear_stencil=0, Rect2 region=Rect2(0, 0, 0, 0), RID[] storage_textures=[] )

void

draw_list_bind_index_array ( int draw_list, RID index_array )

void

draw_list_bind_render_pipeline ( int draw_list, RID render_pipeline )

void

draw_list_bind_uniform_set ( int draw_list, RID uniform_set, int set_index )

void

draw_list_bind_vertex_array ( int draw_list, RID vertex_array )

void

draw_list_disable_scissor ( int draw_list )

void

draw_list_draw ( int draw_list, bool use_indices, int instances, int procedural_vertex_count=0 )

void

draw_list_enable_scissor ( int draw_list, Rect2 rect=Rect2(0, 0, 0, 0) )

void

draw_list_end ( BarrierMask post_barrier=7 )

void

draw_list_set_blend_constants ( int draw_list, Color color )

void

draw_list_set_push_constant ( int draw_list, PackedByteArray buffer, int size_bytes )

int

draw_list_switch_to_next_pass ( )

PackedInt64Array

draw_list_switch_to_next_pass_split ( int splits )

RID

framebuffer_create ( RID[] textures, int validate_with_format=-1, int view_count=1 )

RID

framebuffer_create_empty ( Vector2i size, TextureSamples samples=0, int validate_with_format=-1 )

RID

framebuffer_create_multipass ( RID[] textures, RDFramebufferPass[] passes, int validate_with_format=-1, int view_count=1 )

int

framebuffer_format_create ( RDAttachmentFormat[] attachments, int view_count=1 )

int

framebuffer_format_create_empty ( TextureSamples samples=0 )

int

framebuffer_format_create_multipass ( RDAttachmentFormat[] attachments, RDFramebufferPass[] passes, int view_count=1 )

TextureSamples

framebuffer_format_get_texture_samples ( int format, int render_pass=0 )

int

framebuffer_get_format ( RID framebuffer )

bool

framebuffer_is_valid ( RID framebuffer ) const

void

free_rid ( RID rid )

void

full_barrier ( )

int

get_captured_timestamp_cpu_time ( int index ) const

int

get_captured_timestamp_gpu_time ( int index ) const

String

get_captured_timestamp_name ( int index ) const

int

get_captured_timestamps_count ( ) const

int

get_captured_timestamps_frame ( ) const

String

get_device_name ( ) const

String

get_device_pipeline_cache_uuid ( ) const

String

get_device_vendor_name ( ) const

int

get_driver_resource ( DriverResource resource, RID rid, int index )

int

get_frame_delay ( ) const

int

get_memory_usage ( MemoryType type ) const

RID

index_array_create ( RID index_buffer, int index_offset, int index_count )

RID

index_buffer_create ( int size_indices, IndexBufferFormat format, PackedByteArray data=PackedByteArray(), bool use_restart_indices=false )

int

limit_get ( Limit limit ) const

RID

render_pipeline_create ( RID shader, int framebuffer_format, int vertex_format, RenderPrimitive primitive, RDPipelineRasterizationState rasterization_state, RDPipelineMultisampleState multisample_state, RDPipelineDepthStencilState stencil_state, RDPipelineColorBlendState color_blend_state, PipelineDynamicStateFlags dynamic_state_flags=0, int for_render_pass=0, RDPipelineSpecializationConstant[] specialization_constants=[] )

bool

render_pipeline_is_valid ( RID render_pipeline )

RID

sampler_create ( RDSamplerState state )

int

screen_get_framebuffer_format ( ) const

int

screen_get_height ( int screen=0 ) const

int

screen_get_width ( int screen=0 ) const

void

set_resource_name ( RID id, String name )

PackedByteArray

shader_compile_binary_from_spirv ( RDShaderSPIRV spirv_data, String name="" )

RDShaderSPIRV

shader_compile_spirv_from_source ( RDShaderSource shader_source, bool allow_cache=true )

RID

shader_create_from_bytecode ( PackedByteArray binary_data )

RID

shader_create_from_spirv ( RDShaderSPIRV spirv_data, String name="" )

int

shader_get_vertex_input_attribute_mask ( RID shader )

RID

storage_buffer_create ( int size_bytes, PackedByteArray data=PackedByteArray(), StorageBufferUsage usage=0 )

void

submit ( )

void

sync ( )

RID

texture_buffer_create ( int size_bytes, DataFormat format, PackedByteArray data=PackedByteArray() )

Error

texture_clear ( RID texture, Color color, int base_mipmap, int mipmap_count, int base_layer, int layer_count, BarrierMask post_barrier=7 )

Error

texture_copy ( RID from_texture, RID to_texture, Vector3 from_pos, Vector3 to_pos, Vector3 size, int src_mipmap, int dst_mipmap, int src_layer, int dst_layer, BarrierMask post_barrier=7 )

RID

texture_create ( RDTextureFormat format, RDTextureView view, PackedByteArray[] data=[] )

RID

texture_create_shared ( RDTextureView view, RID with_texture )

RID

texture_create_shared_from_slice ( RDTextureView view, RID with_texture, int layer, int mipmap, int mipmaps=1, TextureSliceType slice_type=0 )

PackedByteArray

texture_get_data ( RID texture, int layer )

bool

texture_is_format_supported_for_usage ( DataFormat format, TextureUsageBits usage_flags ) const

bool

texture_is_shared ( RID texture )

bool

texture_is_valid ( RID texture )

Error

texture_resolve_multisample ( RID from_texture, RID to_texture, BarrierMask post_barrier=7 )

Error

texture_update ( RID texture, int layer, PackedByteArray data, BarrierMask post_barrier=7 )

RID

uniform_buffer_create ( int size_bytes, PackedByteArray data=PackedByteArray() )

RID

uniform_set_create ( RDUniform[] uniforms, RID shader, int shader_set )

bool

uniform_set_is_valid ( RID uniform_set )

RID

vertex_array_create ( int vertex_count, int vertex_format, RID[] src_buffers, PackedInt64Array offsets=PackedInt64Array() )

RID

vertex_buffer_create ( int size_bytes, PackedByteArray data=PackedByteArray(), bool use_as_storage=false )

int

vertex_format_create ( RDVertexAttribute[] vertex_descriptions )


Enumerationsยถ

enum DeviceType:

DeviceType DEVICE_TYPE_OTHER = 0

Rendering device type does not match any of the other enum values or is unknown.

DeviceType DEVICE_TYPE_INTEGRATED_GPU = 1

Rendering device is an integrated GPU, which is typically (but not always) slower than dedicated GPUs (DEVICE_TYPE_DISCRETE_GPU). On Android and iOS, the rendering device type is always considered to be DEVICE_TYPE_INTEGRATED_GPU.

DeviceType DEVICE_TYPE_DISCRETE_GPU = 2

Rendering device is a dedicated GPU, which is typically (but not always) faster than integrated GPUs (DEVICE_TYPE_INTEGRATED_GPU).

DeviceType DEVICE_TYPE_VIRTUAL_GPU = 3

Rendering device is an emulated GPU in a virtual environment. This is typically much slower than the host GPU, which means the expected performance level on a dedicated GPU will be roughly equivalent to DEVICE_TYPE_INTEGRATED_GPU. Virtual machine GPU passthrough (such as VFIO) will not report the device type as DEVICE_TYPE_VIRTUAL_GPU. Instead, the host GPU's device type will be reported as if the GPU was not emulated.

DeviceType DEVICE_TYPE_CPU = 4

Rendering device is provided by software emulation (such as Lavapipe or SwiftShader). This is the slowest kind of rendering device available; it's typically much slower than DEVICE_TYPE_INTEGRATED_GPU.

DeviceType DEVICE_TYPE_MAX = 5

Represents the size of the DeviceType enum.


enum DriverResource:

DriverResource DRIVER_RESOURCE_VULKAN_DEVICE = 0

DriverResource DRIVER_RESOURCE_VULKAN_PHYSICAL_DEVICE = 1

DriverResource DRIVER_RESOURCE_VULKAN_INSTANCE = 2

DriverResource DRIVER_RESOURCE_VULKAN_QUEUE = 3

DriverResource DRIVER_RESOURCE_VULKAN_QUEUE_FAMILY_INDEX = 4

DriverResource DRIVER_RESOURCE_VULKAN_IMAGE = 5

DriverResource DRIVER_RESOURCE_VULKAN_IMAGE_VIEW = 6

DriverResource DRIVER_RESOURCE_VULKAN_IMAGE_NATIVE_TEXTURE_FORMAT = 7

DriverResource DRIVER_RESOURCE_VULKAN_SAMPLER = 8

DriverResource DRIVER_RESOURCE_VULKAN_DESCRIPTOR_SET = 9

DriverResource DRIVER_RESOURCE_VULKAN_BUFFER = 10

DriverResource DRIVER_RESOURCE_VULKAN_COMPUTE_PIPELINE = 11

DriverResource DRIVER_RESOURCE_VULKAN_RENDER_PIPELINE = 12


enum DataFormat:

DataFormat DATA_FORMAT_R4G4_UNORM_PACK8 = 0

DataFormat DATA_FORMAT_R4G4B4A4_UNORM_PACK16 = 1

DataFormat DATA_FORMAT_B4G4R4A4_UNORM_PACK16 = 2

DataFormat DATA_FORMAT_R5G6B5_UNORM_PACK16 = 3

DataFormat DATA_FORMAT_B5G6R5_UNORM_PACK16 = 4

DataFormat DATA_FORMAT_R5G5B5A1_UNORM_PACK16 = 5

DataFormat DATA_FORMAT_B5G5R5A1_UNORM_PACK16 = 6

DataFormat DATA_FORMAT_A1R5G5B5_UNORM_PACK16 = 7

DataFormat DATA_FORMAT_R8_UNORM = 8

DataFormat DATA_FORMAT_R8_SNORM = 9

DataFormat DATA_FORMAT_R8_USCALED = 10

DataFormat DATA_FORMAT_R8_SSCALED = 11

DataFormat DATA_FORMAT_R8_UINT = 12

DataFormat DATA_FORMAT_R8_SINT = 13

DataFormat DATA_FORMAT_R8_SRGB = 14

DataFormat DATA_FORMAT_R8G8_UNORM = 15

DataFormat DATA_FORMAT_R8G8_SNORM = 16

DataFormat DATA_FORMAT_R8G8_USCALED = 17

DataFormat DATA_FORMAT_R8G8_SSCALED = 18

DataFormat DATA_FORMAT_R8G8_UINT = 19

DataFormat DATA_FORMAT_R8G8_SINT = 20

DataFormat DATA_FORMAT_R8G8_SRGB = 21

DataFormat DATA_FORMAT_R8G8B8_UNORM = 22

DataFormat DATA_FORMAT_R8G8B8_SNORM = 23

DataFormat DATA_FORMAT_R8G8B8_USCALED = 24

DataFormat DATA_FORMAT_R8G8B8_SSCALED = 25

DataFormat DATA_FORMAT_R8G8B8_UINT = 26

DataFormat DATA_FORMAT_R8G8B8_SINT = 27

DataFormat DATA_FORMAT_R8G8B8_SRGB = 28

DataFormat DATA_FORMAT_B8G8R8_UNORM = 29

DataFormat DATA_FORMAT_B8G8R8_SNORM = 30

DataFormat DATA_FORMAT_B8G8R8_USCALED = 31

DataFormat DATA_FORMAT_B8G8R8_SSCALED = 32

DataFormat DATA_FORMAT_B8G8R8_UINT = 33

DataFormat DATA_FORMAT_B8G8R8_SINT = 34

DataFormat DATA_FORMAT_B8G8R8_SRGB = 35

DataFormat DATA_FORMAT_R8G8B8A8_UNORM = 36

DataFormat DATA_FORMAT_R8G8B8A8_SNORM = 37

DataFormat DATA_FORMAT_R8G8B8A8_USCALED = 38

DataFormat DATA_FORMAT_R8G8B8A8_SSCALED = 39

DataFormat DATA_FORMAT_R8G8B8A8_UINT = 40

DataFormat DATA_FORMAT_R8G8B8A8_SINT = 41

DataFormat DATA_FORMAT_R8G8B8A8_SRGB = 42

DataFormat DATA_FORMAT_B8G8R8A8_UNORM = 43

DataFormat DATA_FORMAT_B8G8R8A8_SNORM = 44

DataFormat DATA_FORMAT_B8G8R8A8_USCALED = 45

DataFormat DATA_FORMAT_B8G8R8A8_SSCALED = 46

DataFormat DATA_FORMAT_B8G8R8A8_UINT = 47

DataFormat DATA_FORMAT_B8G8R8A8_SINT = 48

DataFormat DATA_FORMAT_B8G8R8A8_SRGB = 49

DataFormat DATA_FORMAT_A8B8G8R8_UNORM_PACK32 = 50

DataFormat DATA_FORMAT_A8B8G8R8_SNORM_PACK32 = 51

DataFormat DATA_FORMAT_A8B8G8R8_USCALED_PACK32 = 52

DataFormat DATA_FORMAT_A8B8G8R8_SSCALED_PACK32 = 53

DataFormat DATA_FORMAT_A8B8G8R8_UINT_PACK32 = 54

DataFormat DATA_FORMAT_A8B8G8R8_SINT_PACK32 = 55

DataFormat DATA_FORMAT_A8B8G8R8_SRGB_PACK32 = 56

DataFormat DATA_FORMAT_A2R10G10B10_UNORM_PACK32 = 57

DataFormat DATA_FORMAT_A2R10G10B10_SNORM_PACK32 = 58

DataFormat DATA_FORMAT_A2R10G10B10_USCALED_PACK32 = 59

DataFormat DATA_FORMAT_A2R10G10B10_SSCALED_PACK32 = 60

DataFormat DATA_FORMAT_A2R10G10B10_UINT_PACK32 = 61

DataFormat DATA_FORMAT_A2R10G10B10_SINT_PACK32 = 62

DataFormat DATA_FORMAT_A2B10G10R10_UNORM_PACK32 = 63

DataFormat DATA_FORMAT_A2B10G10R10_SNORM_PACK32 = 64

DataFormat DATA_FORMAT_A2B10G10R10_USCALED_PACK32 = 65

DataFormat DATA_FORMAT_A2B10G10R10_SSCALED_PACK32 = 66

DataFormat DATA_FORMAT_A2B10G10R10_UINT_PACK32 = 67

DataFormat DATA_FORMAT_A2B10G10R10_SINT_PACK32 = 68

DataFormat DATA_FORMAT_R16_UNORM = 69

DataFormat DATA_FORMAT_R16_SNORM = 70

DataFormat DATA_FORMAT_R16_USCALED = 71

DataFormat DATA_FORMAT_R16_SSCALED = 72

DataFormat DATA_FORMAT_R16_UINT = 73

DataFormat DATA_FORMAT_R16_SINT = 74

DataFormat DATA_FORMAT_R16_SFLOAT = 75

DataFormat DATA_FORMAT_R16G16_UNORM = 76

DataFormat DATA_FORMAT_R16G16_SNORM = 77

DataFormat DATA_FORMAT_R16G16_USCALED = 78

DataFormat DATA_FORMAT_R16G16_SSCALED = 79

DataFormat DATA_FORMAT_R16G16_UINT = 80

DataFormat DATA_FORMAT_R16G16_SINT = 81

DataFormat DATA_FORMAT_R16G16_SFLOAT = 82

DataFormat DATA_FORMAT_R16G16B16_UNORM = 83

DataFormat DATA_FORMAT_R16G16B16_SNORM = 84

DataFormat DATA_FORMAT_R16G16B16_USCALED = 85

DataFormat DATA_FORMAT_R16G16B16_SSCALED = 86

DataFormat DATA_FORMAT_R16G16B16_UINT = 87

DataFormat DATA_FORMAT_R16G16B16_SINT = 88

DataFormat DATA_FORMAT_R16G16B16_SFLOAT = 89

DataFormat DATA_FORMAT_R16G16B16A16_UNORM = 90

DataFormat DATA_FORMAT_R16G16B16A16_SNORM = 91

DataFormat DATA_FORMAT_R16G16B16A16_USCALED = 92

DataFormat DATA_FORMAT_R16G16B16A16_SSCALED = 93

DataFormat DATA_FORMAT_R16G16B16A16_UINT = 94

DataFormat DATA_FORMAT_R16G16B16A16_SINT = 95

DataFormat DATA_FORMAT_R16G16B16A16_SFLOAT = 96

DataFormat DATA_FORMAT_R32_UINT = 97

DataFormat DATA_FORMAT_R32_SINT = 98

DataFormat DATA_FORMAT_R32_SFLOAT = 99

DataFormat DATA_FORMAT_R32G32_UINT = 100

DataFormat DATA_FORMAT_R32G32_SINT = 101

DataFormat DATA_FORMAT_R32G32_SFLOAT = 102

DataFormat DATA_FORMAT_R32G32B32_UINT = 103

DataFormat DATA_FORMAT_R32G32B32_SINT = 104

DataFormat DATA_FORMAT_R32G32B32_SFLOAT = 105

DataFormat DATA_FORMAT_R32G32B32A32_UINT = 106

DataFormat DATA_FORMAT_R32G32B32A32_SINT = 107

DataFormat DATA_FORMAT_R32G32B32A32_SFLOAT = 108

DataFormat DATA_FORMAT_R64_UINT = 109

DataFormat DATA_FORMAT_R64_SINT = 110

DataFormat DATA_FORMAT_R64_SFLOAT = 111

DataFormat DATA_FORMAT_R64G64_UINT = 112

DataFormat DATA_FORMAT_R64G64_SINT = 113

DataFormat DATA_FORMAT_R64G64_SFLOAT = 114

DataFormat DATA_FORMAT_R64G64B64_UINT = 115

DataFormat DATA_FORMAT_R64G64B64_SINT = 116

DataFormat DATA_FORMAT_R64G64B64_SFLOAT = 117

DataFormat DATA_FORMAT_R64G64B64A64_UINT = 118

DataFormat DATA_FORMAT_R64G64B64A64_SINT = 119

DataFormat DATA_FORMAT_R64G64B64A64_SFLOAT = 120

DataFormat DATA_FORMAT_B10G11R11_UFLOAT_PACK32 = 121

DataFormat DATA_FORMAT_E5B9G9R9_UFLOAT_PACK32 = 122

DataFormat DATA_FORMAT_D16_UNORM = 123

DataFormat DATA_FORMAT_X8_D24_UNORM_PACK32 = 124

DataFormat DATA_FORMAT_D32_SFLOAT = 125

DataFormat DATA_FORMAT_S8_UINT = 126

DataFormat DATA_FORMAT_D16_UNORM_S8_UINT = 127

DataFormat DATA_FORMAT_D24_UNORM_S8_UINT = 128

DataFormat DATA_FORMAT_D32_SFLOAT_S8_UINT = 129

DataFormat DATA_FORMAT_BC1_RGB_UNORM_BLOCK = 130

DataFormat DATA_FORMAT_BC1_RGB_SRGB_BLOCK = 131

DataFormat DATA_FORMAT_BC1_RGBA_UNORM_BLOCK = 132

DataFormat DATA_FORMAT_BC1_RGBA_SRGB_BLOCK = 133

DataFormat DATA_FORMAT_BC2_UNORM_BLOCK = 134

DataFormat DATA_FORMAT_BC2_SRGB_BLOCK = 135

DataFormat DATA_FORMAT_BC3_UNORM_BLOCK = 136

DataFormat DATA_FORMAT_BC3_SRGB_BLOCK = 137

DataFormat DATA_FORMAT_BC4_UNORM_BLOCK = 138

DataFormat DATA_FORMAT_BC4_SNORM_BLOCK = 139

DataFormat DATA_FORMAT_BC5_UNORM_BLOCK = 140

DataFormat DATA_FORMAT_BC5_SNORM_BLOCK = 141

DataFormat DATA_FORMAT_BC6H_UFLOAT_BLOCK = 142

DataFormat DATA_FORMAT_BC6H_SFLOAT_BLOCK = 143

DataFormat DATA_FORMAT_BC7_UNORM_BLOCK = 144

DataFormat DATA_FORMAT_BC7_SRGB_BLOCK = 145

DataFormat DATA_FORMAT_ETC2_R8G8B8_UNORM_BLOCK = 146

DataFormat DATA_FORMAT_ETC2_R8G8B8_SRGB_BLOCK = 147

DataFormat DATA_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK = 148

DataFormat DATA_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK = 149

DataFormat DATA_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK = 150

DataFormat DATA_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK = 151

DataFormat DATA_FORMAT_EAC_R11_UNORM_BLOCK = 152

DataFormat DATA_FORMAT_EAC_R11_SNORM_BLOCK = 153

DataFormat DATA_FORMAT_EAC_R11G11_UNORM_BLOCK = 154

DataFormat DATA_FORMAT_EAC_R11G11_SNORM_BLOCK = 155

DataFormat DATA_FORMAT_ASTC_4x4_UNORM_BLOCK = 156

DataFormat DATA_FORMAT_ASTC_4x4_SRGB_BLOCK = 157

DataFormat DATA_FORMAT_ASTC_5x4_UNORM_BLOCK = 158

DataFormat DATA_FORMAT_ASTC_5x4_SRGB_BLOCK = 159

DataFormat DATA_FORMAT_ASTC_5x5_UNORM_BLOCK = 160

DataFormat DATA_FORMAT_ASTC_5x5_SRGB_BLOCK = 161

DataFormat DATA_FORMAT_ASTC_6x5_UNORM_BLOCK = 162

DataFormat DATA_FORMAT_ASTC_6x5_SRGB_BLOCK = 163

DataFormat DATA_FORMAT_ASTC_6x6_UNORM_BLOCK = 164

DataFormat DATA_FORMAT_ASTC_6x6_SRGB_BLOCK = 165

DataFormat DATA_FORMAT_ASTC_8x5_UNORM_BLOCK = 166

DataFormat DATA_FORMAT_ASTC_8x5_SRGB_BLOCK = 167

DataFormat DATA_FORMAT_ASTC_8x6_UNORM_BLOCK = 168

DataFormat DATA_FORMAT_ASTC_8x6_SRGB_BLOCK = 169

DataFormat DATA_FORMAT_ASTC_8x8_UNORM_BLOCK = 170

DataFormat DATA_FORMAT_ASTC_8x8_SRGB_BLOCK = 171

DataFormat DATA_FORMAT_ASTC_10x5_UNORM_BLOCK = 172

DataFormat DATA_FORMAT_ASTC_10x5_SRGB_BLOCK = 173

DataFormat DATA_FORMAT_ASTC_10x6_UNORM_BLOCK = 174

DataFormat DATA_FORMAT_ASTC_10x6_SRGB_BLOCK = 175

DataFormat DATA_FORMAT_ASTC_10x8_UNORM_BLOCK = 176

DataFormat DATA_FORMAT_ASTC_10x8_SRGB_BLOCK = 177

DataFormat DATA_FORMAT_ASTC_10x10_UNORM_BLOCK = 178

DataFormat DATA_FORMAT_ASTC_10x10_SRGB_BLOCK = 179

DataFormat DATA_FORMAT_ASTC_12x10_UNORM_BLOCK = 180

DataFormat DATA_FORMAT_ASTC_12x10_SRGB_BLOCK = 181

DataFormat DATA_FORMAT_ASTC_12x12_UNORM_BLOCK = 182

DataFormat DATA_FORMAT_ASTC_12x12_SRGB_BLOCK = 183

DataFormat DATA_FORMAT_G8B8G8R8_422_UNORM = 184

DataFormat DATA_FORMAT_B8G8R8G8_422_UNORM = 185

DataFormat DATA_FORMAT_G8_B8_R8_3PLANE_420_UNORM = 186

DataFormat DATA_FORMAT_G8_B8R8_2PLANE_420_UNORM = 187

DataFormat DATA_FORMAT_G8_B8_R8_3PLANE_422_UNORM = 188

DataFormat DATA_FORMAT_G8_B8R8_2PLANE_422_UNORM = 189

DataFormat DATA_FORMAT_G8_B8_R8_3PLANE_444_UNORM = 190

DataFormat DATA_FORMAT_R10X6_UNORM_PACK16 = 191

DataFormat DATA_FORMAT_R10X6G10X6_UNORM_2PACK16 = 192

DataFormat DATA_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 = 193

DataFormat DATA_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 = 194

DataFormat DATA_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 = 195

DataFormat DATA_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 = 196

DataFormat DATA_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 = 197

DataFormat DATA_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 = 198

DataFormat DATA_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 = 199

DataFormat DATA_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 = 200

DataFormat DATA_FORMAT_R12X4_UNORM_PACK16 = 201

DataFormat DATA_FORMAT_R12X4G12X4_UNORM_2PACK16 = 202

DataFormat DATA_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 = 203

DataFormat DATA_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 = 204

DataFormat DATA_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 = 205

DataFormat DATA_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 = 206

DataFormat DATA_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 = 207

DataFormat DATA_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 = 208

DataFormat DATA_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 = 209

DataFormat DATA_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 = 210

DataFormat DATA_FORMAT_G16B16G16R16_422_UNORM = 211

DataFormat DATA_FORMAT_B16G16R16G16_422_UNORM = 212

DataFormat DATA_FORMAT_G16_B16_R16_3PLANE_420_UNORM = 213

DataFormat DATA_FORMAT_G16_B16R16_2PLANE_420_UNORM = 214

DataFormat DATA_FORMAT_G16_B16_R16_3PLANE_422_UNORM = 215

DataFormat DATA_FORMAT_G16_B16R16_2PLANE_422_UNORM = 216

DataFormat DATA_FORMAT_G16_B16_R16_3PLANE_444_UNORM = 217

DataFormat DATA_FORMAT_MAX = 218


flags BarrierMask:

BarrierMask BARRIER_MASK_RASTER = 1

BarrierMask BARRIER_MASK_COMPUTE = 2

BarrierMask BARRIER_MASK_TRANSFER = 4

BarrierMask BARRIER_MASK_ALL_BARRIERS = 7

BarrierMask BARRIER_MASK_NO_BARRIER = 8


enum TextureType:

TextureType TEXTURE_TYPE_1D = 0

1-dimensional texture.

TextureType TEXTURE_TYPE_2D = 1

2-dimensional texture.

TextureType TEXTURE_TYPE_3D = 2

3-dimensional texture.

TextureType TEXTURE_TYPE_CUBE = 3

Cubemap texture.

TextureType TEXTURE_TYPE_1D_ARRAY = 4

Array of 1-dimensional textures.

TextureType TEXTURE_TYPE_2D_ARRAY = 5

Array of 2-dimensional textures.

TextureType TEXTURE_TYPE_CUBE_ARRAY = 6

Array of Cubemap textures.

TextureType TEXTURE_TYPE_MAX = 7

Represents the size of the TextureType enum.


enum TextureSamples:

TextureSamples TEXTURE_SAMPLES_1 = 0

TextureSamples TEXTURE_SAMPLES_2 = 1

TextureSamples TEXTURE_SAMPLES_4 = 2

TextureSamples TEXTURE_SAMPLES_8 = 3

TextureSamples TEXTURE_SAMPLES_16 = 4

TextureSamples TEXTURE_SAMPLES_32 = 5

TextureSamples TEXTURE_SAMPLES_64 = 6

TextureSamples TEXTURE_SAMPLES_MAX = 7

Represents the size of the TextureSamples enum.


flags TextureUsageBits:

TextureUsageBits TEXTURE_USAGE_SAMPLING_BIT = 1

TextureUsageBits TEXTURE_USAGE_COLOR_ATTACHMENT_BIT = 2

TextureUsageBits TEXTURE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT = 4

TextureUsageBits TEXTURE_USAGE_STORAGE_BIT = 8

TextureUsageBits TEXTURE_USAGE_STORAGE_ATOMIC_BIT = 16

TextureUsageBits TEXTURE_USAGE_CPU_READ_BIT = 32

TextureUsageBits TEXTURE_USAGE_CAN_UPDATE_BIT = 64

TextureUsageBits TEXTURE_USAGE_CAN_COPY_FROM_BIT = 128

TextureUsageBits TEXTURE_USAGE_CAN_COPY_TO_BIT = 256

TextureUsageBits TEXTURE_USAGE_INPUT_ATTACHMENT_BIT = 512


enum TextureSwizzle:

TextureSwizzle TEXTURE_SWIZZLE_IDENTITY = 0

TextureSwizzle TEXTURE_SWIZZLE_ZERO = 1

TextureSwizzle TEXTURE_SWIZZLE_ONE = 2

TextureSwizzle TEXTURE_SWIZZLE_R = 3

TextureSwizzle TEXTURE_SWIZZLE_G = 4

TextureSwizzle TEXTURE_SWIZZLE_B = 5

TextureSwizzle TEXTURE_SWIZZLE_A = 6

TextureSwizzle TEXTURE_SWIZZLE_MAX = 7


enum TextureSliceType:

TextureSliceType TEXTURE_SLICE_2D = 0

TextureSliceType TEXTURE_SLICE_CUBEMAP = 1

TextureSliceType TEXTURE_SLICE_3D = 2


enum SamplerFilter:

SamplerFilter SAMPLER_FILTER_NEAREST = 0

Nearest-neighbor sampler filtering. Sampling at higher resolutions than the source will result in a pixelated look.

SamplerFilter SAMPLER_FILTER_LINEAR = 1

Bilinear sampler filtering. Sampling at higher resolutions than the source will result in a blurry look.


enum SamplerRepeatMode:

SamplerRepeatMode SAMPLER_REPEAT_MODE_REPEAT = 0

SamplerRepeatMode SAMPLER_REPEAT_MODE_MIRRORED_REPEAT = 1

SamplerRepeatMode SAMPLER_REPEAT_MODE_CLAMP_TO_EDGE = 2

SamplerRepeatMode SAMPLER_REPEAT_MODE_CLAMP_TO_BORDER = 3

SamplerRepeatMode SAMPLER_REPEAT_MODE_MIRROR_CLAMP_TO_EDGE = 4

SamplerRepeatMode SAMPLER_REPEAT_MODE_MAX = 5


enum SamplerBorderColor:

SamplerBorderColor SAMPLER_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK = 0

SamplerBorderColor SAMPLER_BORDER_COLOR_INT_TRANSPARENT_BLACK = 1

SamplerBorderColor SAMPLER_BORDER_COLOR_FLOAT_OPAQUE_BLACK = 2

SamplerBorderColor SAMPLER_BORDER_COLOR_INT_OPAQUE_BLACK = 3

SamplerBorderColor SAMPLER_BORDER_COLOR_FLOAT_OPAQUE_WHITE = 4

SamplerBorderColor SAMPLER_BORDER_COLOR_INT_OPAQUE_WHITE = 5

SamplerBorderColor SAMPLER_BORDER_COLOR_MAX = 6


enum VertexFrequency:

VertexFrequency VERTEX_FREQUENCY_VERTEX = 0

VertexFrequency VERTEX_FREQUENCY_INSTANCE = 1


enum IndexBufferFormat:

IndexBufferFormat INDEX_BUFFER_FORMAT_UINT16 = 0

IndexBufferFormat INDEX_BUFFER_FORMAT_UINT32 = 1


flags StorageBufferUsage:

StorageBufferUsage STORAGE_BUFFER_USAGE_DISPATCH_INDIRECT = 1


enum UniformType:

UniformType UNIFORM_TYPE_SAMPLER = 0

UniformType UNIFORM_TYPE_SAMPLER_WITH_TEXTURE = 1

UniformType UNIFORM_TYPE_TEXTURE = 2

UniformType UNIFORM_TYPE_IMAGE = 3

UniformType UNIFORM_TYPE_TEXTURE_BUFFER = 4

UniformType UNIFORM_TYPE_SAMPLER_WITH_TEXTURE_BUFFER = 5

UniformType UNIFORM_TYPE_IMAGE_BUFFER = 6

UniformType UNIFORM_TYPE_UNIFORM_BUFFER = 7

UniformType UNIFORM_TYPE_STORAGE_BUFFER = 8

UniformType UNIFORM_TYPE_INPUT_ATTACHMENT = 9

UniformType UNIFORM_TYPE_MAX = 10


enum RenderPrimitive:

RenderPrimitive RENDER_PRIMITIVE_POINTS = 0

Point rendering primitive (with constant size, regardless of distance from camera).

RenderPrimitive RENDER_PRIMITIVE_LINES = 1

Line rendering primitive.

RenderPrimitive RENDER_PRIMITIVE_LINES_WITH_ADJACENCY = 2

RenderPrimitive RENDER_PRIMITIVE_LINESTRIPS = 3

RenderPrimitive RENDER_PRIMITIVE_LINESTRIPS_WITH_ADJACENCY = 4

RenderPrimitive RENDER_PRIMITIVE_TRIANGLES = 5

RenderPrimitive RENDER_PRIMITIVE_TRIANGLES_WITH_ADJACENCY = 6

RenderPrimitive RENDER_PRIMITIVE_TRIANGLE_STRIPS = 7

RenderPrimitive RENDER_PRIMITIVE_TRIANGLE_STRIPS_WITH_AJACENCY = 8

RenderPrimitive RENDER_PRIMITIVE_TRIANGLE_STRIPS_WITH_RESTART_INDEX = 9

RenderPrimitive RENDER_PRIMITIVE_TESSELATION_PATCH = 10

RenderPrimitive RENDER_PRIMITIVE_MAX = 11


enum PolygonCullMode:

PolygonCullMode POLYGON_CULL_DISABLED = 0

PolygonCullMode POLYGON_CULL_FRONT = 1

PolygonCullMode POLYGON_CULL_BACK = 2


enum PolygonFrontFace:

PolygonFrontFace POLYGON_FRONT_FACE_CLOCKWISE = 0

PolygonFrontFace POLYGON_FRONT_FACE_COUNTER_CLOCKWISE = 1


enum StencilOperation:

StencilOperation STENCIL_OP_KEEP = 0

StencilOperation STENCIL_OP_ZERO = 1

StencilOperation STENCIL_OP_REPLACE = 2

StencilOperation STENCIL_OP_INCREMENT_AND_CLAMP = 3

StencilOperation STENCIL_OP_DECREMENT_AND_CLAMP = 4

StencilOperation STENCIL_OP_INVERT = 5

StencilOperation STENCIL_OP_INCREMENT_AND_WRAP = 6

StencilOperation STENCIL_OP_DECREMENT_AND_WRAP = 7

StencilOperation STENCIL_OP_MAX = 8


enum CompareOperator:

CompareOperator COMPARE_OP_NEVER = 0

CompareOperator COMPARE_OP_LESS = 1

CompareOperator COMPARE_OP_EQUAL = 2

CompareOperator COMPARE_OP_LESS_OR_EQUAL = 3

CompareOperator COMPARE_OP_GREATER = 4

CompareOperator COMPARE_OP_NOT_EQUAL = 5

CompareOperator COMPARE_OP_GREATER_OR_EQUAL = 6

CompareOperator COMPARE_OP_ALWAYS = 7

CompareOperator COMPARE_OP_MAX = 8


enum LogicOperation:

LogicOperation LOGIC_OP_CLEAR = 0

LogicOperation LOGIC_OP_AND = 1

LogicOperation LOGIC_OP_AND_REVERSE = 2

LogicOperation LOGIC_OP_COPY = 3

LogicOperation LOGIC_OP_AND_INVERTED = 4

LogicOperation LOGIC_OP_NO_OP = 5

LogicOperation LOGIC_OP_XOR = 6

Exclusive or (XOR) logic operation.

LogicOperation LOGIC_OP_OR = 7

LogicOperation LOGIC_OP_NOR = 8

LogicOperation LOGIC_OP_EQUIVALENT = 9

LogicOperation LOGIC_OP_INVERT = 10

LogicOperation LOGIC_OP_OR_REVERSE = 11

LogicOperation LOGIC_OP_COPY_INVERTED = 12

LogicOperation LOGIC_OP_OR_INVERTED = 13

LogicOperation LOGIC_OP_NAND = 14

LogicOperation LOGIC_OP_SET = 15

LogicOperation LOGIC_OP_MAX = 16


enum BlendFactor:

BlendFactor BLEND_FACTOR_ZERO = 0

BlendFactor BLEND_FACTOR_ONE = 1

BlendFactor BLEND_FACTOR_SRC_COLOR = 2

BlendFactor BLEND_FACTOR_ONE_MINUS_SRC_COLOR = 3

BlendFactor BLEND_FACTOR_DST_COLOR = 4

BlendFactor BLEND_FACTOR_ONE_MINUS_DST_COLOR = 5

BlendFactor BLEND_FACTOR_SRC_ALPHA = 6

BlendFactor BLEND_FACTOR_ONE_MINUS_SRC_ALPHA = 7

BlendFactor BLEND_FACTOR_DST_ALPHA = 8

BlendFactor BLEND_FACTOR_ONE_MINUS_DST_ALPHA = 9

BlendFactor BLEND_FACTOR_CONSTANT_COLOR = 10

BlendFactor BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR = 11

BlendFactor BLEND_FACTOR_CONSTANT_ALPHA = 12

BlendFactor BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA = 13

BlendFactor BLEND_FACTOR_SRC_ALPHA_SATURATE = 14

BlendFactor BLEND_FACTOR_SRC1_COLOR = 15

BlendFactor BLEND_FACTOR_ONE_MINUS_SRC1_COLOR = 16

BlendFactor BLEND_FACTOR_SRC1_ALPHA = 17

BlendFactor BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA = 18

BlendFactor BLEND_FACTOR_MAX = 19


enum BlendOperation:

BlendOperation BLEND_OP_ADD = 0

Additive blending operation (source + destination).

BlendOperation BLEND_OP_SUBTRACT = 1

Subtractive blending operation (source - destination).

BlendOperation BLEND_OP_REVERSE_SUBTRACT = 2

Reverse subtractive blending operation (destination - source).

BlendOperation BLEND_OP_MINIMUM = 3

Minimum blending operation (keep the lowest value of the two).

BlendOperation BLEND_OP_MAXIMUM = 4

Maximum blending operation (keep the highest value of the two).

BlendOperation BLEND_OP_MAX = 5

Represents the size of the BlendOperation enum.


flags PipelineDynamicStateFlags:

PipelineDynamicStateFlags DYNAMIC_STATE_LINE_WIDTH = 1

PipelineDynamicStateFlags DYNAMIC_STATE_DEPTH_BIAS = 2

PipelineDynamicStateFlags DYNAMIC_STATE_BLEND_CONSTANTS = 4

PipelineDynamicStateFlags DYNAMIC_STATE_DEPTH_BOUNDS = 8

PipelineDynamicStateFlags DYNAMIC_STATE_STENCIL_COMPARE_MASK = 16

PipelineDynamicStateFlags DYNAMIC_STATE_STENCIL_WRITE_MASK = 32

PipelineDynamicStateFlags DYNAMIC_STATE_STENCIL_REFERENCE = 64


enum InitialAction:

InitialAction INITIAL_ACTION_CLEAR = 0

InitialAction INITIAL_ACTION_CLEAR_REGION = 1

InitialAction INITIAL_ACTION_CLEAR_REGION_CONTINUE = 2

InitialAction INITIAL_ACTION_KEEP = 3

InitialAction INITIAL_ACTION_DROP = 4

InitialAction INITIAL_ACTION_CONTINUE = 5

InitialAction INITIAL_ACTION_MAX = 6


enum FinalAction:

FinalAction FINAL_ACTION_READ = 0

FinalAction FINAL_ACTION_DISCARD = 1

FinalAction FINAL_ACTION_CONTINUE = 2

FinalAction FINAL_ACTION_MAX = 3


enum ShaderStage:

ShaderStage SHADER_STAGE_VERTEX = 0

ShaderStage SHADER_STAGE_FRAGMENT = 1

ShaderStage SHADER_STAGE_TESSELATION_CONTROL = 2

ShaderStage SHADER_STAGE_TESSELATION_EVALUATION = 3

ShaderStage SHADER_STAGE_COMPUTE = 4

ShaderStage SHADER_STAGE_MAX = 5

ShaderStage SHADER_STAGE_VERTEX_BIT = 1

ShaderStage SHADER_STAGE_FRAGMENT_BIT = 2

ShaderStage SHADER_STAGE_TESSELATION_CONTROL_BIT = 4

ShaderStage SHADER_STAGE_TESSELATION_EVALUATION_BIT = 8

ShaderStage SHADER_STAGE_COMPUTE_BIT = 16


enum ShaderLanguage:

ShaderLanguage SHADER_LANGUAGE_GLSL = 0

ShaderLanguage SHADER_LANGUAGE_HLSL = 1


enum PipelineSpecializationConstantType:

PipelineSpecializationConstantType PIPELINE_SPECIALIZATION_CONSTANT_TYPE_BOOL = 0

PipelineSpecializationConstantType PIPELINE_SPECIALIZATION_CONSTANT_TYPE_INT = 1

PipelineSpecializationConstantType PIPELINE_SPECIALIZATION_CONSTANT_TYPE_FLOAT = 2


enum Limit:

Limit LIMIT_MAX_BOUND_UNIFORM_SETS = 0

Limit LIMIT_MAX_FRAMEBUFFER_COLOR_ATTACHMENTS = 1

Limit LIMIT_MAX_TEXTURES_PER_UNIFORM_SET = 2

Limit LIMIT_MAX_SAMPLERS_PER_UNIFORM_SET = 3

Limit LIMIT_MAX_STORAGE_BUFFERS_PER_UNIFORM_SET = 4

Limit LIMIT_MAX_STORAGE_IMAGES_PER_UNIFORM_SET = 5

Limit LIMIT_MAX_UNIFORM_BUFFERS_PER_UNIFORM_SET = 6

Limit LIMIT_MAX_DRAW_INDEXED_INDEX = 7

Limit LIMIT_MAX_FRAMEBUFFER_HEIGHT = 8

Limit LIMIT_MAX_FRAMEBUFFER_WIDTH = 9

Limit LIMIT_MAX_TEXTURE_ARRAY_LAYERS = 10

Limit LIMIT_MAX_TEXTURE_SIZE_1D = 11

Maximum supported 1-dimensional texture size (in pixels on a single axis).

Limit LIMIT_MAX_TEXTURE_SIZE_2D = 12

Maximum supported 2-dimensional texture size (in pixels on a single axis).

Limit LIMIT_MAX_TEXTURE_SIZE_3D = 13

Maximum supported 3-dimensional texture size (in pixels on a single axis).

Limit LIMIT_MAX_TEXTURE_SIZE_CUBE = 14

Maximum supported cubemap texture size (in pixels on a single axis of a single face).

Limit LIMIT_MAX_TEXTURES_PER_SHADER_STAGE = 15

Limit LIMIT_MAX_SAMPLERS_PER_SHADER_STAGE = 16

Limit LIMIT_MAX_STORAGE_BUFFERS_PER_SHADER_STAGE = 17

Limit LIMIT_MAX_STORAGE_IMAGES_PER_SHADER_STAGE = 18

Limit LIMIT_MAX_UNIFORM_BUFFERS_PER_SHADER_STAGE = 19

Limit LIMIT_MAX_PUSH_CONSTANT_SIZE = 20

Limit LIMIT_MAX_UNIFORM_BUFFER_SIZE = 21

Limit LIMIT_MAX_VERTEX_INPUT_ATTRIBUTE_OFFSET = 22

Limit LIMIT_MAX_VERTEX_INPUT_ATTRIBUTES = 23

Limit LIMIT_MAX_VERTEX_INPUT_BINDINGS = 24

Limit LIMIT_MAX_VERTEX_INPUT_BINDING_STRIDE = 25

Limit LIMIT_MIN_UNIFORM_BUFFER_OFFSET_ALIGNMENT = 26

Limit LIMIT_MAX_COMPUTE_SHARED_MEMORY_SIZE = 27

Limit LIMIT_MAX_COMPUTE_WORKGROUP_COUNT_X = 28

Limit LIMIT_MAX_COMPUTE_WORKGROUP_COUNT_Y = 29

Limit LIMIT_MAX_COMPUTE_WORKGROUP_COUNT_Z = 30

Limit LIMIT_MAX_COMPUTE_WORKGROUP_INVOCATIONS = 31

Limit LIMIT_MAX_COMPUTE_WORKGROUP_SIZE_X = 32

Limit LIMIT_MAX_COMPUTE_WORKGROUP_SIZE_Y = 33

Limit LIMIT_MAX_COMPUTE_WORKGROUP_SIZE_Z = 34

Limit LIMIT_MAX_VIEWPORT_DIMENSIONS_X = 35

Limit LIMIT_MAX_VIEWPORT_DIMENSIONS_Y = 36


enum MemoryType:

MemoryType MEMORY_TEXTURES = 0

Memory taken by textures.

MemoryType MEMORY_BUFFERS = 1

Memory taken by buffers.

MemoryType MEMORY_TOTAL = 2

Total memory taken. This is greater than the sum of MEMORY_TEXTURES and MEMORY_BUFFERS, as it also includes miscellaneous memory usage.


Constantsยถ

INVALID_ID = -1

Returned by functions that return an ID if a value is invalid.

INVALID_FORMAT_ID = -1

Returned by functions that return a format ID if a value is invalid.


Method Descriptionsยถ

void barrier ( BarrierMask from=7, BarrierMask to=7 )

There is currently no description for this method. Please help us by contributing one!


Error buffer_clear ( RID buffer, int offset, int size_bytes, BarrierMask post_barrier=7 )

There is currently no description for this method. Please help us by contributing one!


PackedByteArray buffer_get_data ( RID buffer, int offset_bytes=0, int size_bytes=0 )

Returns a copy of the data of the specified buffer, optionally offset_bytes and size_bytes can be set to copy only a portion of the buffer.


Error buffer_update ( RID buffer, int offset, int size_bytes, PackedByteArray data, BarrierMask post_barrier=7 )

There is currently no description for this method. Please help us by contributing one!


void capture_timestamp ( String name )

There is currently no description for this method. Please help us by contributing one!


void compute_list_add_barrier ( int compute_list )

There is currently no description for this method. Please help us by contributing one!


int compute_list_begin ( bool allow_draw_overlap=false )

There is currently no description for this method. Please help us by contributing one!


void compute_list_bind_compute_pipeline ( int compute_list, RID compute_pipeline )

There is currently no description for this method. Please help us by contributing one!


void compute_list_bind_uniform_set ( int compute_list, RID uniform_set, int set_index )

There is currently no description for this method. Please help us by contributing one!


void compute_list_dispatch ( int compute_list, int x_groups, int y_groups, int z_groups )

There is currently no description for this method. Please help us by contributing one!


void compute_list_end ( BarrierMask post_barrier=7 )

There is currently no description for this method. Please help us by contributing one!


void compute_list_set_push_constant ( int compute_list, PackedByteArray buffer, int size_bytes )

There is currently no description for this method. Please help us by contributing one!


RID compute_pipeline_create ( RID shader, RDPipelineSpecializationConstant[] specialization_constants=[] )

There is currently no description for this method. Please help us by contributing one!


bool compute_pipeline_is_valid ( RID compute_pieline )

There is currently no description for this method. Please help us by contributing one!


RenderingDevice create_local_device ( )

There is currently no description for this method. Please help us by contributing one!


void draw_command_begin_label ( String name, Color color )

There is currently no description for this method. Please help us by contributing one!


void draw_command_end_label ( )

There is currently no description for this method. Please help us by contributing one!


void draw_command_insert_label ( String name, Color color )

There is currently no description for this method. Please help us by contributing one!


int draw_list_begin ( RID framebuffer, InitialAction initial_color_action, FinalAction final_color_action, InitialAction initial_depth_action, FinalAction final_depth_action, PackedColorArray clear_color_values=PackedColorArray(), float clear_depth=1.0, int clear_stencil=0, Rect2 region=Rect2(0, 0, 0, 0), Array storage_textures=[] )

There is currently no description for this method. Please help us by contributing one!


int draw_list_begin_for_screen ( int screen=0, Color clear_color=Color(0, 0, 0, 1) )

There is currently no description for this method. Please help us by contributing one!


PackedInt64Array draw_list_begin_split ( RID framebuffer, int splits, InitialAction initial_color_action, FinalAction final_color_action, InitialAction initial_depth_action, FinalAction final_depth_action, PackedColorArray clear_color_values=PackedColorArray(), float clear_depth=1.0, int clear_stencil=0, Rect2 region=Rect2(0, 0, 0, 0), RID[] storage_textures=[] )

There is currently no description for this method. Please help us by contributing one!


void draw_list_bind_index_array ( int draw_list, RID index_array )

There is currently no description for this method. Please help us by contributing one!


void draw_list_bind_render_pipeline ( int draw_list, RID render_pipeline )

There is currently no description for this method. Please help us by contributing one!


void draw_list_bind_uniform_set ( int draw_list, RID uniform_set, int set_index )

There is currently no description for this method. Please help us by contributing one!


void draw_list_bind_vertex_array ( int draw_list, RID vertex_array )

There is currently no description for this method. Please help us by contributing one!


void draw_list_disable_scissor ( int draw_list )

There is currently no description for this method. Please help us by contributing one!


void draw_list_draw ( int draw_list, bool use_indices, int instances, int procedural_vertex_count=0 )

There is currently no description for this method. Please help us by contributing one!


void draw_list_enable_scissor ( int draw_list, Rect2 rect=Rect2(0, 0, 0, 0) )

There is currently no description for this method. Please help us by contributing one!


void draw_list_end ( BarrierMask post_barrier=7 )

There is currently no description for this method. Please help us by contributing one!


void draw_list_set_blend_constants ( int draw_list, Color color )

Sets blend constants for draw list, blend constants are used only if the graphics pipeline is created with DYNAMIC_STATE_BLEND_CONSTANTS flag set.


void draw_list_set_push_constant ( int draw_list, PackedByteArray buffer, int size_bytes )

There is currently no description for this method. Please help us by contributing one!


int draw_list_switch_to_next_pass ( )

There is currently no description for this method. Please help us by contributing one!


PackedInt64Array draw_list_switch_to_next_pass_split ( int splits )

There is currently no description for this method. Please help us by contributing one!


RID framebuffer_create ( RID[] textures, int validate_with_format=-1, int view_count=1 )

There is currently no description for this method. Please help us by contributing one!


RID framebuffer_create_empty ( Vector2i size, TextureSamples samples=0, int validate_with_format=-1 )

There is currently no description for this method. Please help us by contributing one!


RID framebuffer_create_multipass ( RID[] textures, RDFramebufferPass[] passes, int validate_with_format=-1, int view_count=1 )

There is currently no description for this method. Please help us by contributing one!


int framebuffer_format_create ( RDAttachmentFormat[] attachments, int view_count=1 )

There is currently no description for this method. Please help us by contributing one!


int framebuffer_format_create_empty ( TextureSamples samples=0 )

There is currently no description for this method. Please help us by contributing one!


int framebuffer_format_create_multipass ( RDAttachmentFormat[] attachments, RDFramebufferPass[] passes, int view_count=1 )

There is currently no description for this method. Please help us by contributing one!


TextureSamples framebuffer_format_get_texture_samples ( int format, int render_pass=0 )

There is currently no description for this method. Please help us by contributing one!


int framebuffer_get_format ( RID framebuffer )

There is currently no description for this method. Please help us by contributing one!


bool framebuffer_is_valid ( RID framebuffer ) const

There is currently no description for this method. Please help us by contributing one!


void free_rid ( RID rid )

There is currently no description for this method. Please help us by contributing one!


void full_barrier ( )

There is currently no description for this method. Please help us by contributing one!


int get_captured_timestamp_cpu_time ( int index ) const

There is currently no description for this method. Please help us by contributing one!


int get_captured_timestamp_gpu_time ( int index ) const

There is currently no description for this method. Please help us by contributing one!


String get_captured_timestamp_name ( int index ) const

There is currently no description for this method. Please help us by contributing one!


int get_captured_timestamps_count ( ) const

There is currently no description for this method. Please help us by contributing one!


int get_captured_timestamps_frame ( ) const

There is currently no description for this method. Please help us by contributing one!


String get_device_name ( ) const

There is currently no description for this method. Please help us by contributing one!


String get_device_pipeline_cache_uuid ( ) const

There is currently no description for this method. Please help us by contributing one!


String get_device_vendor_name ( ) const

There is currently no description for this method. Please help us by contributing one!


int get_driver_resource ( DriverResource resource, RID rid, int index )

There is currently no description for this method. Please help us by contributing one!


int get_frame_delay ( ) const

There is currently no description for this method. Please help us by contributing one!


int get_memory_usage ( MemoryType type ) const

There is currently no description for this method. Please help us by contributing one!


RID index_array_create ( RID index_buffer, int index_offset, int index_count )

There is currently no description for this method. Please help us by contributing one!


RID index_buffer_create ( int size_indices, IndexBufferFormat format, PackedByteArray data=PackedByteArray(), bool use_restart_indices=false )

There is currently no description for this method. Please help us by contributing one!


int limit_get ( Limit limit ) const

There is currently no description for this method. Please help us by contributing one!


RID render_pipeline_create ( RID shader, int framebuffer_format, int vertex_format, RenderPrimitive primitive, RDPipelineRasterizationState rasterization_state, RDPipelineMultisampleState multisample_state, RDPipelineDepthStencilState stencil_state, RDPipelineColorBlendState color_blend_state, PipelineDynamicStateFlags dynamic_state_flags=0, int for_render_pass=0, RDPipelineSpecializationConstant[] specialization_constants=[] )

There is currently no description for this method. Please help us by contributing one!


bool render_pipeline_is_valid ( RID render_pipeline )

There is currently no description for this method. Please help us by contributing one!


RID sampler_create ( RDSamplerState state )

There is currently no description for this method. Please help us by contributing one!


int screen_get_framebuffer_format ( ) const

There is currently no description for this method. Please help us by contributing one!


int screen_get_height ( int screen=0 ) const

There is currently no description for this method. Please help us by contributing one!


int screen_get_width ( int screen=0 ) const

There is currently no description for this method. Please help us by contributing one!


void set_resource_name ( RID id, String name )

There is currently no description for this method. Please help us by contributing one!


PackedByteArray shader_compile_binary_from_spirv ( RDShaderSPIRV spirv_data, String name="" )

There is currently no description for this method. Please help us by contributing one!


RDShaderSPIRV shader_compile_spirv_from_source ( RDShaderSource shader_source, bool allow_cache=true )

There is currently no description for this method. Please help us by contributing one!


RID shader_create_from_bytecode ( PackedByteArray binary_data )

There is currently no description for this method. Please help us by contributing one!


RID shader_create_from_spirv ( RDShaderSPIRV spirv_data, String name="" )

There is currently no description for this method. Please help us by contributing one!


int shader_get_vertex_input_attribute_mask ( RID shader )

There is currently no description for this method. Please help us by contributing one!


RID storage_buffer_create ( int size_bytes, PackedByteArray data=PackedByteArray(), StorageBufferUsage usage=0 )

There is currently no description for this method. Please help us by contributing one!


void submit ( )

There is currently no description for this method. Please help us by contributing one!


void sync ( )

There is currently no description for this method. Please help us by contributing one!


RID texture_buffer_create ( int size_bytes, DataFormat format, PackedByteArray data=PackedByteArray() )

There is currently no description for this method. Please help us by contributing one!


Error texture_clear ( RID texture, Color color, int base_mipmap, int mipmap_count, int base_layer, int layer_count, BarrierMask post_barrier=7 )

There is currently no description for this method. Please help us by contributing one!


Error texture_copy ( RID from_texture, RID to_texture, Vector3 from_pos, Vector3 to_pos, Vector3 size, int src_mipmap, int dst_mipmap, int src_layer, int dst_layer, BarrierMask post_barrier=7 )

There is currently no description for this method. Please help us by contributing one!


RID texture_create ( RDTextureFormat format, RDTextureView view, PackedByteArray[] data=[] )

There is currently no description for this method. Please help us by contributing one!


RID texture_create_shared ( RDTextureView view, RID with_texture )

There is currently no description for this method. Please help us by contributing one!


RID texture_create_shared_from_slice ( RDTextureView view, RID with_texture, int layer, int mipmap, int mipmaps=1, TextureSliceType slice_type=0 )

There is currently no description for this method. Please help us by contributing one!


PackedByteArray texture_get_data ( RID texture, int layer )

There is currently no description for this method. Please help us by contributing one!


bool texture_is_format_supported_for_usage ( DataFormat format, TextureUsageBits usage_flags ) const

There is currently no description for this method. Please help us by contributing one!


bool texture_is_shared ( RID texture )

There is currently no description for this method. Please help us by contributing one!


bool texture_is_valid ( RID texture )

There is currently no description for this method. Please help us by contributing one!


Error texture_resolve_multisample ( RID from_texture, RID to_texture, BarrierMask post_barrier=7 )

There is currently no description for this method. Please help us by contributing one!


Error texture_update ( RID texture, int layer, PackedByteArray data, BarrierMask post_barrier=7 )

There is currently no description for this method. Please help us by contributing one!


RID uniform_buffer_create ( int size_bytes, PackedByteArray data=PackedByteArray() )

There is currently no description for this method. Please help us by contributing one!


RID uniform_set_create ( RDUniform[] uniforms, RID shader, int shader_set )

There is currently no description for this method. Please help us by contributing one!


bool uniform_set_is_valid ( RID uniform_set )

There is currently no description for this method. Please help us by contributing one!


RID vertex_array_create ( int vertex_count, int vertex_format, RID[] src_buffers, PackedInt64Array offsets=PackedInt64Array() )

Creates a vertex array based on the specified buffers. Optionally, offsets (in bytes) may be defined for each buffer.


RID vertex_buffer_create ( int size_bytes, PackedByteArray data=PackedByteArray(), bool use_as_storage=false )

There is currently no description for this method. Please help us by contributing one!


int vertex_format_create ( RDVertexAttribute[] vertex_descriptions )

There is currently no description for this method. Please help us by contributing one!