403c6b1b8d
Eevee: fix shadows artifact by clearing to max depth
2017-06-03 00:54:01 +02:00
d385ad3ce8
Eevee: fix light update when a shadow caster is deleted
2017-06-03 00:54:01 +02:00
0d52f8daea
Eevee: Polishing of Exponential Shadow mapping
...
Added exponent parameter to tweak light bleeding.
Added depth bias to the shadow test.
Added better blurring using 32 samples.
2017-06-03 00:54:01 +02:00
f59b1179c5
Eevee: Tag shadow maps to update only when necessary.
...
Shadow maps are now only updated if one shadow casting object inside it's shadow bounds has been updated.
2017-06-01 23:54:36 +02:00
c2d81f257f
Eevee: Put shadows and probes inside SceneLayerEngineData
...
This remove the duplication of data for each viewport improving memory usage.
2017-05-30 22:30:16 +02:00
470d66397d
Eevee: Fix ggx sun light.
2017-05-30 17:18:00 +02:00
5773f58762
Eevee: Replace Cubemaps by octahedron maps for env. probes.
...
This enables us to use 2D texture arrays for multiple probes.
There is a little artifact with very high roughness caused elongated pixel due to the projection (along every 90° meridian).
2017-05-29 22:04:30 +02:00
97e89027fc
Eevee : fix light colors
2017-05-29 15:52:27 +02:00
dbed33479a
Eevee: Remove non-ltc area light code + optimisation.
...
Reduce size ShadingData struct leads to some improvement even with more computation.
2017-05-29 15:52:27 +02:00
ff29914dcc
Remove default shading groups from eevee
2017-05-26 12:55:50 +02:00
3db15ae23a
Eevee: Disable directionnal lamps shadows
2017-05-23 15:12:47 +02:00
67b9a5b3d6
Eevee: Initial implementation of exponential shadowmaps
...
Also fixes the rendering of depth.
2017-05-20 16:58:07 +02:00
d9d65a06d3
Eevee: Move cube shadows to octahedron shadowmaps.
...
We render linear distance to the light in a R32 texture and store it into an octahedron projection inside a 2D texture array.
This render the sampling function much more simpler and without edge artifacts.
2017-05-20 16:58:07 +02:00
3f1a7aec13
Eevee: optimize vertex shader for probe and shadows.
2017-05-20 16:58:07 +02:00
ec774fdb48
Eevee: Fix fresnel factor to match Unreal Engine specular input.
2017-05-18 18:35:55 +02:00
e52a7584be
Eevee: Fix GPUShader not free.
2017-05-18 18:35:55 +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
4047715af3
Cleanup: use pre-defined STRINGIFY macro
2017-05-18 11:22:24 +10:00
00a5885136
Eevee: Refactor shaders defines
2017-05-18 01:50:06 +02:00
af3954fe90
Eevee: fix bug with postprocess buffer sharing.
2017-05-18 01:50:06 +02:00
ecee490d13
Eevee: Some changes to default shader.
...
Use old BI material prop and use a metallic approach.
2017-05-18 01:50:06 +02: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
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
2e8cb8d836
Draw Manager: Make use of texture reuse.
2017-05-16 20:30:17 +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
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
5aca575d85
Eevee: Add Rotation and ratio parameters to DoF.
2017-05-12 16:31:12 +02:00
ef3aaa3269
Eevee: Small Dof upsampling blur.
...
This soften the low res buffer so that jaggies are less perceptible.
Also soften the nearplane transition.
2017-05-11 16:29:35 +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
3341c11bcc
Eevee: Disable motion blur if camera is different from its animated pose.
2017-05-11 16:29:35 +02:00
2e39a27e3b
Eevee: Fix light color being non-linear.
2017-05-11 16:29:35 +02:00
c8d8f04746
Eevee: Fix motion blur when not having set another key.
2017-05-11 16:29:35 +02:00
f129e48993
Merge branch 'master' into blender2.8
2017-05-11 22:16:23 +10:00
4e7eafb86f
Eevee: Fix motion blur.
2017-05-11 14:17:38 +02:00
45207bf3ce
Eevee: Post process parameters.
...
-Display almost all parameters.
-Made some small adjustment to motion blur to support FOV motion blur.
-Made DOF max radius a parameter.
2017-05-10 16:03:25 +02: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
1c18d07a1c
Eevee: Make Depth of field zoom invariant.
...
Multiply the sensor size by the viewcamtexcofac which is basicaly how scaled is the viewport relativly to the camera frame.
2017-05-10 00:57:53 +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
9075f934aa
Eevee: Initial Depth Of Field commit.
2017-05-09 23:55:19 +02:00
d94e7936ee
Cleanup: style & header guards
2017-05-08 13:00:43 +10: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
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
31f2f1b5f2
Eevee: Fix compilation issue on certain driver.
2017-05-05 13:07:11 +02:00
665296e6f9
Eevee: Motion blur switch
2017-05-04 19:11:20 +02:00
4ef0513aab
Eevee: Draw background shader.
...
Also fixes some remaining errors caused by some matrices not updated.
2017-05-04 17:42:22 +02:00
5601a62179
Eevee: Simple Camera Motion Blur.
...
Disabled by default. Set ENABLE_EFFECT_MOTION_BLUR to 1 to enable.
No fancy motion blur. Use depth and camera matrix to get the motion vectors. Then blur in this direction.
Only available in camera view.
Only Camera animation is supported, does not take into account the parents motion
2017-05-04 17:42:22 +02:00
82e242cc72
Merge branch 'master' into blender2.8
2017-05-03 18:33:02 +02:00