diff options
author | Campbell Barton <ideasman42@gmail.com> | 2019-03-05 17:14:13 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2019-03-05 17:26:30 +0300 |
commit | 6fd0d810b4ed9e5f0650ddae77dfcca57fe598a3 (patch) | |
tree | 10d19f3a32569ac86bdbd0b41e76fd990d85d2ec /source/blender/draw/modes/shaders/armature_sphere_solid_vert.glsl | |
parent | 68a0d3503677944e30fe4a12f526c28bbbaf062b (diff) |
DRW: support clipping for bone verts
Diffstat (limited to 'source/blender/draw/modes/shaders/armature_sphere_solid_vert.glsl')
-rw-r--r-- | source/blender/draw/modes/shaders/armature_sphere_solid_vert.glsl | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/source/blender/draw/modes/shaders/armature_sphere_solid_vert.glsl b/source/blender/draw/modes/shaders/armature_sphere_solid_vert.glsl index 5ecc1569e85..0a2a2959120 100644 --- a/source/blender/draw/modes/shaders/armature_sphere_solid_vert.glsl +++ b/source/blender/draw/modes/shaders/armature_sphere_solid_vert.glsl @@ -73,10 +73,16 @@ void main() /* Camera oriented position (but still in local space) */ vec3 cam_pos = x_axis * pos.x + y_axis * pos.y + z_axis * z_ofs; - vec4 V = model_view_matrix * vec4(cam_pos, 1.0); + vec4 pos_4d = vec4(cam_pos, 1.0); + vec4 V = model_view_matrix * pos_4d; gl_Position = ProjectionMatrix * V; viewPosition = V.xyz; finalStateColor = stateColor; finalBoneColor = boneColor; + +#ifdef USE_WORLD_CLIP_PLANES + vec4 worldPosition = InstanceModelMatrix * pos_4d; + world_clip_planes_calc_clip_distance(worldPosition.xyz); +#endif } |