Fix play mode runtime scene replacement
This commit is contained in:
@@ -28,9 +28,14 @@ public:
|
||||
bool ResumePlay(IEditorContext& context);
|
||||
bool StepPlay(IEditorContext& context);
|
||||
|
||||
::XCEngine::Components::Scene* GetRuntimeScene() const { return m_runtimeLoop.GetScene(); }
|
||||
|
||||
private:
|
||||
void ResetRuntimeInputBridge();
|
||||
void ApplyGameViewInputFrame(float deltaTime);
|
||||
void EnsureRuntimeSceneSyncSubscription(IEditorContext& context);
|
||||
void ClearRuntimeSceneSyncSubscription(IEditorContext& context);
|
||||
void SyncRuntimeSceneIfNeeded(IEditorContext& context);
|
||||
|
||||
uint64_t m_playStartRequestedHandlerId = 0;
|
||||
uint64_t m_playStopRequestedHandlerId = 0;
|
||||
@@ -38,6 +43,7 @@ private:
|
||||
uint64_t m_playResumeRequestedHandlerId = 0;
|
||||
uint64_t m_playStepRequestedHandlerId = 0;
|
||||
uint64_t m_gameViewInputFrameHandlerId = 0;
|
||||
uint64_t m_runtimeSceneChangedHandlerId = 0;
|
||||
SceneSnapshot m_editorSnapshot = {};
|
||||
GameViewInputFrameEvent m_pendingGameViewInput = {};
|
||||
GameViewInputFrameEvent m_appliedGameViewInput = {};
|
||||
|
||||
Reference in New Issue
Block a user