diff --git a/source/tools/atlas/AtlasUI/ScenarioEditor/ScenarioEditor.cpp b/source/tools/atlas/AtlasUI/ScenarioEditor/ScenarioEditor.cpp index 4d2d2021a3..f38a0a9715 100644 --- a/source/tools/atlas/AtlasUI/ScenarioEditor/ScenarioEditor.cpp +++ b/source/tools/atlas/AtlasUI/ScenarioEditor/ScenarioEditor.cpp @@ -326,8 +326,8 @@ enum ID_BigScreenshot, ID_JavaScript, ID_CameraReset, - ID_RenderPathFixed, - ID_RenderPathShader, + ID_RenderPathShaderARB, + ID_RenderPathShaderGLSL, ID_DumpState, ID_DumpBinaryState, @@ -362,8 +362,8 @@ BEGIN_EVENT_TABLE(ScenarioEditor, wxFrame) EVT_MENU(ID_CameraReset, ScenarioEditor::OnCameraReset) EVT_MENU(ID_DumpState, ScenarioEditor::OnDumpState) EVT_MENU(ID_DumpBinaryState, ScenarioEditor::OnDumpState) - EVT_MENU(ID_RenderPathFixed, ScenarioEditor::OnRenderPath) - EVT_MENU(ID_RenderPathShader, ScenarioEditor::OnRenderPath) + EVT_MENU(ID_RenderPathShaderARB, ScenarioEditor::OnRenderPath) + EVT_MENU(ID_RenderPathShaderGLSL, ScenarioEditor::OnRenderPath) EVT_MENU(ID_Manual, ScenarioEditor::OnHelp) EVT_MENU(ID_ReportBug, ScenarioEditor::OnHelp) @@ -485,8 +485,8 @@ ScenarioEditor::ScenarioEditor(wxWindow* parent) wxMenu *menuRP = new wxMenu; menuMisc->AppendSubMenu(menuRP, _("Render &path")); - menuRP->Append(ID_RenderPathFixed, _("&Fixed function")); - menuRP->Append(ID_RenderPathShader, _("&Shader (default)")); + menuRP->Append(ID_RenderPathShaderARB, _("Shader &ARB")); + menuRP->Append(ID_RenderPathShaderGLSL, _("&Shader GLSL (default)")); } wxMenu *menuHelp = new wxMenu; @@ -928,11 +928,13 @@ void ScenarioEditor::OnRenderPath(wxCommandEvent& event) { switch (event.GetId()) { - case ID_RenderPathFixed: - POST_MESSAGE(SetViewParamS, (eRenderView::GAME, L"renderpath", L"fixed")); - break; - case ID_RenderPathShader: + case ID_RenderPathShaderARB: POST_MESSAGE(SetViewParamS, (eRenderView::GAME, L"renderpath", L"shader")); + POST_MESSAGE(SetViewParamB, (eRenderView::GAME, L"preferGLSL", false)); + break; + case ID_RenderPathShaderGLSL: + POST_MESSAGE(SetViewParamS, (eRenderView::GAME, L"renderpath", L"shader")); + POST_MESSAGE(SetViewParamB, (eRenderView::GAME, L"preferGLSL", true)); break; } } diff --git a/source/tools/atlas/GameInterface/View.cpp b/source/tools/atlas/GameInterface/View.cpp index ef3776443a..3d042f79bc 100644 --- a/source/tools/atlas/GameInterface/View.cpp +++ b/source/tools/atlas/GameInterface/View.cpp @@ -323,6 +323,8 @@ void AtlasViewGame::SetParam(const std::wstring& name, bool value) g_Renderer.SetDisplayTerrainPriorities(value); else if (name == L"movetool") m_DrawMoveTool = value; + else if (name == L"preferGLSL") + g_RenderingOptions.SetPreferGLSL(value); } void AtlasViewGame::SetParam(const std::wstring& name, float value)