e7fb013a60
Draw Manager: Add SceneLayerEngineData and use callbacks to clear runtime engine data
2017-05-30 22:30:16 +02:00
ec90780767
Gawain: Add support for rendering using an instance batch (for particles)
2017-05-29 16:28:54 +02:00
e104d82376
Object Mode Engine: Fixing the 3D grid 1/2
...
Do not use the inverse perspective matrix inside the shader to recover world positions.
That leads to severe float imprecision leading to nasty artifacts.
Instead we compute the world view vector for each pixels and do a ray to plane intersection.
We are still getting low precision derivatives when going far away from the origin, and thus artifacts.
This commit also fixes the non-appearing negative Z axis in 3D view.
2017-05-29 15:52:27 +02:00
Dalai Felinto
6dfe56f01a
Silence warning in draw manager
2017-05-26 17:51:08 +02:00
Dalai Felinto
3b24ece297
Depsgraph: Rename DAG > DEG functions from depsgraph_query.cc
2017-05-26 11:23:10 +02:00
e1c4908771
Temp fix for vertex format with batch instancing
...
This prevents memory alignment from being screwed up when attributes are
optimized out in shader.
2017-05-23 18:39:22 +02:00
9bc88b69d8
Implement particle velocity and acceleration visualization
2017-05-23 18:39:22 +02:00
da9c2607c4
DWM: Add short to float / int uniform function.
...
Short values are common in DNA, this enables using them directly without storing temporary float somewhere.
2017-05-23 13:59:58 +02:00
694bc97768
Draw Manager: Prevent errors when overwritting the instance batch.
2017-05-23 13:59:58 +02:00
dbb1a692f7
Revert assert, Eevee uses uniforms that might not exist
2017-05-22 17:57:34 +10:00
4c3382d55f
GPUTexture: Enabling R32 format for linear depth encoding.
2017-05-20 16:58:07 +02:00
07dd208209
Cleanup: warnings
2017-05-21 09:39:31 +10:00
53d1026f2a
DwM: assert when uniforms aren't found
...
More useful when this error shows up early
2017-05-20 23:54:58 +10:00
849b26c746
Draw Manager: Fix buffer reuse.
2017-05-18 16:50:48 +02:00
7490b24241
Draw Manager: Fix instancing. Again.
2017-05-18 16:05:03 +02:00
dad10ab118
DwM: Support flat-shaded w/ clay & eevee engines
...
Needed for sculpt mode drawing w/ engines, see: T51497
2017-05-18 20:43:53 +10:00
5ec6982a82
Draw Manager: Fix instancing.
2017-05-18 01:50:06 +02:00
1693d7d887
Fix annoying warning about unused debug var in release builds.
2017-05-17 14:37:30 +02: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
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
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
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
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
0eb32ab228
Implement hair drawing with Draw Manager in Clay engine
...
Part of T51378
2017-05-12 16:14:55 +02:00
3fbafaffa1
Eevee: Add tonemapping using ocio.
...
Actually it's done by the Draw Manager, so other engines can use it.
2017-05-11 16:29:35 +02:00
5ae58f8ab8
DWM: Use draw manager for sculpt PBVH drawing
...
Add a shader-group type to draw
generated geometry by running a callback.
2017-05-11 21:27:33 +10:00
0ffb19ca64
Revert "DWM: remove redundant state reset"
...
Enable this for now, needs some investigation.
2017-05-11 18:56:41 +10:00
3465f80319
DWM: remove redundant state reset
2017-05-11 08:36:17 +10:00
da8b34e527
Eevee: Fix some issues
...
Fix issue with manipulator contributing to depth.
Fix blender internal shader.
2017-05-10 16:03:25 +02:00
0722e41f9e
DWM: Use Gawain for sculpt drawing
...
Currently only uses the simple shader.
2017-05-10 20:35:51 +10:00
965571cca7
Draw Manager: Handle negative scaled meshes.
2017-05-10 00:47:27 +02:00
707756d277
Draw Manager: Extend simplification to UBOs & fix a context error.
2017-05-09 23:55:19 +02:00
8277609810
Small cleanup
2017-05-09 23:55:19 +02:00
e32ec677c3
Draw Manager: Simplify usage and check for errors.
2017-05-09 23:55:19 +02:00
1413bee158
Draw Manager: Add additive blending.
2017-05-09 23:55:19 +02:00
306603ae76
GPUTexture: Add support for 32bit textures.
2017-05-09 23:55:19 +02:00
6dc8368b8f
Draw Manager: Add Triangle batching and empty batch.
...
This is usefull for Depth Of Field because we don't need to store data for each sprites and just generate them when rendering.
2017-05-09 23:55:19 +02:00
1a869fb6b9
DWM: show weights in edit-mode
...
Engine collection settings aren't currently flushed,
once they are this will work as expected.
2017-05-08 13:00:43 +10:00
d2bd9195d4
Cleanup: naming
2017-05-08 13:00:43 +10:00
c47926542a
GPUMaterial: Fix regressions concerning background texco
2017-05-07 15:51:54 +02:00
2a0c91b70c
GPUViewport: Make Depth texture not depth testable.
2017-05-07 15:51:54 +02:00
0aa2a662b9
Eevee: Add Bloom post process.
...
Based on Kino/Bloom v2 - Bloom filter for Unity
MIT license.
2017-05-07 15:51:54 +02:00
29c5692eba
Draw Manager: Fix multiple timer query issued for one pass.
2017-05-07 15:51:54 +02:00
Dalai Felinto
8d9c484152
Implement overridable scene render settings
...
This add a new set of (possible) render settings that can be defined at
the scene level and overridable at the scene layer level.
Once we get workspaces we can either add workspace inbetween scene and
scene layer evaluation. Or to replace layer settings, to avoid extra
confusion to users.
An example of this setting is "samples", as implemented now for the clay
engine.
2017-05-05 18:08:24 +02:00