Struct BaseMaterial3D
#[repr(C)]pub struct BaseMaterial3D { /* private fields */ }
Expand description
Godot class BaseMaterial3D.
Inherits Material
.
Related symbols:
base_material_3d
: sidecar module with related enum/flag typesIBaseMaterial3D
: virtual methods
See also Godot docs for BaseMaterial3D
.
§Not instantiable
This class cannot be constructed. Obtain Gd<BaseMaterial3D>
instances via Godot APIs.
Implementations§
§impl BaseMaterial3D
impl BaseMaterial3D
pub fn set_albedo(&mut self, albedo: Color)
pub fn get_albedo(&self) -> Color
pub fn set_transparency(&mut self, transparency: Transparency)
pub fn get_transparency(&self) -> Transparency
pub fn set_alpha_antialiasing(&mut self, alpha_aa: AlphaAntiAliasing)
pub fn get_alpha_antialiasing(&self) -> AlphaAntiAliasing
pub fn set_alpha_antialiasing_edge(&mut self, edge: f32)
pub fn get_alpha_antialiasing_edge(&self) -> f32
pub fn set_shading_mode(&mut self, shading_mode: ShadingMode)
pub fn get_shading_mode(&self) -> ShadingMode
pub fn set_specular(&mut self, specular: f32)
pub fn get_specular(&self) -> f32
pub fn set_metallic(&mut self, metallic: f32)
pub fn get_metallic(&self) -> f32
pub fn set_roughness(&mut self, roughness: f32)
pub fn get_roughness(&self) -> f32
pub fn set_emission(&mut self, emission: Color)
pub fn get_emission(&self) -> Color
pub fn set_emission_energy_multiplier( &mut self, emission_energy_multiplier: f32, )
pub fn get_emission_energy_multiplier(&self) -> f32
pub fn set_emission_intensity(&mut self, emission_energy_multiplier: f32)
pub fn get_emission_intensity(&self) -> f32
pub fn set_normal_scale(&mut self, normal_scale: f32)
pub fn get_normal_scale(&self) -> f32
pub fn set_rim(&mut self, rim: f32)
pub fn get_rim(&self) -> f32
pub fn set_rim_tint(&mut self, rim_tint: f32)
pub fn get_rim_tint(&self) -> f32
pub fn set_clearcoat(&mut self, clearcoat: f32)
pub fn get_clearcoat(&self) -> f32
pub fn set_clearcoat_roughness(&mut self, clearcoat_roughness: f32)
pub fn get_clearcoat_roughness(&self) -> f32
pub fn set_anisotropy(&mut self, anisotropy: f32)
pub fn get_anisotropy(&self) -> f32
pub fn set_heightmap_scale(&mut self, heightmap_scale: f32)
pub fn get_heightmap_scale(&self) -> f32
pub fn set_subsurface_scattering_strength(&mut self, strength: f32)
pub fn get_subsurface_scattering_strength(&self) -> f32
pub fn set_transmittance_color(&mut self, color: Color)
pub fn get_transmittance_color(&self) -> Color
pub fn set_transmittance_depth(&mut self, depth: f32)
pub fn get_transmittance_depth(&self) -> f32
pub fn set_transmittance_boost(&mut self, boost: f32)
pub fn get_transmittance_boost(&self) -> f32
pub fn set_backlight(&mut self, backlight: Color)
pub fn get_backlight(&self) -> Color
pub fn set_refraction(&mut self, refraction: f32)
pub fn get_refraction(&self) -> f32
pub fn set_point_size(&mut self, point_size: f32)
pub fn get_point_size(&self) -> f32
pub fn set_detail_uv(&mut self, detail_uv: DetailUv)
pub fn get_detail_uv(&self) -> DetailUv
pub fn set_blend_mode(&mut self, blend_mode: BlendMode)
pub fn get_blend_mode(&self) -> BlendMode
pub fn set_depth_draw_mode(&mut self, depth_draw_mode: DepthDrawMode)
pub fn get_depth_draw_mode(&self) -> DepthDrawMode
pub fn set_cull_mode(&mut self, cull_mode: CullMode)
pub fn get_cull_mode(&self) -> CullMode
pub fn set_diffuse_mode(&mut self, diffuse_mode: DiffuseMode)
pub fn get_diffuse_mode(&self) -> DiffuseMode
pub fn set_specular_mode(&mut self, specular_mode: SpecularMode)
pub fn get_specular_mode(&self) -> SpecularMode
pub fn set_flag(&mut self, flag: Flags, enable: bool)
pub fn get_flag(&self, flag: Flags) -> bool
pub fn set_texture_filter(&mut self, mode: TextureFilter)
pub fn get_texture_filter(&self) -> TextureFilter
pub fn set_feature(&mut self, feature: Feature, enable: bool)
pub fn get_feature(&self, feature: Feature) -> bool
pub fn set_texture( &mut self, param: TextureParam, texture: impl AsObjectArg<Texture2D>, )
pub fn get_texture(&self, param: TextureParam) -> Option<Gd<Texture2D>>
pub fn set_detail_blend_mode(&mut self, detail_blend_mode: BlendMode)
pub fn get_detail_blend_mode(&self) -> BlendMode
pub fn set_uv1_scale(&mut self, scale: Vector3)
pub fn get_uv1_scale(&self) -> Vector3
pub fn set_uv1_offset(&mut self, offset: Vector3)
pub fn get_uv1_offset(&self) -> Vector3
pub fn set_uv1_triplanar_blend_sharpness(&mut self, sharpness: f32)
pub fn get_uv1_triplanar_blend_sharpness(&self) -> f32
pub fn set_uv2_scale(&mut self, scale: Vector3)
pub fn get_uv2_scale(&self) -> Vector3
pub fn set_uv2_offset(&mut self, offset: Vector3)
pub fn get_uv2_offset(&self) -> Vector3
pub fn set_uv2_triplanar_blend_sharpness(&mut self, sharpness: f32)
pub fn get_uv2_triplanar_blend_sharpness(&self) -> f32
pub fn set_billboard_mode(&mut self, mode: BillboardMode)
pub fn get_billboard_mode(&self) -> BillboardMode
pub fn set_particles_anim_h_frames(&mut self, frames: i32)
pub fn get_particles_anim_h_frames(&self) -> i32
pub fn set_particles_anim_v_frames(&mut self, frames: i32)
pub fn get_particles_anim_v_frames(&self) -> i32
pub fn set_particles_anim_loop(&mut self, loop_: bool)
pub fn get_particles_anim_loop(&self) -> bool
pub fn set_heightmap_deep_parallax(&mut self, enable: bool)
pub fn is_heightmap_deep_parallax_enabled(&self) -> bool
pub fn set_heightmap_deep_parallax_min_layers(&mut self, layer: i32)
pub fn get_heightmap_deep_parallax_min_layers(&self) -> i32
pub fn set_heightmap_deep_parallax_max_layers(&mut self, layer: i32)
pub fn get_heightmap_deep_parallax_max_layers(&self) -> i32
pub fn set_heightmap_deep_parallax_flip_tangent(&mut self, flip: bool)
pub fn get_heightmap_deep_parallax_flip_tangent(&self) -> bool
pub fn set_heightmap_deep_parallax_flip_binormal(&mut self, flip: bool)
pub fn get_heightmap_deep_parallax_flip_binormal(&self) -> bool
pub fn set_grow(&mut self, amount: f32)
pub fn get_grow(&self) -> f32
pub fn set_emission_operator(&mut self, operator: EmissionOperator)
pub fn get_emission_operator(&self) -> EmissionOperator
pub fn set_ao_light_affect(&mut self, amount: f32)
pub fn get_ao_light_affect(&self) -> f32
pub fn set_alpha_scissor_threshold(&mut self, threshold: f32)
pub fn get_alpha_scissor_threshold(&self) -> f32
pub fn set_alpha_hash_scale(&mut self, threshold: f32)
pub fn get_alpha_hash_scale(&self) -> f32
pub fn set_grow_enabled(&mut self, enable: bool)
pub fn is_grow_enabled(&self) -> bool
pub fn set_metallic_texture_channel(&mut self, channel: TextureChannel)
pub fn get_metallic_texture_channel(&self) -> TextureChannel
pub fn set_roughness_texture_channel(&mut self, channel: TextureChannel)
pub fn get_roughness_texture_channel(&self) -> TextureChannel
pub fn set_ao_texture_channel(&mut self, channel: TextureChannel)
pub fn get_ao_texture_channel(&self) -> TextureChannel
pub fn set_refraction_texture_channel(&mut self, channel: TextureChannel)
pub fn get_refraction_texture_channel(&self) -> TextureChannel
pub fn set_proximity_fade_enabled(&mut self, enabled: bool)
pub fn is_proximity_fade_enabled(&self) -> bool
pub fn set_proximity_fade_distance(&mut self, distance: f32)
pub fn get_proximity_fade_distance(&self) -> f32
pub fn set_msdf_pixel_range(&mut self, range: f32)
pub fn get_msdf_pixel_range(&self) -> f32
pub fn set_msdf_outline_size(&mut self, size: f32)
pub fn get_msdf_outline_size(&self) -> f32
pub fn set_distance_fade(&mut self, mode: DistanceFadeMode)
pub fn get_distance_fade(&self) -> DistanceFadeMode
pub fn set_distance_fade_max_distance(&mut self, distance: f32)
pub fn get_distance_fade_max_distance(&self) -> f32
pub fn set_distance_fade_min_distance(&mut self, distance: f32)
pub fn get_distance_fade_min_distance(&self) -> f32
Methods from Deref<Target = Material>§
pub const RENDER_PRIORITY_MAX: i32 = 127i32
pub const RENDER_PRIORITY_MIN: i32 = -128i32
pub fn set_next_pass(&mut self, next_pass: impl AsObjectArg<Material>)
pub fn get_next_pass(&self) -> Option<Gd<Material>>
pub fn set_render_priority(&mut self, priority: i32)
pub fn get_render_priority(&self) -> i32
pub fn inspect_native_shader_code(&mut self)
pub fn create_placeholder(&self) -> Option<Gd<Resource>>
Methods from Deref<Target = Resource>§
pub fn set_path(&mut self, path: impl AsArg<GString>)
pub fn take_over_path(&mut self, path: impl AsArg<GString>)
pub fn get_path(&self) -> GString
pub fn set_name(&mut self, name: impl AsArg<GString>)
pub fn get_name(&self) -> GString
pub fn get_rid(&self) -> Rid
pub fn set_local_to_scene(&mut self, enable: bool)
pub fn is_local_to_scene(&self) -> bool
pub fn get_local_scene(&self) -> Option<Gd<Node>>
pub fn setup_local_to_scene(&mut self)
pub fn set_scene_unique_id(&mut self, id: impl AsArg<GString>)
pub fn get_scene_unique_id(&self) -> GString
pub fn emit_changed(&mut self)
pub fn duplicate(&self) -> Option<Gd<Resource>>
pub fn duplicate(&self) -> Option<Gd<Resource>>
To set the default parameters, use Self::duplicate_ex
and its builder methods. See the book for detailed usage instructions.
pub fn duplicate_ex<'a>(&'a self) -> ExDuplicate<'a>
Methods from Deref<Target = RefCounted>§
pub fn get_reference_count(&self) -> i32
Methods from Deref<Target = Object>§
pub fn get_class(&self) -> GString
pub fn is_class(&self, class: impl AsArg<GString>) -> bool
pub fn set(&mut self, property: impl AsArg<StringName>, value: &Variant)
pub fn get(&self, property: impl AsArg<StringName>) -> Variant
pub fn set_indexed( &mut self, property_path: impl AsArg<NodePath>, value: &Variant, )
pub fn get_indexed(&self, property_path: impl AsArg<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: impl AsArg<StringName>) -> bool
pub fn property_get_revert(&self, property: impl AsArg<StringName>) -> Variant
pub fn set_script(&mut self, script: &Variant)
pub fn get_script(&self) -> Variant
pub fn set_meta(&mut self, name: impl AsArg<StringName>, value: &Variant)
pub fn remove_meta(&mut self, name: impl AsArg<StringName>)
pub fn get_meta(&self, name: impl AsArg<StringName>) -> Variant
pub fn get_meta(&self, name: impl AsArg<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: impl AsArg<StringName> + 'a, ) -> ExGetMeta<'a>
pub fn has_meta(&self, name: impl AsArg<StringName>) -> bool
pub fn get_meta_list(&self) -> Array<StringName>
pub fn add_user_signal(&mut self, signal: impl AsArg<GString>)
pub fn add_user_signal(&mut self, signal: impl AsArg<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: impl AsArg<GString> + 'a, ) -> ExAddUserSignal<'a>
pub fn has_user_signal(&self, signal: impl AsArg<StringName>) -> bool
pub fn remove_user_signal(&mut self, signal: impl AsArg<StringName>)
pub fn emit_signal(
&mut self,
signal: impl AsArg<StringName>,
varargs: &[Variant],
) -> Error
pub fn emit_signal( &mut self, signal: impl AsArg<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: impl AsArg<StringName>,
varargs: &[Variant],
) -> Result<Error, CallError>
pub fn try_emit_signal( &mut self, signal: impl AsArg<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: impl AsArg<StringName>,
varargs: &[Variant],
) -> Variant
pub fn call( &mut self, method: impl AsArg<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: impl AsArg<StringName>,
varargs: &[Variant],
) -> Result<Variant, CallError>
pub fn try_call( &mut self, method: impl AsArg<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: impl AsArg<StringName>,
varargs: &[Variant],
) -> Variant
pub fn call_deferred( &mut self, method: impl AsArg<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: impl AsArg<StringName>,
varargs: &[Variant],
) -> Result<Variant, CallError>
pub fn try_call_deferred( &mut self, method: impl AsArg<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: impl AsArg<StringName>, value: &Variant, )
pub fn callv( &mut self, method: impl AsArg<StringName>, arg_array: &Array<Variant>, ) -> Variant
pub fn has_method(&self, method: impl AsArg<StringName>) -> bool
pub fn get_method_argument_count(&self, method: impl AsArg<StringName>) -> i32
pub fn has_signal(&self, signal: impl AsArg<StringName>) -> bool
pub fn get_signal_list(&self) -> Array<Dictionary>
pub fn get_signal_connection_list( &self, signal: impl AsArg<StringName>, ) -> Array<Dictionary>
pub fn get_incoming_connections(&self) -> Array<Dictionary>
pub fn connect(
&mut self,
signal: impl AsArg<StringName>,
callable: &Callable,
) -> Error
pub fn connect( &mut self, signal: impl AsArg<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: impl AsArg<StringName> + 'a, callable: &'a Callable, ) -> ExConnect<'a>
pub fn disconnect( &mut self, signal: impl AsArg<StringName>, callable: &Callable, )
pub fn is_connected( &self, signal: impl AsArg<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: impl AsArg<StringName>) -> GString
pub fn tr(&self, message: impl AsArg<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: impl AsArg<StringName> + 'a) -> ExTr<'a>
pub fn tr_n(
&self,
message: impl AsArg<StringName>,
plural_message: impl AsArg<StringName>,
n: i32,
) -> GString
pub fn tr_n( &self, message: impl AsArg<StringName>, plural_message: impl AsArg<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: impl AsArg<StringName> + 'a, plural_message: impl AsArg<StringName> + 'a, 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.