diff options
Diffstat (limited to 'src/States/WorldBuilderState.cpp')
| -rw-r--r-- | src/States/WorldBuilderState.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/States/WorldBuilderState.cpp b/src/States/WorldBuilderState.cpp index 63ef25c..70ef3d4 100644 --- a/src/States/WorldBuilderState.cpp +++ b/src/States/WorldBuilderState.cpp @@ -484,6 +484,18 @@ namespace Donut ImGui::Spacing(); + if (ImGui::Button("Start Simulation", ImVec2(ImGui::GetWindowWidth() - 20, 30))) + { + // Load objects from WorldBuilder scene into Engine + auto& engine = Application::Get().GetEngine(); + engine.LoadObjectsFromScene(m_Scene.objs); + + // Switch to simulation state + Application::Get().GetStateManager().SwitchToState("Simulation"); + } + + ImGui::Spacing(); + if (ImGui::Button("Back to Config", ImVec2(ImGui::GetWindowWidth() - 20, 30))) Application::Get().GetStateManager().SwitchToState("Config"); @@ -550,7 +562,6 @@ namespace Donut Object sphere(m_NewObjectPosition, m_NewObjectRadius, material); m_Scene.objs.push_back(sphere); - // Automatically select the newly created object m_SelectedObjectIndex = static_cast<int>(m_Scene.objs.size() - 1); m_NewObjectPosition = glm::vec3(0.0f, 0.0f, 0.0f); |
