diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2019-02-04 22:06:30 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2019-02-05 17:02:15 +0300 |
commit | a131514d0f79f7b82be526438c125e35beab9f8f (patch) | |
tree | 16fb27a321d52435ba4f3e3e1f2cbaf4c36572ac /source/blender/draw/intern/draw_manager_exec.c | |
parent | 112cf6eadff5642af21235aa1cd4eaecd575755d (diff) |
Edit Mesh: Fix some problem with new implementation
- Add manual depth offset to vertices and edges.
- Revert to plain edge decoration.
- Fix active edge coloring.
- Remove active face display if not in face selection mode.
- Add wide line support.
Diffstat (limited to 'source/blender/draw/intern/draw_manager_exec.c')
-rw-r--r-- | source/blender/draw/intern/draw_manager_exec.c | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/source/blender/draw/intern/draw_manager_exec.c b/source/blender/draw/intern/draw_manager_exec.c index 8147da90899..9bdd5d2ae93 100644 --- a/source/blender/draw/intern/draw_manager_exec.c +++ b/source/blender/draw/intern/draw_manager_exec.c @@ -183,15 +183,23 @@ void drw_state_set(DRWState state) /* Wire Width */ { - if (CHANGED_ANY(DRW_STATE_WIRE | DRW_STATE_WIRE_SMOOTH)) { - if ((state & DRW_STATE_WIRE_SMOOTH) != 0) { + int test; + if (CHANGED_ANY_STORE_VAR( + DRW_STATE_WIRE | DRW_STATE_WIRE_WIDE | DRW_STATE_WIRE_SMOOTH, + test)) + { + if (test & DRW_STATE_WIRE_WIDE) { + GPU_line_width(3.0f); + } + else if (test & DRW_STATE_WIRE_SMOOTH) { GPU_line_width(2.0f); GPU_line_smooth(true); } - else if ((state & DRW_STATE_WIRE) != 0) { + else if (test & DRW_STATE_WIRE) { GPU_line_width(1.0f); } else { + GPU_line_width(1.0f); GPU_line_smooth(false); } } |