1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-06 12:20:30 +00:00

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.
This commit is contained in:
Clay John
2021-10-26 08:18:39 -07:00
committed by Hugo Locurcio
parent ce97ddbcb1
commit 8a10bb7d0d
83 changed files with 2155 additions and 8187 deletions

View File

@@ -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,23 +6633,23 @@ 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
// Add the driver to the UI.
rendering_driver->add_item(driver);
rendering_driver->set_item_metadata(i, driver);
// lower case for standard comparison
// Lowercase for standard comparison.
driver = driver.to_lower();
if (current_rendering_driver == driver) {
@@ -6673,29 +6657,6 @@ EditorNode::EditorNode() {
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);
rendering_driver->add_item(driver);
rendering_driver->set_item_metadata(i, driver);
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);