April 9, 2020, 01:59 (GMT) |
EEVEE: Motion Blur: Fix shutter delta |
April 6, 2020, 23:02 (GMT) |
EEVEE: Motion Blur: Make motion blur closer to cycles by evaluating 3 step For now we always center the delta around the frame time. We store 2 motion steps, one before and one after the current frame. However, this also means storing 2 motion vectors for each pixels, doubling the vram usage of the motion vector buffer. This patch also cleanup some uneeded complexity. We use the motion vectors as is and don't use a multiplier. |
April 6, 2020, 22:58 (GMT) |
EEVEE: Motion Blur: Use orig_object->data instead of orig_data as key This fix issue with some modifier setup |
April 6, 2020, 15:55 (GMT) |
EEVEE: Implement deformation motion blur This adds deformation motion blur by saving the vertex buffers of the previous frame. We modify the surface batch to pass the vert position as new attributes. |
April 6, 2020, 15:32 (GMT) |
DRW: Batch Cache: Expose position vertex buffer to engine This is in order to compute position deltas for motion blur. The engine is responsible to handle the data. However it is not the owner of the data. So a copy must be performed if the data needs to be kept accross frame. |
April 6, 2020, 13:43 (GMT) |
GPUVertexFormat: Add Rename function This is needed for motion blur. |
April 6, 2020, 13:06 (GMT) |
GPUVertBuf: Add duplication function |
April 3, 2020, 22:45 (GMT) |
EEVEE: Motion Blur: Rework object motion vector rendering Object matrices are now stored in a GHash per object, similar to cycles. The objects surfaces are not split per material anymore. This approach is not supported for viewport. This approach is much cleaner and will be able to easily support deforming motion blur. This approach also supports instances |
March 31, 2020, 23:52 (GMT) |
EEVEE: Object Motion Blur: Initial Implementation This adds object motion blur vectors for EEVEE as well as better noise reduction for it. For TAA reprojection we just compute the motion vector on the fly based on camera motion and depth buffer. This makes possible to store another motion vector only for the blurring which is not useful for TAA history fetching. The changes are quite simple. We just do an extra pass to write the motion vectors for opaque objects and use the motion vector to do the motion blur sampling. This does not improve the postprocess motion blur itself. Viewport support is kind of a hack, relying on cached previously drawn objects states, and is to be enabled through experimental support panel in userpref. Differential Revision: https://developer.blender.org/D7297 |
March 31, 2020, 23:31 (GMT) |
EEVEE: Motion Blur: Fix camera motion blur in render |
March 31, 2020, 22:52 (GMT) |
EEVEE: Motion Blur: Fix TAA reprojection We compute the motion vector on the fly based on camera motion. |
March 31, 2020, 22:52 (GMT) |
EEVEE: Motion Blur: Fix missing motion vectors after first TAA sample |
March 31, 2020, 22:52 (GMT) |
EEVEE: Motion Blur: Make Temporal accumulation clear up the noise |
March 31, 2020, 22:52 (GMT) |
EEVEE: Motion Blur: Fix rendering and center sample on current frame |
March 31, 2020, 22:50 (GMT) |
EEVEE: Object Motion Blur: Initial Implementation |
March 31, 2020, 22:50 (GMT) |
EEVEE: Motion Blur: Fix motion blur in render |
|