diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2019-01-25 00:01:03 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2019-01-25 17:04:18 +0300 |
commit | 71e30028240798d4ec34ee380191058b9313902b (patch) | |
tree | f97cb7b10138a3468d6a790b945ccc3e0375ce59 /source/blender/draw/engines/workbench/workbench_deferred.c | |
parent | 3f6e14e667c4442bcc1f4d1fc795633cc706150f (diff) |
Workbench: Depth Of Field: Optimisation
- Compute samples positions on CPU.
- Use 3x3 Box blur instead of 2x2.
- Implement bokeh parameters.
With this commit, dof performance is almost negligeable.
The quality is a bit lower than before but can be improve. Also now big
Circle of confusion are supported (up to 200px).
Cost is ~1.25ms on AMD Vega with a 2560p viewport than full HD and
pretty shallow depth of field.
Coc downsampling and dilation is not used anymore for now (commented).
Diffstat (limited to 'source/blender/draw/engines/workbench/workbench_deferred.c')
-rw-r--r-- | source/blender/draw/engines/workbench/workbench_deferred.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/source/blender/draw/engines/workbench/workbench_deferred.c b/source/blender/draw/engines/workbench/workbench_deferred.c index d1e32ea42d9..0a17907a12d 100644 --- a/source/blender/draw/engines/workbench/workbench_deferred.c +++ b/source/blender/draw/engines/workbench/workbench_deferred.c @@ -1112,6 +1112,7 @@ void workbench_deferred_draw_finish(WORKBENCH_Data *vedata) WORKBENCH_StorageList *stl = vedata->stl; WORKBENCH_PrivateData *wpd = stl->g_data; + /* XXX TODO(fclem) do not discard UBOS after drawing! Store them per viewport. */ workbench_private_data_free(wpd); workbench_volume_smoke_textures_free(wpd); } |