Preserve state when switching renderers
Signed-off-by: Hans Kokx <hans.d.kokx@gmail.com>
This commit is contained in:
@@ -23,7 +23,6 @@ abstract class BaseWolfRendererState<T extends BaseWolfRenderer>
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
// DO NOT initialize the engine here. Just start the loop!
|
||||
gameLoop = createTicker(_tick)..start();
|
||||
focusNode.requestFocus();
|
||||
}
|
||||
@@ -31,10 +30,14 @@ abstract class BaseWolfRendererState<T extends BaseWolfRenderer>
|
||||
void _tick(Duration elapsed) {
|
||||
if (!widget.engine.isInitialized) return;
|
||||
|
||||
if (_lastTick == Duration.zero) {
|
||||
_lastTick = elapsed;
|
||||
return;
|
||||
}
|
||||
|
||||
Duration delta = elapsed - _lastTick;
|
||||
_lastTick = elapsed;
|
||||
|
||||
// Tick the shared engine
|
||||
widget.engine.tick(delta);
|
||||
|
||||
performRender();
|
||||
|
||||
Reference in New Issue
Block a user