#include </home/runner/work/OrcaSlicer/OrcaSlicer/src/slic3r/GUI/OpenGLManager.hpp>
Classes | |
| class | GLInfo |
Public Types | |
| enum class | EFramebufferType : unsigned char { Unknown , Arb , Ext } |
Public Member Functions | |
| OpenGLManager ()=default | |
| ~OpenGLManager () | |
| bool | init_gl (bool popup_error=true) |
| wxGLContext * | init_glcontext (wxGLCanvas &canvas, const std::pair< int, int > &required_opengl_version, bool enable_compatibility_profile, bool enable_debug) |
| GLShaderProgram * | get_shader (const std::string &shader_name) |
| GLShaderProgram * | get_current_shader () |
Static Public Member Functions | |
| static bool | are_compressed_textures_supported () |
| static bool | can_multisample () |
| static bool | are_framebuffers_supported () |
| static EFramebufferType | get_framebuffers_type () |
| static wxGLCanvas * | create_wxglcanvas (wxWindow &parent) |
| static bool | is_scene_canvas (const wxWindow *window) |
| static const GLInfo & | get_gl_info () |
| static bool | force_power_of_two_textures () |
Private Types | |
| enum class | EMultisampleState : unsigned char { Unknown , Enabled , Disabled } |
Static Private Member Functions | |
| static void | detect_multisample (int *attribList) |
Private Attributes | |
| bool | m_gl_initialized { false } |
| wxGLContext * | m_context { nullptr } |
| GLShadersManager | m_shaders_manager |
Static Private Attributes | |
| static GLInfo | s_gl_info |
| static bool | s_compressed_textures_supported = false |
| static bool | s_force_power_of_two_textures = false |
| static EMultisampleState | s_multisample = OpenGLManager::EMultisampleState::Unknown |
| static EFramebufferType | s_framebuffers_type = OpenGLManager::EFramebufferType::Unknown |
|
strong |
|
strongprivate |
|
default |
| Slic3r::GUI::OpenGLManager::~OpenGLManager | ( | ) |
References m_context, and m_shaders_manager.
|
inlinestatic |
References s_compressed_textures_supported.
Referenced by Slic3r::GUI::GLCanvas3D::_render_frame(), Slic3r::GUI::Emboss::StyleManager::create_imgui_font(), Slic3r::GUI::GLTexture::generate_from_text(), Slic3r::GUI::GLTexture::generate_texture_from_text(), Slic3r::GUI::GLTexture::load_from_png(), Slic3r::GUI::GLTexture::load_from_svg(), and Slic3r::GUI::GLTexture::load_from_svg_files_as_sprites_array().
|
inlinestatic |
References s_framebuffers_type, and Unknown.
|
inlinestatic |
References Enabled, and s_multisample.
Referenced by Slic3r::GUI::DesignCanvas::DesignCanvas(), create_wxglcanvas(), Slic3r::GUI::anonymous_namespace{UVEditorCanvas.cpp}::gl_attrib_list(), Slic3r::GUI::AssembleView::init(), Slic3r::GUI::Preview::init(), Slic3r::GUI::View3D::init(), Slic3r::GUI::GLCanvas3D::render_thumbnail_framebuffer(), and Slic3r::GUI::GLCanvas3D::render_thumbnail_framebuffer_ext().
|
static |
References can_multisample(), detect_multisample(), Disabled, Slic3r::GUI::get_app_config(), GL_FALSE, GL_TRUE, s_multisample, Slic3r::GUI::SCENE_CANVAS_NAME, SETTING_OPENGL_AA_SAMPLES, and Unknown.
Referenced by Slic3r::GUI::DesignCanvas::DesignCanvas(), Slic3r::GUI::AssembleView::init(), Slic3r::GUI::Preview::init(), and Slic3r::GUI::View3D::init().
|
staticprivate |
References Disabled, Enabled, Slic3r::LinuxOnChromium, Slic3r::platform_flavor(), and s_multisample.
Referenced by create_wxglcanvas().
|
inlinestatic |
References s_force_power_of_two_textures.
Referenced by Slic3r::GUI::GLTexture::load_from_png(), and Slic3r::GUI::GLTexture::load_from_svg().
|
inline |
References m_shaders_manager.
|
inlinestatic |
References s_framebuffers_type.
Referenced by Slic3r::GUI::GLCanvas3D::_rectangular_selection_picking_pass(), Slic3r::GUI::GLCanvas3D::_render_shadows(), Slic3r::GUI::CalibUtils::process_and_store_3mf(), Slic3r::GUI::GLCanvas3D::render_thumbnail(), Slic3r::GUI::GLCanvas3D::render_thumbnail(), Slic3r::GLVolume::render_with_outline(), and Slic3r::CLI::run().
|
inlinestatic |
References s_gl_info.
Referenced by Slic3r::GUI::GLCanvas3D::_render_frame(), Slic3r::GUI::GLCanvas3D::_render_wireframe_overlay(), Slic3r::anonymous_namespace{PluginHostApp.cpp}::export_3mf_copy(), Slic3r::GUI::TriangleSelectorPatch::finalize_triangle_indices(), Slic3r::GUI::GLMmSegmentationGizmo3DScene::finalize_vertices(), Slic3r::GUI::PartPlateList::generate_icon_textures(), Slic3r::GUI::generate_system_info_json(), Slic3r::GUI::GUI_App::get_gl_info(), Slic3r::GUI::TroubleshootDialog::GetGPUinfo(), Slic3r::anonymous_namespace{PluginHostApp.cpp}::gl_info(), Slic3r::GLShadersManager::init(), Slic3r::GUI::GLCanvas3D::LayersEditing::init(), init_gl(), Slic3r::GUI::GLTexture::load_from_png(), Slic3r::GUI::GLTexture::load_from_raw_data(), Slic3r::GUI::GLTexture::load_from_svg(), Slic3r::GUI::logo_texture_size(), Slic3r::GUI::GLGizmoMove3D::on_render(), Slic3r::GUI::GLGizmoRotate::on_render(), Slic3r::GUI::GLGizmoScale3D::on_render(), Slic3r::GUI::GLGizmoSimplify::on_render(), Slic3r::GUI::GLMmSegmentationGizmo3DScene::release_geometry(), Slic3r::GUI::TriangleSelectorPatch::release_geometry(), Slic3r::GLVolumeCollection::render(), Slic3r::GUI::GLMmSegmentationGizmo3DScene::render(), Slic3r::GUI::GLModel::render(), Slic3r::GUI::GLSelectionRectangle::render(), Slic3r::GUI::TriangleSelectorPatch::render(), Slic3r::GUI::GLGizmoTextureDisplacement::render_adjust_texture_gizmo(), Slic3r::GUI::Selection::render_bounding_box(), Slic3r::GUI::GLGizmoBase::render_cross_mark(), Slic3r::GUI::GLGizmoPainterBase::render_cursor_circle(), Slic3r::GUI::GLGizmoPainterBase::render_cursor_height_range(), Slic3r::GUI::GLGizmoMeasure::render_dimensioning(), Slic3r::GUI::ImGuiWrapper::render_draw_data(), Slic3r::GUI::GLGizmoScale3D::render_grabbers_connection(), Slic3r::GUI::PartPlate::render_grid(), Slic3r::GUI::PartPlate::render_height_limit(), Slic3r::GUI::GLModel::render_instanced(), Slic3r::GUI::TriangleSelectorGUI::render_paint_contour(), Slic3r::GUI::GLCanvas3D::LayersEditing::render_profile(), Slic3r::GUI::GLGizmoTextureDisplacement::render_seam_overlay(), Slic3r::GUI::anonymous_namespace{SceneBenchmark.cpp}::SceneBenchmarkDialog::report(), Slic3r::GUI::DesignCanvas::request_repaint(), Slic3r::GUI::GLModel::reset(), and Slic3r::GUI::GLModel::send_to_gpu().
|
inline |
References m_shaders_manager.
Referenced by Slic3r::CLI::run().
| bool Slic3r::GUI::OpenGLManager::init_gl | ( | bool | popup_error = true | ) |
References _L, _utf8, Arb, Ext, Slic3r::GUI::from_u8(), get_gl_info(), GLAD_GL_ARB_framebuffer_object, GLAD_GL_EXT_framebuffer_object, GLAD_GL_EXT_texture_compression_s3tc, GLAD_VERSION_MAJOR, GLAD_VERSION_MINOR, gladLoaderLoadGL(), gladLoadGL(), L, m_gl_initialized, m_shaders_manager, s_compressed_textures_supported, s_force_power_of_two_textures, s_framebuffers_type, s_gl_info, and Unknown.
Referenced by Slic3r::CLI::run().
| wxGLContext * Slic3r::GUI::OpenGLManager::init_glcontext | ( | wxGLCanvas & | canvas, |
| const std::pair< int, int > & | required_opengl_version, | ||
| bool | enable_compatibility_profile, | ||
| bool | enable_debug ) |
References Slic3r::GUI::OpenGLVersions::core, and m_context.
|
static |
References Slic3r::GUI::SCENE_CANVAS_NAME.
Referenced by Slic3r::GUI::anonymous_namespace{MainFrame.cpp}::focused_canvas_imgui().
|
private |
Referenced by ~OpenGLManager(), and init_glcontext().
|
private |
Referenced by init_gl().
|
private |
Referenced by ~OpenGLManager(), get_current_shader(), get_shader(), and init_gl().
|
staticprivate |
Referenced by are_compressed_textures_supported(), and init_gl().
|
staticprivate |
Referenced by force_power_of_two_textures(), and init_gl().
|
staticprivate |
Referenced by are_framebuffers_supported(), get_framebuffers_type(), and init_gl().
|
staticprivate |
Referenced by get_gl_info(), and init_gl().
|
staticprivate |
Referenced by can_multisample(), create_wxglcanvas(), and detect_multisample().