Blender Git Commits

Blender Git "cycles-x" branch commits.

September 20, 2021, 18:03 (GMT)
Fix swapped glossy direct/indirect passes
September 20, 2021, 17:59 (GMT)
Fix broken motion vector pass link in compositor
September 20, 2021, 17:07 (GMT)
Merge branch 'master' into cycles-x
September 20, 2021, 17:07 (GMT)
Fix crash in background render after tile highlight changes
September 20, 2021, 16:26 (GMT)
Merge branch 'master' into cycles-x
September 20, 2021, 15:59 (GMT)
Cycles X: Remove dead resumable render code

It will be implemented differently by specifying an EXR file.

Remove the command line arguments to avoid false perception
that the resumable render still works.

Differential Revision: https://developer.blender.org/D12571
September 20, 2021, 15:43 (GMT)
WIP: Cycles X: Schedule work based on occupancy

Sacrifice refresh interval and increase GPU occupancy, lowering the
final render time.

Lowers `Blender 2.80 - Spring` demo file form predicted 30min
measured 3 min to render 1/10th of samples) to about 7.5min.

It is still considerably higher than the master branch, which finishes
the file in just below 3 min, but it is already a better results.

The timing is from RTX 5000.

The viewport and CPU rendering should stay unaffected by this change.

Differential Revision: https://developer.blender.org/D12570
September 20, 2021, 15:35 (GMT)
Cycles X: Re-implement tile highlight

Since the GPUDisplay usage for offline rendering we've lost tile
highlight functionality. This change brings it back.

Introduced new RenderEngine API call to manipulate highlight state
without acquiring RenderResult (so that we don't allocate passes).

Not fully ideal since the last tile will be highlighted after render
is done until first full-frame is done, but is a cosmetic thing we
can improve in the future.

Differential Revision: https://developer.blender.org/D12519
September 20, 2021, 15:03 (GMT)
Cycles X: make progressive multi-jitter the default sampling pattern

Now that adaptive sampling is enabled by default this was already the case in
practice, but use it now also for the non-adaptive case so the sampling patterns
stays consistent when switching that on and off.

A reason to do this now is that we will need to update all the test reference
images for the cycles-x merge, and those are all affected by the sampling pattern.
September 20, 2021, 14:51 (GMT)
Cycles X: Improve progress report while processing files from disk

Differential Revision: https://developer.blender.org/D12542
September 20, 2021, 14:26 (GMT)
Fix T91425: VDB shadow rendering incorrect in some cases
September 20, 2021, 13:56 (GMT)
Fix baking failing with auto tiles, disable since it's not supported yet
September 20, 2021, 12:40 (GMT)
Fix incorrect auto minimum samples for adaptive sampling

The comment did not match the implementation.

Differential Revision: https://developer.blender.org/D12561
September 20, 2021, 11:06 (GMT)
Merge branch 'master' into cycles-x
September 17, 2021, 17:22 (GMT)
Fix T91489: Cycles X crash when running with MESA_NO_ERROR
September 17, 2021, 13:19 (GMT)
Fix crash in background rendering after recent clearing bugfix
September 17, 2021, 12:51 (GMT)
Cleanup: clarify comment
September 17, 2021, 11:29 (GMT)
Cycles X: Improve performance of transparent shadows with OptiX

This changes the shadow record-all any-hit program to accept all
hits (return without calling `optixIgnoreIntersection`) beyond
the furthest distance recorded after the maximum number of hits
that can be recorded was reached.
OptiX will not call the any-hit program anymore for hits beyond
the distance of the accepted hits and also reduces the current
ray length behind the scenes. As a result performance improves
drastically in scenes where shadow rays can hit a lot of
transparent objects, like the "koro" benchmark scene.

With this applied I now get similar performance with both CUDA
and OptiX in "koro". Not quite perfect yet, but much better than
before.

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D12524
September 17, 2021, 09:51 (GMT)
Fix Cycles X crash viewing render result prior rendering
September 17, 2021, 09:18 (GMT)
Cycles X: Real memory saving when using tiled rendering

The general idea is to delay reading EXR files for until after all
view layers are rendered. Once they are all rendered, BlenderSession
frees up as much memory as possible, and initiates processing of the
on-disk files.

The processing includes reading the file, optional denoising of the
full frame (if the denoising is enabled), and writing the result via
the write callback.

The processing is done as a state-machine which routes specific calls
to a full-frame processing, which allows to re-use same tile write
callback in the software integration.

In order to be able to know which view layer and render view is being
written the API has been extended to write layer and view names. Done
via BufferParams, as layer and view concepts are quite typical for the
EXR files.

The BufferParams also contains all fields needed for buffers access
outside of the scene graph.

Differential Revision: https://developer.blender.org/D12503
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021