package core:engine/animator

⌘K
Ctrl+K
or
/

    Types

    animate_player ¶

    animate_player :: struct {
    	objs:         []^ianimate_object,
    	target_fps:   f64,
    	__playing_dt: f64,
    	playing:      bool,
    	loop:         bool,
    }
     

    Animation player structure for managing multiple animated objects

    Manages playback state, timing, and looping for a collection of animated objects

    Related Procedures With Parameters

    ianimate_object ¶

    ianimate_object :: struct {
    	using _:       engine.itransform_object,
    	frame:         u32,
    	frame_uniform: u8,
    }
     

    Animated object structure that extends iobject with frame animation support

    Contains frame information and uniform buffer for frame data

    Related Procedures With Parameters
    Procedures Through `using` From iobject

    ianimate_object_vtable ¶

    ianimate_object_vtable :: struct {
    	using _:       engine.iobject_vtable,
    	get_frame_cnt: proc "contextless" (self: ^ianimate_object) -> u32,
    }
    Related Procedures With Parameters

    Constants

    This section is empty.

    Variables

    This section is empty.

    Procedures

    animate_image_change_color_transform ¶

    animate_image_change_color_transform :: proc(self: ^animate_image, colorTransform: ^engine.color_transform) {…}

    animate_image_init ¶

    animate_image_init :: proc(self: ^animate_image, src: ^engine.texture_array, colorTransform: ^engine.color_transform = nil, vtable: ^ianimate_object_vtable = nil) {…}

    animate_image_update_transform ¶

    animate_image_update_transform :: proc(self: ^animate_image, pos: [3]f32, rotation: f32, scale: [2]f32 = {1, 1}, pivot: [2]f32 = {0.0, 0.0}) {…}

    animate_image_update_transform_matrix_raw ¶

    animate_image_update_transform_matrix_raw :: proc(self: ^animate_image, _mat: matrix[4, 4]f32) {…}

    animate_player_next_frame ¶

    animate_player_next_frame :: proc(self: ^animate_player) {…}
     

    Moves all objects to the next frame

    Inputs:
    self: Pointer to the animation player

    Returns:
    None

    animate_player_play ¶

    animate_player_play :: proc "contextless" (self: ^animate_player) {…}
     

    Starts playing the animation

    Inputs:
    self: Pointer to the animation player

    Returns:
    None

    animate_player_prev_frame ¶

    animate_player_prev_frame :: proc(self: ^animate_player) {…}
     

    Moves all objects to the previous frame

    Inputs:
    self: Pointer to the animation player

    Returns:
    None

    animate_player_set_frame ¶

    animate_player_set_frame :: proc(self: ^animate_player, _frame: u32) {…}
     

    Sets the frame for all objects in the animation player

    Inputs:
    self: Pointer to the animation player _frame: The frame number to set

    Returns:
    None

    animate_player_stop ¶

    animate_player_stop :: proc "contextless" (self: ^animate_player) {…}
     

    Stops playing the animation

    Inputs:
    self: Pointer to the animation player

    Returns:
    None

    animate_player_update ¶

    animate_player_update :: proc(self: ^animate_player, _dt: f64) {…}
     

    Updates the animation player with delta time

    Inputs:
    self: Pointer to the animation player _dt: Delta time since last update

    Returns:
    None

    ianimate_object_get_frame_cnt ¶

    ianimate_object_get_frame_cnt :: proc "contextless" (self: ^ianimate_object) -> u32 {…}
     

    Gets the total number of frames for the animated object

    Inputs:
    self: Pointer to the animated object

    Returns:
    The total number of frames

    ianimate_object_next_frame ¶

    ianimate_object_next_frame :: proc(self: ^ianimate_object) {…}
     

    Advances to the next frame (wraps around if at the end)

    Inputs:
    self: Pointer to the animated object

    Returns:
    None

    ianimate_object_prev_frame ¶

    ianimate_object_prev_frame :: proc(self: ^ianimate_object) {…}
     

    Moves to the previous frame (wraps around if at the beginning)

    Inputs:
    self: Pointer to the animated object

    Returns:
    None

    ianimate_object_set_frame ¶

    ianimate_object_set_frame :: proc(self: ^ianimate_object, _frame: u32) {…}
     

    Sets the current frame for the animated object

    Inputs:
    self: Pointer to the animated object _frame: The frame number to set (will be clamped to valid range)

    Returns:
    None

    ianimate_object_update_frame ¶

    ianimate_object_update_frame :: proc(self: ^ianimate_object) {…}
     

    Updates the uniform buffer with the current frame data

    Inputs:
    self: Pointer to the animated object

    Returns:
    None

    Procedure Groups

    This section is empty.

    Source Files

    Generation Information

    Generated with odin version dev-v0.0.1 (vendor "odin") Linux_amd64 @ 2026-01-30 10:23:15.867304492 +0000 UTC