Add frame tick system for continuous animation
- Added INPUT_FRAME_TICK event type to input_event.h - Added wants_frame_updates() virtual method to Game base class - Implemented frame tick logic in main loop (basic1.cpp and emulator/main.cpp) - Added Lua bindings: game.set_frame_updates(bool) and INPUT.FRAME_TICK - Updated LuaGame to support frame updates via registry flag - Updated ball.lua to use continuous frame updates for smooth animation - Both hardware and emulator now support continuous animation for physics/games
This commit is contained in:
@@ -107,6 +107,17 @@ int main() {
|
||||
needs_redraw = true;
|
||||
}
|
||||
}
|
||||
} else if (launcher.is_game_selected()) {
|
||||
// No user input, but check if game wants frame tick updates
|
||||
current_game = launcher.get_selected_game();
|
||||
if (current_game->wants_frame_updates()) {
|
||||
InputEvent frame_event = {INPUT_FRAME_TICK, 0, 0, 0, 0, 0, true};
|
||||
needs_redraw = current_game->update(frame_event) || needs_redraw;
|
||||
if (current_game->wants_to_exit()) {
|
||||
launcher.reset();
|
||||
needs_redraw = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Always redraw every frame for emulator
|
||||
|
||||
Reference in New Issue
Block a user