c104b7b0b3
DWM: reuse position VBO for vpaint select overlay
2017-05-17 19:21:16 +10:00
a769c4a3a0
Fix weight-painting out of facemask mode w/ hidden faces
...
Own error in recent commit
2017-05-17 19:08:09 +10:00
Dalai Felinto
c8e96a8b6b
Fixup on weightpaint shader after rBfabd55a5e9
2017-05-17 10:35:36 +02:00
Dalai Felinto
fca52c42ae
Clay hair: use builtin reflect function
2017-05-17 10:21:08 +02:00
fabd55a5e9
DWM: hide hidden verts in weight-paint mode
2017-05-17 18:09:40 +10:00
c18c3ff3d5
Cleanup: line length
2017-05-17 17:37:23 +10:00
d41f98406f
DWM: minor changes to face-flag use
2017-05-17 17:27:20 +10:00
e74177d3b1
Correct own error in copying vertex color to VBO's
2017-05-17 17:14:10 +10:00
e074ac65a6
DWM: don't use engine drawing for paint modes
...
Also only use sculpt-mode drawing with the active object.
2017-05-17 17:06:55 +10:00
3926e3ef68
DWM: correct unselected face overlay
2017-05-17 16:41:21 +10:00
9995bd8532
DWM: use DRWContextState.obact
2017-05-17 16:08:36 +10:00
741a4cfc0b
DWM: Initial support vert & weight hidden faces
2017-05-17 16:01:18 +10:00
17458c511c
Cleanup: quiet warning
2017-05-17 13:38:06 +10:00
b4ec0e8cd5
DWM: use generic header for DRWCall
...
Avoid alignment mis-match casting between different draw-call types.
2017-05-17 12:58:58 +10:00
5bfeaf6cc1
Cleanup: group VBO attributes in a struct
...
Some names are a bit arbitrary,
this makes it clear which names are VBO attributes.
2017-05-17 12:36:02 +10:00
3d6361aa9c
Cleanup: clarify select terminology
...
In mesh cache we have select: color, id, bool.
Current naming didn't make this clear.
2017-05-17 11:47:31 +10:00
89483c73fd
DWM: write mesh data to the VBO directly
...
Was using intermediate functions to store each data type.
This is still done in some places (for more involved access).
For basic data: coords, normals, colors..etc this is unnecessarily indirect.
2017-05-17 11:34:42 +10:00
2f6bc53874
DWM: Add obact for convenience
...
Modes often need to check if the object is the active one.
2017-05-17 11:03:09 +10:00
8adec78ca5
Cleanup: remove GLSL version checks
2017-05-17 10:46:42 +10:00
58a810e640
Draw Manager: Add support for instance Batch.
...
Idea is to specify a batch as source of vbo instance attrib.
2017-05-16 20:30:17 +02:00
fa76c69627
Draw Manager: support render only mode.
2017-05-16 20:30:17 +02:00
90aff807ab
Draw Manager: Texture Memory usage improvement.
...
-Use 11_11_10 buffers for hdr content.
-Eevee compositing share 1 buffer if bloom and DOF are both activated.
-Fix slowdown when resizing EEVEE viewport.
-Removed DRW_BUF_*** enums causing confusion.
2017-05-16 20:30:17 +02:00
ddc5896c81
Draw Manager: Improve debug
2017-05-16 20:30:17 +02:00
2e8cb8d836
Draw Manager: Make use of texture reuse.
2017-05-16 20:30:17 +02:00
dc01586b40
Fix crash when particle display is below 100%
2017-05-16 17:42:14 +02:00
95547bd750
Minor cleanup in clay_engine.c
2017-05-16 16:43:48 +02:00
Dalai Felinto
3826e77593
Draw Manager: Small cleanup on bool and bitwise
...
We should avoid casting from an int to a flag.
In this case it is probably fine, but if the OB_MODE_SCULPT
was too high it can overflow the bool.
(also adding explicit parenthesis to a flag check)
2017-05-16 16:26:00 +02:00
Dalai Felinto
b11168c8f1
Clay/Hair: Only show hair when in object mode
2017-05-16 16:18:17 +02:00
c6da3c2655
Fix hair drawing with collection clay settings overrides
2017-05-16 16:07:45 +02:00
Dalai Felinto
e43597446e
Fix hair width changing
2017-05-16 14:55:36 +02:00
9619275729
Correct last commit, missing assignment
2017-05-16 18:47:43 +10:00
027ae0fdef
Fix sculpt dyntopo undo leaving PBVH at NULL
2017-05-16 18:38:45 +10:00
cbe97bc50f
Fix face-dot's not drawing
...
regression in d12d8956
2017-05-16 14:57:28 +10:00
a8aebc8dd1
Fix memory leak with mesh cache (w/ select invalidate)
2017-05-16 14:55:29 +10:00
d05d73ae75
Fix memory leak with mesh cache (missed last commit)
2017-05-16 13:06:23 +10:00
5a90542d3d
Fix memory leak with mesh cache
2017-05-16 11:45:23 +10:00
77d0aec3d1
Mesh Batch Cache: Use compressed format.
...
We don't compress UV by default because that would mean restricting them to [0, 1]
Leaving all other code for later settings switch.
2017-05-15 17:55:36 +02:00
9035aa9cee
Use better prng algo and fix randomness UI
2017-05-15 17:27:15 +02:00
392b5b8212
Implement matcaps for hair
2017-05-15 17:27:14 +02:00
c28a4eb8cb
Eevee: fix some glsl for low quality lamps.
2017-05-15 16:14:18 +02:00
e053fade99
Mesh Batch Cache: get rid of the ORCO VBO data, and reconstruct it in shader.
...
With only one MADD instruction we recover the orco data and reduce both the storage and the fetching cost of an attrib layer.
2017-05-15 16:14:18 +02:00
38125d0499
Mesh Batch Cache: Define Compressed format for shading data.
...
Deactivated by default.
All shading attribs can be packed to take less VRAM at the cost of precision (not noticable in this case).
UVs can be packed into I16 but that limits their positions into the [-1, +1] range.
This could be a setting option in the future.
2017-05-15 16:14:17 +02:00
f83a244749
Mesh Batch Cache: Optimization, make use of gawain attrib aliases.
2017-05-15 16:14:17 +02:00
acc5d02f69
Edit Mode Engine: Fix loose edges/verts not displaying.
2017-05-15 16:14:17 +02:00
5a377521aa
Mesh Batch Cache: Split Edit Mesh mode Vertex Buffers for faster update.
2017-05-15 16:14:17 +02:00
7d12d8956d
Sculpt: Move sculpt drawing to engines.
...
Only mask are handled by sculpt mode engine and are multiplied on top of the render.
There is room for improvement:
- Shaded meshes don't have correct tangents or uvs.
- Masks are in range 0.8 - 0.2 thus always darkening at least 20% the render.
- It only uses the first material slot of the mesh.
2017-05-12 17:54:14 +02:00
c986b07e4d
Draw Manager: Fix crash when saving file.
2017-05-12 16:31:12 +02:00
5aca575d85
Eevee: Add Rotation and ratio parameters to DoF.
2017-05-12 16:31:12 +02:00
0eb32ab228
Implement hair drawing with Draw Manager in Clay engine
...
Part of T51378
2017-05-12 16:14:55 +02:00
bd31b1f182
Clay: Use switch statement instead of if-else chain
2017-05-12 15:47:33 +02:00