diff options
author | Clay John <claynjohn@gmail.com> | 2021-10-26 08:18:39 -0700 |
---|---|---|
committer | Hugo Locurcio <hugo.locurcio@hugo.pro> | 2021-10-31 15:56:45 +0100 |
commit | 8a10bb7d0dd0cc03353bb751af25a0eca1357c9d (patch) | |
tree | ae63bd8b1d4bacd65673f7bc455994ed4d288a84 /editor | |
parent | ce97ddbcb125228cc88fbfdcae932e110ee7daee (diff) | |
download | redot-engine-8a10bb7d0dd0cc03353bb751af25a0eca1357c9d.tar.gz |
Use OpenGL 3.3 core profile instead of compatibility profile
- Rename OpenGL to GLES3 in the source code per community feedback.
- The renderer is still exposed as "OpenGL 3" to the user.
- Hide renderer selection dropdown until OpenGL support is more mature.
- The renderer can still be changed in the Project Settings or using
the `--rendering-driver opengl` command line argument.
- Remove commented out exporter code.
- Remove some OpenGL/DisplayServer-related debugging prints.
Diffstat (limited to 'editor')
-rw-r--r-- | editor/editor_export.cpp | 4 | ||||
-rw-r--r-- | editor/editor_node.cpp | 61 | ||||
-rw-r--r-- | editor/plugins/visual_shader_editor_plugin.cpp | 2 | ||||
-rw-r--r-- | editor/project_manager.cpp | 2 |
4 files changed, 15 insertions, 54 deletions
diff --git a/editor/editor_export.cpp b/editor/editor_export.cpp index bc4d9fb156..372d01d89a 100644 --- a/editor/editor_export.cpp +++ b/editor/editor_export.cpp @@ -1498,7 +1498,7 @@ String EditorExportPlatform::test_etc2() const { bool etc_supported = ProjectSettings::get_singleton()->get("rendering/textures/vram_compression/import_etc"); bool etc2_supported = ProjectSettings::get_singleton()->get("rendering/textures/vram_compression/import_etc2"); - if (driver == "OpenGL" && !etc_supported) { + if (driver == "OpenGL3" && !etc_supported) { return TTR("Target platform requires 'ETC' texture compression for OpenGL. Enable 'Import Etc' in Project Settings."); } else if (driver == "Vulkan" && !etc2_supported) { // FIXME: Review if this is true for Vulkan. @@ -1515,7 +1515,7 @@ String EditorExportPlatform::test_etc2_or_pvrtc() const { // bool etc2_supported = ProjectSettings::get_singleton()->get("rendering/textures/vram_compression/import_etc2"); // bool pvrtc_supported = ProjectSettings::get_singleton()->get("rendering/textures/vram_compression/import_pvrtc"); - if (driver == "OpenGL" && !pvrtc_supported) { + if (driver == "OpenGL3" && !pvrtc_supported) { return TTR("Target platform requires 'PVRTC' texture compression for OpenGL. Enable 'Import Pvrtc' in Project Settings."); } else if (driver == "Vulkan" && !etc2_supported && !pvrtc_supported) { // FIXME: Review if this is true for Vulkan. diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp index d3d055a009..9edf0a24fc 100644 --- a/editor/editor_node.cpp +++ b/editor/editor_node.cpp @@ -5596,7 +5596,7 @@ void EditorNode::_bottom_panel_raise_toggled(bool p_pressed) { } void EditorNode::_update_rendering_driver_color() { - if (rendering_driver->get_text() == "opengl") { + if (rendering_driver->get_text() == "opengl3") { rendering_driver->add_theme_color_override("font_color", Color::hex(0x5586a4ff)); } else if (rendering_driver->get_text() == "vulkan") { rendering_driver->add_theme_color_override("font_color", theme_base->get_theme_color("vulkan_color", "Editor")); @@ -6619,28 +6619,12 @@ EditorNode::EditorNode() { HBoxContainer *right_menu_hb = memnew(HBoxContainer); menu_hb->add_child(right_menu_hb); - // Toggle for video driver - // video_driver = memnew(OptionButton); - // video_driver->set_focus_mode(Control::FOCUS_NONE); - // video_driver->connect("item_selected", callable_mp(this, &EditorNode::_video_driver_selected)); - // video_driver->add_theme_font_override("font", gui_base->get_theme_font(SNAME("bold"), SNAME("EditorFonts"))); - // video_driver->add_theme_font_size_override("font_size", gui_base->get_theme_font_size(SNAME("bold_size"), SNAME("EditorFonts"))); - // // TODO: Show again when OpenGL is ported. - // video_driver->set_visible(false); - // right_menu_hb->add_child(video_driver); - - //#ifndef _MSC_VER - //#warning needs to be reimplemented - //#endif - //#if 0 - // String video_drivers = ProjectSettings::get_singleton()->get_custom_property_info()["rendering/driver/driver_name"].hint_string; - // String current_video_driver = OS::get_singleton()->get_video_driver_name(OS::get_singleton()->get_current_video_driver()); - // video_driver_current = 0; - // for (int i = 0; i < video_drivers.get_slice_count(","); i++) { - // String driver = video_drivers.get_slice(",", i); - // video_driver->add_item(driver); - // video_driver->set_item_metadata(i, driver); rendering_driver = memnew(OptionButton); + + // Hide the renderer selection dropdown until OpenGL support is more mature. + // The renderer can still be changed in the project settings or using `--rendering-driver opengl3`. + rendering_driver->set_visible(false); + rendering_driver->set_flat(true); rendering_driver->set_focus_mode(Control::FOCUS_NONE); rendering_driver->connect("item_selected", callable_mp(this, &EditorNode::_rendering_driver_selected)); @@ -6649,53 +6633,30 @@ EditorNode::EditorNode() { right_menu_hb->add_child(rendering_driver); - // only display the render drivers that are available for this display driver + // Only display the render drivers that are available for this display driver. int display_driver_idx = OS::get_singleton()->get_display_driver_id(); Vector<String> render_drivers = DisplayServer::get_create_function_rendering_drivers(display_driver_idx); String current_rendering_driver = OS::get_singleton()->get_current_rendering_driver_name(); - // as we are doing string comparisons, keep in standard case to prevent problems with capitals - // 'vulkan' in particular uses lower case v in the code, and upper case in the UI . + // As we are doing string comparisons, keep in standard case to prevent problems with capitals + // "vulkan" in particular uses lowercase "v" in the code, and uppercase in the UI. current_rendering_driver = current_rendering_driver.to_lower(); for (int i = 0; i < render_drivers.size(); i++) { String driver = render_drivers[i]; - // add the driver to the user interface - rendering_driver->add_item(driver); - rendering_driver->set_item_metadata(i, driver); - - // lower case for standard comparison - driver = driver.to_lower(); - - if (current_rendering_driver == driver) { - rendering_driver->select(i); - rendering_driver_current = i; - } - } -#if 0 - // commented out old version, gets the driver list from the project settings - // just in case we decide to revert to this method - String rendering_drivers = ProjectSettings::get_singleton()->get_custom_property_info()["rendering/driver/driver_name"].hint_string; - String current_rendering_driver = OS::get_singleton()->get_current_rendering_driver_name(); - current_rendering_driver = current_rendering_driver.to_lower(); - print_line("current_rendering_driver " + current_rendering_driver); - - rendering_driver_current = 0; - for (int i = 0; i < rendering_drivers.get_slice_count(","); i++) { - String driver = rendering_drivers.get_slice(",", i); + // Add the driver to the UI. rendering_driver->add_item(driver); rendering_driver->set_item_metadata(i, driver); + // Lowercase for standard comparison. driver = driver.to_lower(); - print_line("\tdriver " + driver); if (current_rendering_driver == driver) { rendering_driver->select(i); rendering_driver_current = i; } } -#endif _update_rendering_driver_color(); video_restart_dialog = memnew(ConfirmationDialog); diff --git a/editor/plugins/visual_shader_editor_plugin.cpp b/editor/plugins/visual_shader_editor_plugin.cpp index 2bd99debed..9189c75162 100644 --- a/editor/plugins/visual_shader_editor_plugin.cpp +++ b/editor/plugins/visual_shader_editor_plugin.cpp @@ -1246,7 +1246,7 @@ void VisualShaderEditor::_update_options_menu() { Color unsupported_color = get_theme_color(SNAME("error_color"), SNAME("Editor")); Color supported_color = get_theme_color(SNAME("warning_color"), SNAME("Editor")); - static bool low_driver = ProjectSettings::get_singleton()->get("rendering/driver/driver_name") == "opengl"; + static bool low_driver = ProjectSettings::get_singleton()->get("rendering/driver/driver_name") == "opengl3"; Map<String, TreeItem *> folders; diff --git a/editor/project_manager.cpp b/editor/project_manager.cpp index 8d14fa899e..dc35e01a56 100644 --- a/editor/project_manager.cpp +++ b/editor/project_manager.cpp @@ -478,7 +478,7 @@ private: if (rasterizer_button_group->get_pressed_button()->get_meta("driver_name") == "Vulkan") { initial_settings["rendering/driver/driver_name"] = "Vulkan"; } else { - initial_settings["rendering/driver/driver_name"] = "OpenGL"; + initial_settings["rendering/driver/driver_name"] = "OpenGL3"; initial_settings["rendering/textures/vram_compression/import_etc2"] = false; initial_settings["rendering/textures/vram_compression/import_etc"] = true; } |