Blender Git Loki

Blender Git "cycles-x" branch commits.

Page: 20 / 44

June 3, 2021, 14:56 (GMT)
Cycles X: Use approximate shadow catcher in viewport

This change makes it so that shadow catcher objects have effect in
the viewport. Currently is limited to the approximate mode since it
is the only one possible with the draw manager integrator.

Differential Revision: https://developer.blender.org/D11484
June 3, 2021, 14:22 (GMT)
Cycles X: Allow viewing shadow catcher pass in viewport

Differential Revision: https://developer.blender.org/D11482
June 3, 2021, 14:17 (GMT)
Cycles X: Implement pass accessor for GPU

It replaces film_convert_half_float with more generic code path.

Currently only half4 destination is supported. No real stopper reason
to support float destination, is just a bit harder to verify at this
point as there will be no users of this code path.

Form quick benchmarks the new code seems to be 10-15% faster than the
film_convert_half_float when measuring overall display update time for
non-interop rendering. Partially because we no longer convert global
index to x/y and back to pixel index, partially due to smaller kernel.

Note that the timing is only taking display update into account, the
path tracing is not included into the speedup calculation (this means
that viewport is not that much faster, but it means we can update
viewpor4t more often now).

Differential Revision: https://developer.blender.org/D11481
June 3, 2021, 14:07 (GMT)
Cycles X: Use pass accessor for viewport on CPU

No functional changes, no measurable time difference.

Quite boring on itself, but it opens doors for support of shadow
catcher pass in the viewport.

Differential Revision: https://developer.blender.org/D11480
June 3, 2021, 14:01 (GMT)
Cycles X: Multi-thread CPU pass accessor

Is not very measurable for the combined pass, but for shadow catcher
matte with approximated shadow gives about 30% speedup of the display
update.

Surely, this is only fraction of the overall render time, but is
still nice to have it. Makes it easier to re-use for the viewport
update as well.

Differential Revision: https://developer.blender.org/D11479
June 3, 2021, 13:55 (GMT)
Cycles X: Move pass pixel processors to kernel_film

Currently no functional changes, just keep moving towards unifying
calculation logic between CPU and GPU.

There combined pass is equal in timing within a noise level, the
shadow catcher matte pass with approximated shadow is about 7%
faster (probably, due to difference in inline policy).

Differential Revision: https://developer.blender.org/D11478
June 3, 2021, 13:52 (GMT)
Cycles X: Move top-level pass access log to a base class

What this change allows to do is to share top-level logic of pixel
access between various implementations (CPU, GPU), while keeping the
actual pixel processing very small.

Currently there are no functional changes, as well no measurable
difference in timing spent in getting tile pixels.

Differential Revision: https://developer.blender.org/D11477
June 3, 2021, 13:48 (GMT)
Cycles X: Move pass accessor to integrator folder

This is where it is used the most and will be used even more in the
future.

No functional changes, preparing for an upcoming generalization of
the class. Eventually this class will take over the kernel film
convert kernel, for which DeviceQueue will be needed, so it makes
sense to move the pass accessor to the integrator folder

Differential Revision: https://developer.blender.org/D11476
June 3, 2021, 12:40 (GMT)
Cycles X: Better handling of missing CUDA kernel functions

Log missing function and avoid crash.

Differential Revision: https://developer.blender.org/D11472
June 3, 2021, 12:37 (GMT)
Cycles X: Fix missing viewport update on shadow catcher changes

Solves missing KernelInterator update in viewport when changing object's
shadow catcher mask flag.

Differential Revision: https://developer.blender.org/D11471
June 3, 2021, 12:32 (GMT)
Cycles X: Refactor pass info and accessor

Makes it so pass accessor can be used without knowing passes array and
Film. Additionally, this should restore access to AOV passes, although
is hard to really verify this because AOVs are not written yet.

Differential Revision: https://developer.blender.org/D11448
June 2, 2021, 16:03 (GMT)
Cycles X: slightly simplify noinline usage

No performance difference found with this. Making this change to help identify
where it's actually needed.
June 2, 2021, 13:38 (GMT)
Fix broken GPU subsurface scattering
June 2, 2021, 12:03 (GMT)
Merge branch 'master' into cycles-x
June 1, 2021, 08:27 (GMT)
Cycles X: Localize handling of sample count pass

Avoid having an exception in a generic code path.
June 1, 2021, 08:09 (GMT)
Cycles X: Generalize storage of offsets in BufferParams

This change replaces storage of a hand-picked passes with a more
generic storage. Simplifies code in the BufferParams and makes
data available in all areas which need to access those offsets.

A bit of a duplication with KernelFilm, but not all areas have
access to the KernelFilm. Film can not be used either because
it is not guaranteed to be in sync with the BufferParams. So in
a way now all the knowledge about what is stored and how to be
accessed in the Buffer is available via BufferParams.

Simplifies arguments passed to the PassAccessor.
The Film is still needed to be passed there to know whether
shadow from the shadow catcher pass is to be averaged and added
to the combined pass or not.

Currently no functional changes, just preparation for an upcoming
deeper refactor of the PassAccessor.

Differential Revision: https://developer.blender.org/D11437
May 31, 2021, 09:03 (GMT)
Merge branch 'master' into cycles-x
May 27, 2021, 17:15 (GMT)
Cycles X: adapt AO/bevel node implementation to new code

Still not actually rendering through.
May 27, 2021, 17:15 (GMT)
Cleanup: pass full kernel name to integrator state macros

So we can make this dynamic.
May 27, 2021, 17:15 (GMT)
Cleanup: make shader raytracing a node feature flag
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021