mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-13 01:37:53 -06:00
Various fixes
This commit is contained in:
parent
a50c5a2b7a
commit
fe78e40cb4
26 changed files with 176 additions and 58 deletions
|
@ -6417,14 +6417,7 @@ void GLCanvas3D::_picking_pass()
|
|||
_render_plates_for_picking(camera.get_view_matrix(), camera.get_projection_matrix());
|
||||
}
|
||||
|
||||
m_camera_clipping_plane = m_gizmos.get_clipping_plane();
|
||||
if (m_camera_clipping_plane.is_active()) {
|
||||
::glClipPlane(GL_CLIP_PLANE0, (GLdouble*)m_camera_clipping_plane.get_data());
|
||||
::glEnable(GL_CLIP_PLANE0);
|
||||
}
|
||||
_render_volumes_for_picking();
|
||||
if (m_camera_clipping_plane.is_active())
|
||||
::glDisable(GL_CLIP_PLANE0);
|
||||
|
||||
//BBS: remove the bed picking logic
|
||||
//_render_bed_for_picking(!wxGetApp().plater()->get_camera().is_looking_downward());
|
||||
|
@ -7163,7 +7156,7 @@ void GLCanvas3D::_render_style_editor()
|
|||
|
||||
void GLCanvas3D::_render_volumes_for_picking() const
|
||||
{
|
||||
GLShaderProgram* shader = wxGetApp().get_shader("flat");
|
||||
GLShaderProgram* shader = wxGetApp().get_shader("flat_clip");
|
||||
if (shader == nullptr)
|
||||
return;
|
||||
|
||||
|
@ -7186,6 +7179,9 @@ void GLCanvas3D::_render_volumes_for_picking() const
|
|||
const Camera& camera = wxGetApp().plater()->get_camera();
|
||||
shader->set_uniform("view_model_matrix", camera.get_view_matrix() * volume.first->world_matrix());
|
||||
shader->set_uniform("projection_matrix", camera.get_projection_matrix());
|
||||
shader->set_uniform("volume_world_matrix", volume.first->world_matrix());
|
||||
shader->set_uniform("z_range", m_volumes.get_z_range());
|
||||
shader->set_uniform("clipping_plane", m_volumes.get_clipping_plane());
|
||||
volume.first->picking = true;
|
||||
volume.first->render();
|
||||
volume.first->picking = false;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue