Struct RenderingDevice
#[repr(C)]pub struct RenderingDevice { /* private fields */ }
Expand description
Godot class RenderingDevice.
Inherits Object
.
Related symbols:
rendering_device
: sidecar module with related enum/flag typesIRenderingDevice
: virtual methods
See also Godot docs for RenderingDevice
.
§Not instantiable
This class cannot be constructed. Obtain Gd<RenderingDevice>
instances via Godot APIs.
Implementations§
§impl RenderingDevice
impl RenderingDevice
pub const INVALID_ID: i32 = -1i32
pub const INVALID_FORMAT_ID: i32 = -1i32
pub fn texture_create(
&mut self,
format: impl AsObjectArg<RdTextureFormat>,
view: impl AsObjectArg<RdTextureView>,
) -> Rid
pub fn texture_create( &mut self, format: impl AsObjectArg<RdTextureFormat>, view: impl AsObjectArg<RdTextureView>, ) -> Rid
To set the default parameters, use Self::texture_create_ex
and its builder methods. See the book for detailed usage instructions.
pub fn texture_create_ex<'a>( &'a mut self, format: impl AsObjectArg<RdTextureFormat>, view: impl AsObjectArg<RdTextureView>, ) -> ExTextureCreate<'a>
To set the default parameters, use Self::texture_create_shared_from_slice_ex
and its builder methods. See the book for detailed usage instructions.
pub fn texture_create_from_extension( &mut self, type_: TextureType, format: DataFormat, samples: TextureSamples, usage_flags: TextureUsageBits, image: u64, width: u64, height: u64, depth: u64, layers: u64, ) -> Rid
pub fn texture_update( &mut self, texture: Rid, layer: u32, data: &PackedByteArray, ) -> Error
pub fn texture_get_data(&mut self, texture: Rid, layer: u32) -> PackedByteArray
pub fn texture_is_format_supported_for_usage( &self, format: DataFormat, usage_flags: TextureUsageBits, ) -> bool
pub fn texture_is_valid(&mut self, texture: Rid) -> bool
pub fn texture_copy( &mut self, from_texture: Rid, to_texture: Rid, from_pos: Vector3, to_pos: Vector3, size: Vector3, src_mipmap: u32, dst_mipmap: u32, src_layer: u32, dst_layer: u32, ) -> Error
pub fn texture_clear( &mut self, texture: Rid, color: Color, base_mipmap: u32, mipmap_count: u32, base_layer: u32, layer_count: u32, ) -> Error
pub fn texture_resolve_multisample( &mut self, from_texture: Rid, to_texture: Rid, ) -> Error
pub fn texture_get_format( &mut self, texture: Rid, ) -> Option<Gd<RdTextureFormat>>
pub fn texture_get_native_handle(&mut self, texture: Rid) -> u64
pub fn framebuffer_format_create<'a>(
&mut self,
attachments: &'a Array<Gd<RdAttachmentFormat>>,
) -> i64
pub fn framebuffer_format_create<'a>( &mut self, attachments: &'a Array<Gd<RdAttachmentFormat>>, ) -> i64
To set the default parameters, use Self::framebuffer_format_create_ex
and its builder methods. See the book for detailed usage instructions.
pub fn framebuffer_format_create_ex<'a>( &'a mut self, attachments: &'a Array<Gd<RdAttachmentFormat>>, ) -> ExFramebufferFormatCreate<'a>
pub fn framebuffer_format_create_multipass<'a>(
&mut self,
attachments: &'a Array<Gd<RdAttachmentFormat>>,
passes: &'a Array<Gd<RdFramebufferPass>>,
) -> i64
pub fn framebuffer_format_create_multipass<'a>( &mut self, attachments: &'a Array<Gd<RdAttachmentFormat>>, passes: &'a Array<Gd<RdFramebufferPass>>, ) -> i64
To set the default parameters, use Self::framebuffer_format_create_multipass_ex
and its builder methods. See the book for detailed usage instructions.
pub fn framebuffer_format_create_multipass_ex<'a>( &'a mut self, attachments: &'a Array<Gd<RdAttachmentFormat>>, passes: &'a Array<Gd<RdFramebufferPass>>, ) -> ExFramebufferFormatCreateMultipass<'a>
pub fn framebuffer_format_create_empty(&mut self) -> i64
pub fn framebuffer_format_create_empty(&mut self) -> i64
To set the default parameters, use Self::framebuffer_format_create_empty_ex
and its builder methods. See the book for detailed usage instructions.
pub fn framebuffer_format_create_empty_ex<'a>( &'a mut self, ) -> ExFramebufferFormatCreateEmpty<'a>
pub fn framebuffer_format_get_texture_samples(
&mut self,
format: i64,
) -> TextureSamples
pub fn framebuffer_format_get_texture_samples( &mut self, format: i64, ) -> TextureSamples
To set the default parameters, use Self::framebuffer_format_get_texture_samples_ex
and its builder methods. See the book for detailed usage instructions.
pub fn framebuffer_format_get_texture_samples_ex<'a>( &'a mut self, format: i64, ) -> ExFramebufferFormatGetTextureSamples<'a>
pub fn framebuffer_create<'a>(&mut self, textures: &'a Array<Rid>) -> Rid
pub fn framebuffer_create<'a>(&mut self, textures: &'a Array<Rid>) -> Rid
To set the default parameters, use Self::framebuffer_create_ex
and its builder methods. See the book for detailed usage instructions.
pub fn framebuffer_create_ex<'a>( &'a mut self, textures: &'a Array<Rid>, ) -> ExFramebufferCreate<'a>
pub fn framebuffer_create_multipass<'a>(
&mut self,
textures: &'a Array<Rid>,
passes: &'a Array<Gd<RdFramebufferPass>>,
) -> Rid
pub fn framebuffer_create_multipass<'a>( &mut self, textures: &'a Array<Rid>, passes: &'a Array<Gd<RdFramebufferPass>>, ) -> Rid
To set the default parameters, use Self::framebuffer_create_multipass_ex
and its builder methods. See the book for detailed usage instructions.
pub fn framebuffer_create_multipass_ex<'a>( &'a mut self, textures: &'a Array<Rid>, passes: &'a Array<Gd<RdFramebufferPass>>, ) -> ExFramebufferCreateMultipass<'a>
pub fn framebuffer_create_empty(&mut self, size: Vector2i) -> Rid
pub fn framebuffer_create_empty(&mut self, size: Vector2i) -> Rid
To set the default parameters, use Self::framebuffer_create_empty_ex
and its builder methods. See the book for detailed usage instructions.
pub fn framebuffer_create_empty_ex<'a>( &'a mut self, size: Vector2i, ) -> ExFramebufferCreateEmpty<'a>
pub fn framebuffer_get_format(&mut self, framebuffer: Rid) -> i64
pub fn framebuffer_is_valid(&self, framebuffer: Rid) -> bool
pub fn sampler_create(&mut self, state: impl AsObjectArg<RdSamplerState>) -> Rid
pub fn sampler_is_format_supported_for_filter( &self, format: DataFormat, sampler_filter: SamplerFilter, ) -> bool
pub fn vertex_buffer_create(&mut self, size_bytes: u32) -> Rid
pub fn vertex_buffer_create(&mut self, size_bytes: u32) -> Rid
To set the default parameters, use Self::vertex_buffer_create_ex
and its builder methods. See the book for detailed usage instructions.
pub fn vertex_buffer_create_ex<'a>( &'a mut self, size_bytes: u32, ) -> ExVertexBufferCreate<'a>
pub fn vertex_format_create( &mut self, vertex_descriptions: &Array<Gd<RdVertexAttribute>>, ) -> i64
pub fn vertex_array_create<'a>(
&mut self,
vertex_count: u32,
vertex_format: i64,
src_buffers: &'a Array<Rid>,
) -> Rid
pub fn vertex_array_create<'a>( &mut self, vertex_count: u32, vertex_format: i64, src_buffers: &'a Array<Rid>, ) -> Rid
To set the default parameters, use Self::vertex_array_create_ex
and its builder methods. See the book for detailed usage instructions.
pub fn vertex_array_create_ex<'a>( &'a mut self, vertex_count: u32, vertex_format: i64, src_buffers: &'a Array<Rid>, ) -> ExVertexArrayCreate<'a>
pub fn index_buffer_create(
&mut self,
size_indices: u32,
format: IndexBufferFormat,
) -> Rid
pub fn index_buffer_create( &mut self, size_indices: u32, format: IndexBufferFormat, ) -> Rid
To set the default parameters, use Self::index_buffer_create_ex
and its builder methods. See the book for detailed usage instructions.
pub fn index_buffer_create_ex<'a>( &'a mut self, size_indices: u32, format: IndexBufferFormat, ) -> ExIndexBufferCreate<'a>
pub fn index_array_create( &mut self, index_buffer: Rid, index_offset: u32, index_count: u32, ) -> Rid
pub fn shader_compile_spirv_from_source(
&mut self,
shader_source: impl AsObjectArg<RdShaderSource>,
) -> Option<Gd<RdShaderSpirv>>
pub fn shader_compile_spirv_from_source( &mut self, shader_source: impl AsObjectArg<RdShaderSource>, ) -> Option<Gd<RdShaderSpirv>>
To set the default parameters, use Self::shader_compile_spirv_from_source_ex
and its builder methods. See the book for detailed usage instructions.
pub fn shader_compile_spirv_from_source_ex<'a>( &'a mut self, shader_source: impl AsObjectArg<RdShaderSource>, ) -> ExShaderCompileSpirvFromSource<'a>
pub fn shader_compile_binary_from_spirv(
&mut self,
spirv_data: impl AsObjectArg<RdShaderSpirv>,
) -> PackedByteArray
pub fn shader_compile_binary_from_spirv( &mut self, spirv_data: impl AsObjectArg<RdShaderSpirv>, ) -> PackedByteArray
To set the default parameters, use Self::shader_compile_binary_from_spirv_ex
and its builder methods. See the book for detailed usage instructions.
pub fn shader_compile_binary_from_spirv_ex<'a>( &'a mut self, spirv_data: impl AsObjectArg<RdShaderSpirv>, ) -> ExShaderCompileBinaryFromSpirv<'a>
pub fn shader_create_from_spirv(
&mut self,
spirv_data: impl AsObjectArg<RdShaderSpirv>,
) -> Rid
pub fn shader_create_from_spirv( &mut self, spirv_data: impl AsObjectArg<RdShaderSpirv>, ) -> Rid
To set the default parameters, use Self::shader_create_from_spirv_ex
and its builder methods. See the book for detailed usage instructions.
pub fn shader_create_from_spirv_ex<'a>( &'a mut self, spirv_data: impl AsObjectArg<RdShaderSpirv>, ) -> ExShaderCreateFromSpirv<'a>
pub fn shader_create_from_bytecode<'a>(
&mut self,
binary_data: &'a PackedByteArray,
) -> Rid
pub fn shader_create_from_bytecode<'a>( &mut self, binary_data: &'a PackedByteArray, ) -> Rid
To set the default parameters, use Self::shader_create_from_bytecode_ex
and its builder methods. See the book for detailed usage instructions.
pub fn shader_create_from_bytecode_ex<'a>( &'a mut self, binary_data: &'a PackedByteArray, ) -> ExShaderCreateFromBytecode<'a>
pub fn shader_create_placeholder(&mut self) -> Rid
pub fn shader_get_vertex_input_attribute_mask(&mut self, shader: Rid) -> u64
pub fn uniform_buffer_create(&mut self, size_bytes: u32) -> Rid
pub fn uniform_buffer_create(&mut self, size_bytes: u32) -> Rid
To set the default parameters, use Self::uniform_buffer_create_ex
and its builder methods. See the book for detailed usage instructions.
pub fn uniform_buffer_create_ex<'a>( &'a mut self, size_bytes: u32, ) -> ExUniformBufferCreate<'a>
pub fn storage_buffer_create(&mut self, size_bytes: u32) -> Rid
pub fn storage_buffer_create(&mut self, size_bytes: u32) -> Rid
To set the default parameters, use Self::storage_buffer_create_ex
and its builder methods. See the book for detailed usage instructions.
pub fn storage_buffer_create_ex<'a>( &'a mut self, size_bytes: u32, ) -> ExStorageBufferCreate<'a>
pub fn texture_buffer_create(
&mut self,
size_bytes: u32,
format: DataFormat,
) -> Rid
pub fn texture_buffer_create( &mut self, size_bytes: u32, format: DataFormat, ) -> Rid
To set the default parameters, use Self::texture_buffer_create_ex
and its builder methods. See the book for detailed usage instructions.
pub fn texture_buffer_create_ex<'a>( &'a mut self, size_bytes: u32, format: DataFormat, ) -> ExTextureBufferCreate<'a>
pub fn uniform_set_create( &mut self, uniforms: &Array<Gd<RdUniform>>, shader: Rid, shader_set: u32, ) -> Rid
pub fn uniform_set_is_valid(&mut self, uniform_set: Rid) -> bool
pub fn buffer_copy( &mut self, src_buffer: Rid, dst_buffer: Rid, src_offset: u32, dst_offset: u32, size: u32, ) -> Error
pub fn buffer_update( &mut self, buffer: Rid, offset: u32, size_bytes: u32, data: &PackedByteArray, ) -> Error
pub fn buffer_clear( &mut self, buffer: Rid, offset: u32, size_bytes: u32, ) -> Error
pub fn buffer_get_data(&mut self, buffer: Rid) -> PackedByteArray
pub fn buffer_get_data(&mut self, buffer: Rid) -> PackedByteArray
To set the default parameters, use Self::buffer_get_data_ex
and its builder methods. See the book for detailed usage instructions.
pub fn buffer_get_data_ex<'a>(&'a mut self, buffer: Rid) -> ExBufferGetData<'a>
pub fn render_pipeline_create(
&mut self,
shader: Rid,
framebuffer_format: i64,
vertex_format: i64,
primitive: RenderPrimitive,
rasterization_state: impl AsObjectArg<RdPipelineRasterizationState>,
multisample_state: impl AsObjectArg<RdPipelineMultisampleState>,
stencil_state: impl AsObjectArg<RdPipelineDepthStencilState>,
color_blend_state: impl AsObjectArg<RdPipelineColorBlendState>,
) -> Rid
pub fn render_pipeline_create( &mut self, shader: Rid, framebuffer_format: i64, vertex_format: i64, primitive: RenderPrimitive, rasterization_state: impl AsObjectArg<RdPipelineRasterizationState>, multisample_state: impl AsObjectArg<RdPipelineMultisampleState>, stencil_state: impl AsObjectArg<RdPipelineDepthStencilState>, color_blend_state: impl AsObjectArg<RdPipelineColorBlendState>, ) -> Rid
To set the default parameters, use Self::render_pipeline_create_ex
and its builder methods. See the book for detailed usage instructions.
pub fn render_pipeline_create_ex<'a>( &'a mut self, shader: Rid, framebuffer_format: i64, vertex_format: i64, primitive: RenderPrimitive, rasterization_state: impl AsObjectArg<RdPipelineRasterizationState>, multisample_state: impl AsObjectArg<RdPipelineMultisampleState>, stencil_state: impl AsObjectArg<RdPipelineDepthStencilState>, color_blend_state: impl AsObjectArg<RdPipelineColorBlendState>, ) -> ExRenderPipelineCreate<'a>
pub fn render_pipeline_is_valid(&mut self, render_pipeline: Rid) -> bool
pub fn compute_pipeline_create(&mut self, shader: Rid) -> Rid
pub fn compute_pipeline_create(&mut self, shader: Rid) -> Rid
To set the default parameters, use Self::compute_pipeline_create_ex
and its builder methods. See the book for detailed usage instructions.
pub fn compute_pipeline_create_ex<'a>( &'a mut self, shader: Rid, ) -> ExComputePipelineCreate<'a>
pub fn compute_pipeline_is_valid(&mut self, compute_pipeline: Rid) -> bool
pub fn screen_get_width(&self) -> i32
pub fn screen_get_width(&self) -> i32
To set the default parameters, use Self::screen_get_width_ex
and its builder methods. See the book for detailed usage instructions.
pub fn screen_get_width_ex<'a>(&'a self) -> ExScreenGetWidth<'a>
pub fn screen_get_height(&self) -> i32
pub fn screen_get_height(&self) -> i32
To set the default parameters, use Self::screen_get_height_ex
and its builder methods. See the book for detailed usage instructions.
pub fn screen_get_height_ex<'a>(&'a self) -> ExScreenGetHeight<'a>
pub fn screen_get_framebuffer_format(&self) -> i64
pub fn screen_get_framebuffer_format(&self) -> i64
To set the default parameters, use Self::screen_get_framebuffer_format_ex
and its builder methods. See the book for detailed usage instructions.
pub fn screen_get_framebuffer_format_ex<'a>( &'a self, ) -> ExScreenGetFramebufferFormat<'a>
pub fn draw_list_begin_for_screen(&mut self) -> i64
pub fn draw_list_begin_for_screen(&mut self) -> i64
To set the default parameters, use Self::draw_list_begin_for_screen_ex
and its builder methods. See the book for detailed usage instructions.
pub fn draw_list_begin_for_screen_ex<'a>( &'a mut self, ) -> ExDrawListBeginForScreen<'a>
pub fn draw_list_begin(
&mut self,
framebuffer: Rid,
initial_color_action: InitialAction,
final_color_action: FinalAction,
initial_depth_action: InitialAction,
final_depth_action: FinalAction,
) -> i64
pub fn draw_list_begin( &mut self, framebuffer: Rid, initial_color_action: InitialAction, final_color_action: FinalAction, initial_depth_action: InitialAction, final_depth_action: FinalAction, ) -> i64
To set the default parameters, use Self::draw_list_begin_ex
and its builder methods. See the book for detailed usage instructions.
pub fn draw_list_begin_ex<'a>( &'a mut self, framebuffer: Rid, initial_color_action: InitialAction, final_color_action: FinalAction, initial_depth_action: InitialAction, final_depth_action: FinalAction, ) -> ExDrawListBegin<'a>
pub fn draw_list_begin_split(
&mut self,
framebuffer: Rid,
splits: u32,
initial_color_action: InitialAction,
final_color_action: FinalAction,
initial_depth_action: InitialAction,
final_depth_action: FinalAction,
) -> PackedInt64Array
pub fn draw_list_begin_split( &mut self, framebuffer: Rid, splits: u32, initial_color_action: InitialAction, final_color_action: FinalAction, initial_depth_action: InitialAction, final_depth_action: FinalAction, ) -> PackedInt64Array
To set the default parameters, use Self::draw_list_begin_split_ex
and its builder methods. See the book for detailed usage instructions.
pub fn draw_list_begin_split_ex<'a>( &'a mut self, framebuffer: Rid, splits: u32, initial_color_action: InitialAction, final_color_action: FinalAction, initial_depth_action: InitialAction, final_depth_action: FinalAction, ) -> ExDrawListBeginSplit<'a>
pub fn draw_list_set_blend_constants(&mut self, draw_list: i64, color: Color)
pub fn draw_list_bind_render_pipeline( &mut self, draw_list: i64, render_pipeline: Rid, )
pub fn draw_list_bind_uniform_set( &mut self, draw_list: i64, uniform_set: Rid, set_index: u32, )
pub fn draw_list_bind_vertex_array(&mut self, draw_list: i64, vertex_array: Rid)
pub fn draw_list_bind_index_array(&mut self, draw_list: i64, index_array: Rid)
pub fn draw_list_set_push_constant( &mut self, draw_list: i64, buffer: &PackedByteArray, size_bytes: u32, )
pub fn draw_list_draw(
&mut self,
draw_list: i64,
use_indices: bool,
instances: u32,
)
pub fn draw_list_draw( &mut self, draw_list: i64, use_indices: bool, instances: u32, )
To set the default parameters, use Self::draw_list_draw_ex
and its builder methods. See the book for detailed usage instructions.
pub fn draw_list_draw_ex<'a>( &'a mut self, draw_list: i64, use_indices: bool, instances: u32, ) -> ExDrawListDraw<'a>
pub fn draw_list_enable_scissor(&mut self, draw_list: i64)
pub fn draw_list_enable_scissor(&mut self, draw_list: i64)
To set the default parameters, use Self::draw_list_enable_scissor_ex
and its builder methods. See the book for detailed usage instructions.
pub fn draw_list_enable_scissor_ex<'a>( &'a mut self, draw_list: i64, ) -> ExDrawListEnableScissor<'a>
pub fn draw_list_disable_scissor(&mut self, draw_list: i64)
pub fn draw_list_switch_to_next_pass(&mut self) -> i64
pub fn draw_list_switch_to_next_pass_split( &mut self, splits: u32, ) -> PackedInt64Array
pub fn draw_list_end(&mut self)
pub fn compute_list_begin(&mut self) -> i64
pub fn compute_list_bind_compute_pipeline( &mut self, compute_list: i64, compute_pipeline: Rid, )
pub fn compute_list_set_push_constant( &mut self, compute_list: i64, buffer: &PackedByteArray, size_bytes: u32, )
pub fn compute_list_bind_uniform_set( &mut self, compute_list: i64, uniform_set: Rid, set_index: u32, )
pub fn compute_list_dispatch( &mut self, compute_list: i64, x_groups: u32, y_groups: u32, z_groups: u32, )
pub fn compute_list_dispatch_indirect( &mut self, compute_list: i64, buffer: Rid, offset: u32, )
pub fn compute_list_add_barrier(&mut self, compute_list: i64)
pub fn compute_list_end(&mut self)
pub fn free_rid(&mut self, rid: Rid)
pub fn capture_timestamp(&mut self, name: GString)
pub fn get_captured_timestamps_count(&self) -> u32
pub fn get_captured_timestamps_frame(&self) -> u64
pub fn get_captured_timestamp_gpu_time(&self, index: u32) -> u64
pub fn get_captured_timestamp_cpu_time(&self, index: u32) -> u64
pub fn get_captured_timestamp_name(&self, index: u32) -> GString
pub fn limit_get(&self, limit: Limit) -> u64
pub fn get_frame_delay(&self) -> u32
pub fn submit(&mut self)
pub fn sync(&mut self)
pub fn barrier(&mut self)
pub fn barrier(&mut self)
To set the default parameters, use Self::barrier_ex
and its builder methods. See the book for detailed usage instructions.
pub fn barrier_ex<'a>(&'a mut self) -> ExBarrier<'a>
pub fn full_barrier(&mut self)
pub fn create_local_device(&mut self) -> Option<Gd<RenderingDevice>>
pub fn set_resource_name(&mut self, id: Rid, name: GString)
pub fn draw_command_begin_label(&mut self, name: GString, color: Color)
pub fn draw_command_insert_label(&mut self, name: GString, color: Color)
pub fn draw_command_end_label(&mut self)
pub fn get_device_vendor_name(&self) -> GString
pub fn get_device_name(&self) -> GString
pub fn get_device_pipeline_cache_uuid(&self) -> GString
pub fn get_memory_usage(&self, type_: MemoryType) -> u64
pub fn get_driver_resource( &mut self, resource: DriverResource, rid: Rid, index: u64, ) -> u64
Methods from Deref<Target = Object>§
pub fn get_class(&self) -> GString
pub fn is_class(&self, class: GString) -> bool
pub fn set(&mut self, property: StringName, value: &Variant)
pub fn get(&self, property: StringName) -> Variant
pub fn set_indexed(&mut self, property_path: NodePath, value: &Variant)
pub fn get_indexed(&self, property_path: NodePath) -> Variant
pub fn get_property_list(&self) -> Array<Dictionary>
pub fn get_method_list(&self) -> Array<Dictionary>
pub fn property_can_revert(&self, property: StringName) -> bool
pub fn property_get_revert(&self, property: StringName) -> Variant
pub fn set_script(&mut self, script: &Variant)
pub fn get_script(&self) -> Variant
pub fn set_meta(&mut self, name: StringName, value: &Variant)
pub fn remove_meta(&mut self, name: StringName)
pub fn get_meta(&self, name: StringName) -> Variant
pub fn get_meta(&self, name: StringName) -> Variant
To set the default parameters, use Self::get_meta_ex
and its builder methods. See the book for detailed usage instructions.
pub fn get_meta_ex<'a>(&'a self, name: StringName) -> ExGetMeta<'a>
pub fn has_meta(&self, name: StringName) -> bool
pub fn get_meta_list(&self) -> Array<StringName>
pub fn add_user_signal(&mut self, signal: GString)
pub fn add_user_signal(&mut self, signal: GString)
To set the default parameters, use Self::add_user_signal_ex
and its builder methods. See the book for detailed usage instructions.
pub fn add_user_signal_ex<'a>( &'a mut self, signal: GString, ) -> ExAddUserSignal<'a>
pub fn has_user_signal(&self, signal: StringName) -> bool
pub fn remove_user_signal(&mut self, signal: StringName)
pub fn emit_signal(&mut self, signal: StringName, varargs: &[Variant]) -> Error
pub fn emit_signal(&mut self, signal: StringName, varargs: &[Variant]) -> Error
§Panics
This is a varcall method, meaning parameters and return values are passed as Variant
.
It can detect call failures and will panic in such a case.
pub fn try_emit_signal(
&mut self,
signal: StringName,
varargs: &[Variant],
) -> Result<Error, CallError>
pub fn try_emit_signal( &mut self, signal: StringName, varargs: &[Variant], ) -> Result<Error, CallError>
§Return type
This is a varcall method, meaning parameters and return values are passed as Variant
.
It can detect call failures and will return Err
in such a case.
pub fn call(&mut self, method: StringName, varargs: &[Variant]) -> Variant
pub fn call(&mut self, method: StringName, varargs: &[Variant]) -> Variant
§Panics
This is a varcall method, meaning parameters and return values are passed as Variant
.
It can detect call failures and will panic in such a case.
pub fn try_call(
&mut self,
method: StringName,
varargs: &[Variant],
) -> Result<Variant, CallError>
pub fn try_call( &mut self, method: StringName, varargs: &[Variant], ) -> Result<Variant, CallError>
§Return type
This is a varcall method, meaning parameters and return values are passed as Variant
.
It can detect call failures and will return Err
in such a case.
pub fn call_deferred(
&mut self,
method: StringName,
varargs: &[Variant],
) -> Variant
pub fn call_deferred( &mut self, method: StringName, varargs: &[Variant], ) -> Variant
§Panics
This is a varcall method, meaning parameters and return values are passed as Variant
.
It can detect call failures and will panic in such a case.
pub fn try_call_deferred(
&mut self,
method: StringName,
varargs: &[Variant],
) -> Result<Variant, CallError>
pub fn try_call_deferred( &mut self, method: StringName, varargs: &[Variant], ) -> Result<Variant, CallError>
§Return type
This is a varcall method, meaning parameters and return values are passed as Variant
.
It can detect call failures and will return Err
in such a case.
pub fn set_deferred(&mut self, property: StringName, value: &Variant)
pub fn callv( &mut self, method: StringName, arg_array: &Array<Variant>, ) -> Variant
pub fn has_method(&self, method: StringName) -> bool
pub fn get_method_argument_count(&self, method: StringName) -> i32
pub fn has_signal(&self, signal: StringName) -> bool
pub fn get_signal_list(&self) -> Array<Dictionary>
pub fn get_signal_connection_list( &self, signal: StringName, ) -> Array<Dictionary>
pub fn get_incoming_connections(&self) -> Array<Dictionary>
pub fn connect(&mut self, signal: StringName, callable: Callable) -> Error
pub fn connect(&mut self, signal: StringName, callable: Callable) -> Error
To set the default parameters, use Self::connect_ex
and its builder methods. See the book for detailed usage instructions.
pub fn connect_ex<'a>( &'a mut self, signal: StringName, callable: Callable, ) -> ExConnect<'a>
pub fn disconnect(&mut self, signal: StringName, callable: Callable)
pub fn is_connected(&self, signal: StringName, callable: Callable) -> bool
pub fn set_block_signals(&mut self, enable: bool)
pub fn is_blocking_signals(&self) -> bool
pub fn notify_property_list_changed(&mut self)
pub fn set_message_translation(&mut self, enable: bool)
pub fn can_translate_messages(&self) -> bool
pub fn tr(&self, message: StringName) -> GString
pub fn tr(&self, message: StringName) -> GString
To set the default parameters, use Self::tr_ex
and its builder methods. See the book for detailed usage instructions.
pub fn tr_ex<'a>(&'a self, message: StringName) -> ExTr<'a>
pub fn tr_n(
&self,
message: StringName,
plural_message: StringName,
n: i32,
) -> GString
pub fn tr_n( &self, message: StringName, plural_message: StringName, n: i32, ) -> GString
To set the default parameters, use Self::tr_n_ex
and its builder methods. See the book for detailed usage instructions.
pub fn tr_n_ex<'a>( &'a self, message: StringName, plural_message: StringName, n: i32, ) -> ExTrN<'a>
pub fn is_queued_for_deletion(&self) -> bool
pub fn cancel_free(&mut self)
pub fn notify(&mut self, what: ObjectNotification)
pub fn notify(&mut self, what: ObjectNotification)
⚠️ Sends a Godot notification to all classes inherited by the object.
Triggers calls to on_notification()
, and depending on the notification, also to Godot’s lifecycle callbacks such as ready()
.
Starts from the highest ancestor (the Object
class) and goes down the hierarchy.
See also Godot docs for Object::notification()
.
§Panics
If you call this method on a user-defined object while holding a GdRef
or GdMut
guard on the instance, you will encounter
a panic. The reason is that the receiving virtual method on_notification()
acquires a GdMut
lock dynamically, which must
be exclusive.
pub fn notify_reversed(&mut self, what: ObjectNotification)
pub fn notify_reversed(&mut self, what: ObjectNotification)
⚠️ Like Self::notify()
, but starts at the most-derived class and goes up the hierarchy.
See docs of that method, including the panics.