Sdl3 Tutorial ((full)) -
else // Reset to first frame when idle sprite->current_frame = 0; sprite->frame_counter = 0;
for (int i = 0; i < FRAME_COUNT; i++) sprite->frames[i].x = i * frame_width; sprite->frames[i].y = 0; sprite->frames[i].w = frame_width; sprite->frames[i].h = frame_height; sdl3 tutorial
Here are additional features you could add: else // Reset to first frame when idle
SDL3 introduces SDL_FRect (floating point rectangles) as the standard for rendering, preventing pixel-alignment jitter. current_frame = 0