McRogueFace/docs
John McCardle 8b6eb1e7ae Extract GameEngine::doFrame() for Emscripten callback support
Refactors the main game loop to support both:
- Desktop: traditional blocking while(running) loop
- Browser: emscripten_set_main_loop_arg() callback (build-time conditional)

Changes:
- Add doFrame() method containing single-frame update logic
- Add isRunning() accessor for Emscripten callback
- run() now conditionally uses #ifdef __EMSCRIPTEN__ for loop selection
- Add emscriptenMainLoopCallback() static function

This is a prerequisite for Emscripten builds - browsers require
cooperative multitasking with callback-based frame updates.

Both normal and headless builds verified working.

Contributes to #158

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 23:51:35 -05:00
..
cookbook Cookbook: draft docs 2026-01-13 19:42:37 -05:00
stubs Fix #161: Update Grid, GridPoint, GridPointState stubs to match current API 2026-01-21 21:47:26 -05:00
templates draft tutorial revisions 2026-01-03 11:01:10 -05:00
tutorials draft tutorial revisions 2026-01-03 11:01:10 -05:00
api_reference_complete.html docs: Add complete API reference documentation 2025-10-23 13:19:36 -04:00
API_REFERENCE_COMPLETE.md Squashed commit of the following: [alpha_presentable] 2025-07-15 21:30:49 -04:00
api_reference_dynamic.html Update documentation for API changes #229, #230, #184 2026-01-28 19:20:04 -05:00
API_REFERENCE_DYNAMIC.md Update documentation for API changes #229, #230, #184 2026-01-28 19:20:04 -05:00
EMSCRIPTEN_RESEARCH.md Extract GameEngine::doFrame() for Emscripten callback support 2026-01-30 23:51:35 -05:00
mcrfpy.3 Update documentation for API changes #229, #230, #184 2026-01-28 19:20:04 -05:00
PROCEDURAL_GENERATION_SPEC.md HeightMap: core class with scalar operations (closes #193) 2026-01-11 20:07:55 -05:00