35 if (!transform || !rect || !texture)
39 animation.current_time += dt;
40 if (animation.current_time >= animation.frame_duration)
42 animation.current_time = 0.0f;
43 animation.current_frame = (animation.current_frame + 1) % animation.total_frames;
46 int frame_x = (animation.current_frame % animation.frames_per_row) *
47 static_cast<int>(animation.frame_width);
48 int frame_y = (animation.current_frame / animation.frames_per_row) *
49 static_cast<int>(animation.frame_height);
51 rect->pos_x =
static_cast<float>(frame_x);
52 rect->pos_y =
static_cast<float>(frame_y);
59 static_cast<int>(rect->pos_y), rect->size_x, rect->size_y);