Fixed darker colors of objects inside multi-material gizmo when objects are mirrored.
This commit is contained in:
parent
9651ff19ef
commit
0f9a9de745
2 changed files with 6 additions and 0 deletions
|
@ -22,6 +22,8 @@ uniform vec4 uniform_color;
|
||||||
varying vec3 clipping_planes_dots;
|
varying vec3 clipping_planes_dots;
|
||||||
varying vec4 model_pos;
|
varying vec4 model_pos;
|
||||||
|
|
||||||
|
uniform bool volume_mirrored;
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
{
|
{
|
||||||
if (any(lessThan(clipping_planes_dots, ZERO)))
|
if (any(lessThan(clipping_planes_dots, ZERO)))
|
||||||
|
@ -34,6 +36,9 @@ void main()
|
||||||
triangle_normal = -triangle_normal;
|
triangle_normal = -triangle_normal;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
if (volume_mirrored)
|
||||||
|
triangle_normal = -triangle_normal;
|
||||||
|
|
||||||
// First transform the normal into camera space and normalize the result.
|
// First transform the normal into camera space and normalize the result.
|
||||||
vec3 eye_normal = normalize(gl_NormalMatrix * triangle_normal);
|
vec3 eye_normal = normalize(gl_NormalMatrix * triangle_normal);
|
||||||
|
|
||||||
|
|
|
@ -203,6 +203,7 @@ void GLGizmoMmuSegmentation::render_triangles(const Selection &selection) const
|
||||||
glsafe(::glMultMatrixd(trafo_matrix.data()));
|
glsafe(::glMultMatrixd(trafo_matrix.data()));
|
||||||
|
|
||||||
shader->set_uniform("volume_world_matrix", trafo_matrix);
|
shader->set_uniform("volume_world_matrix", trafo_matrix);
|
||||||
|
shader->set_uniform("volume_mirrored", is_left_handed);
|
||||||
m_triangle_selectors[mesh_id]->render(m_imgui);
|
m_triangle_selectors[mesh_id]->render(m_imgui);
|
||||||
|
|
||||||
glsafe(::glPopMatrix());
|
glsafe(::glPopMatrix());
|
||||||
|
|
Loading…
Add table
Reference in a new issue