Struct Animation
#[repr(C)]pub struct Animation { /* private fields */ }
Expand description
Godot class Animation.
Inherits Resource
.
Related symbols:
animation
: sidecar module with related enum/flag typesIAnimation
: virtual methods
See also Godot docs for Animation
.
§Construction
This class is reference-counted. You can create a new instance using Animation::new_gd()
.
Implementations§
§impl Animation
impl Animation
pub fn add_track(&mut self, type_: TrackType) -> i32
pub fn add_track(&mut self, type_: TrackType) -> i32
To set the default parameters, use Self::add_track_ex
and its builder methods. See the book for detailed usage instructions.
pub fn add_track_ex<'a>(&'a mut self, type_: TrackType) -> ExAddTrack<'a>
pub fn remove_track(&mut self, track_idx: i32)
pub fn get_track_count(&self) -> i32
pub fn track_get_type(&self, track_idx: i32) -> TrackType
pub fn track_get_path(&self, track_idx: i32) -> NodePath
pub fn track_set_path(&mut self, track_idx: i32, path: impl AsArg<NodePath>)
pub fn find_track(&self, path: impl AsArg<NodePath>, type_: TrackType) -> i32
pub fn track_move_up(&mut self, track_idx: i32)
pub fn track_move_down(&mut self, track_idx: i32)
pub fn track_move_to(&mut self, track_idx: i32, to_idx: i32)
pub fn track_swap(&mut self, track_idx: i32, with_idx: i32)
pub fn track_set_imported(&mut self, track_idx: i32, imported: bool)
pub fn track_is_imported(&self, track_idx: i32) -> bool
pub fn track_set_enabled(&mut self, track_idx: i32, enabled: bool)
pub fn track_is_enabled(&self, track_idx: i32) -> bool
pub fn position_track_insert_key( &mut self, track_idx: i32, time: f64, position: Vector3, ) -> i32
pub fn rotation_track_insert_key( &mut self, track_idx: i32, time: f64, rotation: Quaternion, ) -> i32
pub fn scale_track_insert_key( &mut self, track_idx: i32, time: f64, scale: Vector3, ) -> i32
pub fn blend_shape_track_insert_key( &mut self, track_idx: i32, time: f64, amount: f32, ) -> i32
pub fn position_track_interpolate(
&self,
track_idx: i32,
time_sec: f64,
) -> Vector3
pub fn position_track_interpolate( &self, track_idx: i32, time_sec: f64, ) -> Vector3
To set the default parameters, use Self::position_track_interpolate_ex
and its builder methods. See the book for detailed usage instructions.
pub fn position_track_interpolate_ex<'a>( &'a self, track_idx: i32, time_sec: f64, ) -> ExPositionTrackInterpolate<'a>
pub fn rotation_track_interpolate(
&self,
track_idx: i32,
time_sec: f64,
) -> Quaternion
pub fn rotation_track_interpolate( &self, track_idx: i32, time_sec: f64, ) -> Quaternion
To set the default parameters, use Self::rotation_track_interpolate_ex
and its builder methods. See the book for detailed usage instructions.
pub fn rotation_track_interpolate_ex<'a>( &'a self, track_idx: i32, time_sec: f64, ) -> ExRotationTrackInterpolate<'a>
pub fn scale_track_interpolate(&self, track_idx: i32, time_sec: f64) -> Vector3
pub fn scale_track_interpolate(&self, track_idx: i32, time_sec: f64) -> Vector3
To set the default parameters, use Self::scale_track_interpolate_ex
and its builder methods. See the book for detailed usage instructions.
pub fn scale_track_interpolate_ex<'a>( &'a self, track_idx: i32, time_sec: f64, ) -> ExScaleTrackInterpolate<'a>
pub fn blend_shape_track_interpolate(
&self,
track_idx: i32,
time_sec: f64,
) -> f32
pub fn blend_shape_track_interpolate( &self, track_idx: i32, time_sec: f64, ) -> f32
To set the default parameters, use Self::blend_shape_track_interpolate_ex
and its builder methods. See the book for detailed usage instructions.
pub fn blend_shape_track_interpolate_ex<'a>( &'a self, track_idx: i32, time_sec: f64, ) -> ExBlendShapeTrackInterpolate<'a>
pub fn track_insert_key(
&mut self,
track_idx: i32,
time: f64,
key: &Variant,
) -> i32
pub fn track_insert_key( &mut self, track_idx: i32, time: f64, key: &Variant, ) -> i32
To set the default parameters, use Self::track_insert_key_ex
and its builder methods. See the book for detailed usage instructions.
pub fn track_insert_key_ex<'a>( &'a mut self, track_idx: i32, time: f64, key: &'a Variant, ) -> ExTrackInsertKey<'a>
pub fn track_remove_key(&mut self, track_idx: i32, key_idx: i32)
pub fn track_remove_key_at_time(&mut self, track_idx: i32, time: f64)
pub fn track_set_key_value(&mut self, track_idx: i32, key: i32, value: &Variant)
pub fn track_set_key_transition( &mut self, track_idx: i32, key_idx: i32, transition: f32, )
pub fn track_set_key_time(&mut self, track_idx: i32, key_idx: i32, time: f64)
pub fn track_get_key_transition(&self, track_idx: i32, key_idx: i32) -> f32
pub fn track_get_key_count(&self, track_idx: i32) -> i32
pub fn track_get_key_value(&self, track_idx: i32, key_idx: i32) -> Variant
pub fn track_get_key_time(&self, track_idx: i32, key_idx: i32) -> f64
pub fn track_find_key(&self, track_idx: i32, time: f64) -> i32
pub fn track_find_key(&self, track_idx: i32, time: f64) -> i32
To set the default parameters, use Self::track_find_key_ex
and its builder methods. See the book for detailed usage instructions.
pub fn track_find_key_ex<'a>( &'a self, track_idx: i32, time: f64, ) -> ExTrackFindKey<'a>
pub fn track_set_interpolation_type( &mut self, track_idx: i32, interpolation: InterpolationType, )
pub fn track_get_interpolation_type(&self, track_idx: i32) -> InterpolationType
pub fn track_set_interpolation_loop_wrap( &mut self, track_idx: i32, interpolation: bool, )
pub fn track_get_interpolation_loop_wrap(&self, track_idx: i32) -> bool
pub fn track_is_compressed(&self, track_idx: i32) -> bool
pub fn value_track_set_update_mode(&mut self, track_idx: i32, mode: UpdateMode)
pub fn value_track_get_update_mode(&self, track_idx: i32) -> UpdateMode
pub fn value_track_interpolate(&self, track_idx: i32, time_sec: f64) -> Variant
pub fn value_track_interpolate(&self, track_idx: i32, time_sec: f64) -> Variant
To set the default parameters, use Self::value_track_interpolate_ex
and its builder methods. See the book for detailed usage instructions.
pub fn value_track_interpolate_ex<'a>( &'a self, track_idx: i32, time_sec: f64, ) -> ExValueTrackInterpolate<'a>
pub fn method_track_get_name(&self, track_idx: i32, key_idx: i32) -> StringName
pub fn method_track_get_params( &self, track_idx: i32, key_idx: i32, ) -> Array<Variant>
pub fn bezier_track_insert_key(
&mut self,
track_idx: i32,
time: f64,
value: f32,
) -> i32
pub fn bezier_track_insert_key( &mut self, track_idx: i32, time: f64, value: f32, ) -> i32
To set the default parameters, use Self::bezier_track_insert_key_ex
and its builder methods. See the book for detailed usage instructions.
pub fn bezier_track_insert_key_ex<'a>( &'a mut self, track_idx: i32, time: f64, value: f32, ) -> ExBezierTrackInsertKey<'a>
pub fn bezier_track_set_key_value( &mut self, track_idx: i32, key_idx: i32, value: f32, )
pub fn bezier_track_set_key_in_handle(
&mut self,
track_idx: i32,
key_idx: i32,
in_handle: Vector2,
)
pub fn bezier_track_set_key_in_handle( &mut self, track_idx: i32, key_idx: i32, in_handle: Vector2, )
To set the default parameters, use Self::bezier_track_set_key_in_handle_ex
and its builder methods. See the book for detailed usage instructions.
pub fn bezier_track_set_key_in_handle_ex<'a>( &'a mut self, track_idx: i32, key_idx: i32, in_handle: Vector2, ) -> ExBezierTrackSetKeyInHandle<'a>
pub fn bezier_track_set_key_out_handle(
&mut self,
track_idx: i32,
key_idx: i32,
out_handle: Vector2,
)
pub fn bezier_track_set_key_out_handle( &mut self, track_idx: i32, key_idx: i32, out_handle: Vector2, )
To set the default parameters, use Self::bezier_track_set_key_out_handle_ex
and its builder methods. See the book for detailed usage instructions.
pub fn bezier_track_set_key_out_handle_ex<'a>( &'a mut self, track_idx: i32, key_idx: i32, out_handle: Vector2, ) -> ExBezierTrackSetKeyOutHandle<'a>
pub fn bezier_track_get_key_value(&self, track_idx: i32, key_idx: i32) -> f32
pub fn bezier_track_get_key_in_handle( &self, track_idx: i32, key_idx: i32, ) -> Vector2
pub fn bezier_track_get_key_out_handle( &self, track_idx: i32, key_idx: i32, ) -> Vector2
pub fn bezier_track_interpolate(&self, track_idx: i32, time: f64) -> f32
pub fn audio_track_insert_key(
&mut self,
track_idx: i32,
time: f64,
stream: impl AsObjectArg<Resource>,
) -> i32
pub fn audio_track_insert_key( &mut self, track_idx: i32, time: f64, stream: impl AsObjectArg<Resource>, ) -> i32
To set the default parameters, use Self::audio_track_insert_key_ex
and its builder methods. See the book for detailed usage instructions.
pub fn audio_track_insert_key_ex<'a>( &'a mut self, track_idx: i32, time: f64, stream: impl AsObjectArg<Resource>, ) -> ExAudioTrackInsertKey<'a>
pub fn audio_track_set_key_stream( &mut self, track_idx: i32, key_idx: i32, stream: impl AsObjectArg<Resource>, )
pub fn audio_track_set_key_start_offset( &mut self, track_idx: i32, key_idx: i32, offset: f32, )
pub fn audio_track_set_key_end_offset( &mut self, track_idx: i32, key_idx: i32, offset: f32, )
pub fn audio_track_get_key_stream( &self, track_idx: i32, key_idx: i32, ) -> Option<Gd<Resource>>
pub fn audio_track_get_key_start_offset( &self, track_idx: i32, key_idx: i32, ) -> f32
pub fn audio_track_get_key_end_offset( &self, track_idx: i32, key_idx: i32, ) -> f32
pub fn audio_track_set_use_blend(&mut self, track_idx: i32, enable: bool)
pub fn audio_track_is_use_blend(&self, track_idx: i32) -> bool
pub fn animation_track_insert_key( &mut self, track_idx: i32, time: f64, animation: impl AsArg<StringName>, ) -> i32
pub fn animation_track_set_key_animation( &mut self, track_idx: i32, key_idx: i32, animation: impl AsArg<StringName>, )
pub fn animation_track_get_key_animation( &self, track_idx: i32, key_idx: i32, ) -> StringName
pub fn set_length(&mut self, time_sec: f32)
pub fn get_length(&self) -> f32
pub fn set_loop_mode(&mut self, loop_mode: LoopMode)
pub fn get_loop_mode(&self) -> LoopMode
pub fn set_step(&mut self, size_sec: f32)
pub fn get_step(&self) -> f32
pub fn clear(&mut self)
pub fn copy_track( &mut self, track_idx: i32, to_animation: impl AsObjectArg<Animation>, )
pub fn compress(&mut self)
pub fn compress(&mut self)
To set the default parameters, use Self::compress_ex
and its builder methods. See the book for detailed usage instructions.
pub fn compress_ex<'a>(&'a mut self) -> ExCompress<'a>
pub fn is_capture_included(&self) -> bool
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.