mirror of
				https://github.com/SoftFever/OrcaSlicer.git
				synced 2025-10-31 04:31:15 -06:00 
			
		
		
		
	Removed 'Use legacy OpenGL 1.1 rendering' option
This commit is contained in:
		
							parent
							
								
									27cc66eb54
								
							
						
					
					
						commit
						3d755e1bbe
					
				
					 6 changed files with 11 additions and 37 deletions
				
			
		|  | @ -54,10 +54,9 @@ void AppConfig::set_defaults() | |||
|     if (get("preset_update").empty()) | ||||
|         set("preset_update", "1"); | ||||
| 
 | ||||
|     // Use OpenGL 1.1 even if OpenGL 2.0 is available. This is mainly to support some buggy Intel HD Graphics drivers.
 | ||||
|     // github.com/prusa3d/PrusaSlicer/issues/233
 | ||||
|     if (get("use_legacy_opengl").empty()) | ||||
|         set("use_legacy_opengl", "0"); | ||||
|     // remove old 'use_legacy_opengl' parameter from this config, if present
 | ||||
|     if (!get("use_legacy_opengl").empty()) | ||||
|         erase("", "use_legacy_opengl"); | ||||
| 
 | ||||
| #if __APPLE__ | ||||
|     if (get("use_retina_opengl").empty()) | ||||
|  |  | |||
|  | @ -198,8 +198,7 @@ void GLCanvas3D::Shader::_reset() | |||
| #endif // !ENABLE_TEXTURES_FROM_SVG
 | ||||
| 
 | ||||
| GLCanvas3D::LayersEditing::LayersEditing() | ||||
|     : m_use_legacy_opengl(false) | ||||
|     , m_enabled(false) | ||||
|     : m_enabled(false) | ||||
|     , m_z_texture_id(0) | ||||
|     , m_model_object(nullptr) | ||||
|     , m_object_max_z(0.f) | ||||
|  | @ -274,12 +273,7 @@ void GLCanvas3D::LayersEditing::select_object(const Model &model, int object_id) | |||
| 
 | ||||
| bool GLCanvas3D::LayersEditing::is_allowed() const | ||||
| { | ||||
|     return !m_use_legacy_opengl && m_shader.is_initialized() && m_shader.get_shader()->shader_program_id > 0 && m_z_texture_id > 0; | ||||
| } | ||||
| 
 | ||||
| void GLCanvas3D::LayersEditing::set_use_legacy_opengl(bool use_legacy_opengl) | ||||
| { | ||||
|     m_use_legacy_opengl = use_legacy_opengl; | ||||
|     return m_shader.is_initialized() && m_shader.get_shader()->shader_program_id > 0 && m_z_texture_id > 0; | ||||
| } | ||||
| 
 | ||||
| bool GLCanvas3D::LayersEditing::is_enabled() const | ||||
|  | @ -1253,7 +1247,7 @@ void GLCanvas3D::post_event(wxEvent &&event) | |||
|     wxPostEvent(m_canvas, event); | ||||
| } | ||||
| 
 | ||||
| bool GLCanvas3D::init(bool useVBOs, bool use_legacy_opengl) | ||||
| bool GLCanvas3D::init(bool useVBOs) | ||||
| { | ||||
|     if (m_initialized) | ||||
|         return true; | ||||
|  | @ -1311,7 +1305,6 @@ bool GLCanvas3D::init(bool useVBOs, bool use_legacy_opengl) | |||
|         return false; | ||||
| 
 | ||||
|     m_use_VBOs = useVBOs; | ||||
|     m_layers_editing.set_use_legacy_opengl(use_legacy_opengl); | ||||
| 
 | ||||
|     // on linux the gl context is not valid until the canvas is not shown on screen
 | ||||
|     // we defer the geometry finalization of volumes until the first call to render()
 | ||||
|  |  | |||
|  | @ -197,7 +197,6 @@ class GLCanvas3D | |||
|         static const float THICKNESS_BAR_WIDTH; | ||||
|         static const float THICKNESS_RESET_BUTTON_HEIGHT; | ||||
| 
 | ||||
|         bool                        m_use_legacy_opengl; | ||||
|         bool                        m_enabled; | ||||
|         Shader                      m_shader; | ||||
|         unsigned int                m_z_texture_id; | ||||
|  | @ -250,7 +249,6 @@ class GLCanvas3D | |||
|         void select_object(const Model &model, int object_id); | ||||
| 
 | ||||
|         bool is_allowed() const; | ||||
|         void set_use_legacy_opengl(bool use_legacy_opengl); | ||||
| 
 | ||||
|         bool is_enabled() const; | ||||
|         void set_enabled(bool enabled); | ||||
|  | @ -492,7 +490,7 @@ public: | |||
|     wxGLCanvas* get_wxglcanvas() { return m_canvas; } | ||||
| 	const wxGLCanvas* get_wxglcanvas() const { return m_canvas; } | ||||
| 
 | ||||
|     bool init(bool useVBOs, bool use_legacy_opengl); | ||||
|     bool init(bool useVBOs); | ||||
|     void post_event(wxEvent &&event); | ||||
| 
 | ||||
|     void set_as_dirty(); | ||||
|  |  | |||
|  | @ -192,7 +192,6 @@ GLCanvas3DManager::GLInfo GLCanvas3DManager::s_gl_info; | |||
| GLCanvas3DManager::GLCanvas3DManager() | ||||
|     : m_context(nullptr) | ||||
|     , m_gl_initialized(false) | ||||
|     , m_use_legacy_opengl(false) | ||||
|     , m_use_VBOs(false) | ||||
| { | ||||
| } | ||||
|  | @ -268,8 +267,7 @@ void GLCanvas3DManager::init_gl() | |||
|     { | ||||
|         glewInit(); | ||||
|         const AppConfig* config = GUI::get_app_config(); | ||||
|         m_use_legacy_opengl = (config == nullptr) || (config->get("use_legacy_opengl") == "1"); | ||||
|         m_use_VBOs = !m_use_legacy_opengl && s_gl_info.is_version_greater_or_equal_to(2, 0); | ||||
|         m_use_VBOs = s_gl_info.is_version_greater_or_equal_to(2, 0); | ||||
|         m_gl_initialized = true; | ||||
|         if (GLEW_EXT_texture_compression_s3tc) | ||||
|             s_compressed_textures_supported = true; | ||||
|  | @ -325,16 +323,14 @@ bool GLCanvas3DManager::init(GLCanvas3D& canvas) | |||
|     if (!m_gl_initialized) | ||||
|         init_gl(); | ||||
| 
 | ||||
|     return canvas.init(m_use_VBOs, m_use_legacy_opengl); | ||||
|     return canvas.init(m_use_VBOs); | ||||
| } | ||||
| 
 | ||||
| void GLCanvas3DManager::detect_multisample(int* attribList) | ||||
| { | ||||
|     int wxVersion = wxMAJOR_VERSION * 10000 + wxMINOR_VERSION * 100 + wxRELEASE_NUMBER; | ||||
|     const AppConfig* app_config = GUI::get_app_config(); | ||||
|     bool enable_multisample = app_config != nullptr | ||||
|         && app_config->get("use_legacy_opengl") != "1" | ||||
|         && wxVersion >= 30003; | ||||
|     bool enable_multisample = wxVersion >= 30003; | ||||
| 
 | ||||
|     s_multisample = (enable_multisample && wxGLCanvas::IsDisplaySupported(attribList)) ? MS_Enabled : MS_Disabled; | ||||
|     // Alternative method: it was working on previous version of wxWidgets but not with the latest, at least on Windows
 | ||||
|  |  | |||
|  | @ -75,7 +75,6 @@ private: | |||
|     wxGLContext* m_context; | ||||
|     static GLInfo s_gl_info; | ||||
|     bool m_gl_initialized; | ||||
|     bool m_use_legacy_opengl; | ||||
|     bool m_use_VBOs; | ||||
|     static EMultisampleState s_multisample; | ||||
|     static bool s_compressed_textures_supported; | ||||
|  |  | |||
|  | @ -97,16 +97,6 @@ void PreferencesDialog::build() | |||
| 	option = Option (def,"show_incompatible_presets"); | ||||
| 	m_optgroup->append_single_option_line(option); | ||||
| 
 | ||||
|     // TODO: remove?
 | ||||
| 	def.label = L("Use legacy OpenGL 1.1 rendering"); | ||||
| 	def.type = coBool; | ||||
| 	def.tooltip = L("If you have rendering issues caused by a buggy OpenGL 2.0 driver, " | ||||
| 					  "you may try to check this checkbox. This will disable the layer height " | ||||
| 					  "editing and anti aliasing, so it is likely better to upgrade your graphics driver."); | ||||
| 	def.set_default_value(new ConfigOptionBool{ app_config->get("use_legacy_opengl") == "1" }); | ||||
| 	option = Option (def,"use_legacy_opengl"); | ||||
| 	m_optgroup->append_single_option_line(option); | ||||
| 
 | ||||
| #if __APPLE__ | ||||
| 	def.label = L("Use Retina resolution for the 3D scene"); | ||||
| 	def.type = coBool; | ||||
|  | @ -150,8 +140,7 @@ void PreferencesDialog::build() | |||
| 
 | ||||
| void PreferencesDialog::accept() | ||||
| { | ||||
| 	if (m_values.find("no_defaults")       != m_values.end() || | ||||
| 		m_values.find("use_legacy_opengl") != m_values.end()) { | ||||
|     if (m_values.find("no_defaults") != m_values.end()) { | ||||
|         warning_catcher(this, wxString::Format(_(L("You need to restart %s to make the changes effective.")), SLIC3R_APP_NAME)); | ||||
| 	} | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Enrico Turri
						Enrico Turri