Commit Graph

1117 Commits

Author SHA1 Message Date
7cc9998809 Edit Mesh: Center text when Edge length & Edge Angle is activated
This is more readable as the informations will never overlap and be off the
center of the edge.
2018-09-25 22:51:54 +02:00
af998b40a0 Implement correct drawing of advanced Weight display features.
This adds existing behavior from calc_weightpaint_vert_array
that was missing from the new rendering code:

- No selected Vertex Group displays as a solid pink color.
- Zero weight displays as alert color depending on Options.
- Multipaint mode correctly displays collective weight.

In order to properly implement this variety, a data structure
holding all relevant parameters is introduced.

Reviewers: fclem, campbellbarton

Subscribers: jbakker

Differential Revision: https://developer.blender.org/D3722
2018-09-25 18:44:57 +03:00
2ece296d4f Wireframe Mode: Fix missing wireframe if overlays are disabled 2018-09-21 18:29:25 +02:00
684739c6f9 Fix: missing cache invalidation when the active vertex group changed
Reviewers: brecht

Differential Revision: https://developer.blender.org/D3716
2018-09-21 16:20:32 +02:00
37fea2c0f0 Edit Mode: Merge Xray and "Limit selection to visible" options behaviour
We now treat Xray as being the mode where Limit selection to visible is off.
If Xray is OFF, Limit selection to visible is considered ON.

To allow 'see through wires' with solid shading (not Xray shading) we still
draw solid shading if Xray is ON with Xray Alpha set to 1.0.
2018-09-21 15:45:03 +02:00
3523958de9 DRW: Add back wireframe mode
This is using the existing engine (workbench forward) with 0.0 xray_alpha
and forcing wireframes on all objects.

There is no workflow/shortcut changes in this commit.
2018-09-21 15:45:03 +02:00
73ac72fa89 DRW: Fix crash when new shader requires 0 customdata layers
It was using last cache->auto_layer_len which led to a buffer overflow.
2018-09-19 20:02:12 +02:00
7ad8272952 DRW: Only trash UV and tangent data when using BKE_MESH_BATCH_DIRTY_SHADING
This improves the problem encountered when animating materials on static
meshes but does not fix the core issue. See T55326.
2018-09-19 20:02:12 +02:00
6b433f4eb3 Merge branch 'master' into blender2.8 2018-09-19 18:20:50 +02:00
f35e9f047a Merge branch 'master' into blender2.8 2018-09-19 12:14:36 +10:00
ad8b187a53 Fix T56803: Indirect lightning bake crashes Blender 2018-09-17 12:20:51 +02:00
b62d140be9 Object Mode: Make Flat object outline visible in orthographic view 2018-09-14 18:32:04 +02:00
e37479ad89 GPUBuffers: Rework support for pbvh grids + fast navigate
Flat shaded grids are now rendered as a long triangle strip with
degenerate triangles.

Smooth shaded grids are not changed.

Also add back fast navigate. The only difference with 2.79 is that fast
navigate + flat shading will show slitly "incorrect" smooth face. But that's too
much effort to fix for what it is.
2018-09-14 12:20:01 +02:00
39fabaddfd GPU: Remove residue of OpenSubdiv
Was done more like a hack on top of old drawing pipeline.
Should be re-implemented to fit new draw manager closer.
2018-09-12 14:30:28 +02:00
57f9e31bf4 DRW: Convert common theme color to linear for viewport render
This is not 100% correct (it should use a transfer function depending
on the display profile) but this is already much better than using srgb.
2018-09-11 17:05:16 +02:00
998a804358 DRW: Don't highjack all debug values (cont) 2018-09-11 16:34:52 +02:00
1a590c7a1c DRW: Don't highjack all debug values 2018-09-11 16:27:55 +02:00
5a1e9e5af8 Fix T56722: Crash - Entering mesh Edit Mode.
Seriously...
2018-09-08 11:19:07 +02:00
cbab3e1e90 Cleanup: Unused undef
That symbol is never defined.
2018-09-07 11:04:54 +02:00
457df4fa9b Edit Mesh: Add support for draw option parameters
The visuals was already implemented but we could not toggle them off.
2018-09-05 19:00:13 +02:00
c05b9bbcc0 Fix T56692: The edges are not highlighted in Mark Freestyle Edge
This was not ported yet.
2018-09-05 19:00:12 +02:00
ecbfc7ade5 Fix T56524: Navigate Gizmo obscured by objects in orthographic view 2018-09-04 22:25:58 +02:00
30ae0ce0e1 Xray: Add possibility to select wires in priority before surfaces
If no wires were found, try to select surfaces in a second loop.
2018-09-04 17:15:00 +02:00
3140304940 Cleanup: overly polite/rude messages 2018-09-04 18:45:17 +10:00
ae57383648 Cleanup: comment blocks 2018-09-02 18:28:27 +10:00
Dalai Felinto
f436e0acab Cleanup: GPU_BATCH_DISCARD_ARRAY_SAFE (deduplicate existing code) 2018-08-30 17:49:05 -03:00
84cc111e8b 3D View: scale edit-mesh drawing by pixel size 2018-08-30 14:28:50 +10:00
4b89bf88c7 Revert "DRW: Remove unecessary GL calls"
This reverts commit f8c857ad72.
2018-08-27 18:02:48 +02:00
44f04b5f53 Draw Manager: Remove unused function
Signed-off-by: fclem
2018-08-27 12:10:31 -03:00
f8c857ad72 DRW: Remove unecessary GL calls 2018-08-26 23:54:47 +02:00
0ba3a1a686 Sculpt: Optimize Mask Overlay drawing
* Remove support for diffuse color in the pbvh buffers.
* Upload raw data to GPU.
* Only draw nodes that have mask data when drawing the overlay.

This should fix T56466
2018-08-24 16:46:59 +02:00
0cf12dfc14 Cleanup: indentation, style 2018-08-24 10:32:57 +10:00
Dalai Felinto
613523d5f5 Rename: *_batch_cache_dirty > *_batch_cache_dirty_tag 2018-08-23 10:20:16 -03:00
55f122264c 3D Grid: Fix grid passing through objects too much
For this we need to add a bias depending on the viewing angle.
But increasing the hardness of the test make float precision issues in
the mesh transformation more prominent (actual geometry is far below the
surface). So to solve this issue we use a more subdivided grid mesh
8x8 quads instead of 1 triangle.
2018-08-23 13:56:39 +02:00
890623f886 Object Mode: Add back spot cone display 2018-08-22 19:49:32 +02:00
644fe7c90c DRW: Fix wrong framebuffer bound after background pass 2018-08-22 15:23:03 +02:00
ddc09790d8 DRW: Fix T56418 and T56474 in a more robust way 2018-08-22 13:51:03 +02:00
d67c86d42a Revert "Fix T56418: Changing to Solid View crashes Blender"
This reverts commit 1e26345a89.
2018-08-22 13:51:03 +02:00
6489243332 DRW: Fix background image display
This make the workbench draw everything in the background routine just like
eevee. This is because the workbench uses floating point buffers too and
rendering background to this buffer makes it incorrect without proper
color management.

This could be improved because in xray the background is not blended but
dithered as it's drawn after the main pass.
2018-08-22 13:51:02 +02:00
7eaf00bfb0 Cleanup: style 2018-08-22 10:10:12 +10:00
31a1c2b7d2 Object Mode: Add back support for the object "Maximum draw type" option 2018-08-20 13:19:17 +02:00
52d75d5127 Overlay: Add support for per object wirefram options
This patch has a known bug on AMD + mesa because of the drivers. I will
send a bug report to mesa.
2018-08-20 10:46:11 +02:00
76ea32d192 Cleanup: unused warning 2018-08-20 11:29:23 +10:00
353e691ff9 DRW: Fix crash in defered compilation 2018-08-18 12:58:15 +02:00
6cad7984c6 Fix missing shader compilation progress bar. 2018-08-17 15:55:21 +02:00
435f308eed Object Mode: Use same empty (arrow) drawing as the bone axes display 2018-08-17 13:04:26 +02:00
1e26345a89 Fix T56418: Changing to Solid View crashes Blender
Everything seems to behave like it should when drawdata is alloced
on instances.
2018-08-16 23:58:29 +02:00
a01dec2d9c Cleanup: Remove unused uniform and UBO. 2018-08-16 23:58:24 +02:00
cb65542d2c DRW: Fix incorrect default stencil value 2018-08-14 21:38:13 +02:00
efd44f8480 Cleanup: GPU codegen: remove most of legacy code
A lot of code in codegen was used by previous GLSL system.
Now most of it is not used due to all the things being written from scratch
in 2.8 and we can clean most of it.

As a side not this make the system a bit less flexible (no support for
cubemaps, preview image, etc...) but can be extended again.
2018-08-13 23:01:18 +02:00