Blender Git Statistics -> Branches -> cycles-x

"Cycles-x" branch

Total commits : 542
Total committers : 3
First Commit : February 12, 2021
Latest Commit : June 17, 2021


Commits by Month

DateNumber of Commits
June, 202163
May, 202163
April, 2021202
March, 2021135
February, 202179

Committers

AuthorNumber of Commits
Sergey Sharybin384
Brecht Van Lommel147
Patrick Mours11

Popular Files

FilenameTotal Edits
session.cpp90
path_trace.cpp73
kernel_types.h63
path_trace_work_gpu.cpp57
kernel.cu47
session.h42
path_trace.h40
queue.cpp38
render_scheduler.cpp37
device_impl.cpp35

Latest commits Feed

June 17, 2021, 14:15 (GMT)
Cycles X: Initial support for the constant time rendering

Allows to limit render time, so that rendering will either happen
until all samples are finished, or the given time limit is reached.

Currently is only implemented for background and headless renders,
as those seems to benefit the most. In the viewport would still
like to investigate idea of keeping rendering until desired noise
floor is reached before adding extra settings there.

The usecases for the non-interactive (background, headless) renders
includes:

- Rendering a shot previews for movies.
- Ensuring some "bogus" frames do not stall the render farm.
- Allows to implement benchmark which will work reliable for both
very powerful and weak hardware configurations (as an example,
top-end GPUs and mobile GPUs) without requiring to wait forever
on a non-powerful hardware.

One of the tricky parts which is not solved in this version yet is
support of constant time rendering with multiple big tiles. However,
support of big tiles will be an addition on top of the existing code
as some sort of time limit would need to be enforced for every tile
(in other words, support of constant time render for multiple tiles
will be implemented on a higher level).

Differential Revision: https://developer.blender.org/D11526
June 17, 2021, 13:25 (GMT)
Cycles X: Re-arrange sampling panel

More explicit separate viewport from render settings. Makes it easier
and more clear to add settings which are only for preview or only for
the final render.

| Before | After |
| {F10177700} | {F10177701} |

Among other thngs removed unused CYCLES_RENDER_PT_sampling_total.
Think better would be to call draw_samples_info for both viewport
and render samples.

Differential Revision: https://developer.blender.org/D11633
June 17, 2021, 09:49 (GMT)
Fix Cycles X shadow catcher artifacts

Were caused by matte object appearing in the division process.

This change makes it so the matte object is removed from the
combined pass before division, which solves artifacts caused
by anti-aliasing (the matte "bleeds" into the shadow catcher
and produces artifacts around the rim).

Additionally made certain parts more explicit and better
documented.

Test file: {F10177353}

| Before | After |
| {F10177355} | {F10177358} |

Differential Revision: https://developer.blender.org/D11632
June 16, 2021, 15:52 (GMT)
Fix build with older OptiX SDK
June 15, 2021, 14:36 (GMT)
Cycles X: Implement OptiX denoising of shadow catcher passes

Pretty much follows similar change in the OIDN.

The information about whether denoiser should use fake albedo for a
specific pass is stored in its PassInfo.

It is probably possible to improve performance of the filter_convert_to_rgb
kernel (avoid per-pixel fake albedo check, avoid scaling normal for every
denoising input pass, ...). Not sure it will bring measurable performance
so leaving it for the future development and investigation.

Differential Revision: https://developer.blender.org/D11614
June 15, 2021, 14:01 (GMT)
Cycles X: Use pass accessor in the OptiX denoiser

No functional changes, just converging pass accessor to a commonly
used utility.

There is still custom kernel used, which ensures that pixel values
are within expected range.
June 15, 2021, 14:01 (GMT)
Cycles X: Use RenderBuffer in the denoise task API

No functional changes, but gives possibility to use PassAccessor to get
pixels of the input noisy pass.
June 15, 2021, 14:01 (GMT)
Cycles X: Implement float support in PassAccessorGPU

Rather straightforward implementation, with some code-generation
macro which takes care of some boiler plate code.

Unfortunately, clang-format does some weird decision in the
`kernel_as_string ` function. Attempt to disable clang-format via
comment makes the comment to be weirdly indented. So this part
is left-as is.

Similar to the PassAccessorCPU there is no overlays applied to
the float result.

Tested with an upcoming refactor of the OptiX denoiser which
uses pass accessor.

No functional changes so far.
June 15, 2021, 13:55 (GMT)
Fix OptiX denoiser for transparent film in Cycles X
June 15, 2021, 13:52 (GMT)
Fix Cycles X shadow catcher display pass

Missed in the previous fix for viewport passes in d9a645dcc02.
June 15, 2021, 12:47 (GMT)
Cycles X: Spelling corrections

Got ,missed in patch transition between computers.
June 15, 2021, 09:40 (GMT)
Cycles X: Initial implementation of shadow catcher denoising

Currently only implemented for OIDN denoiser.

Almost straightforward. The tricky part is the albedo pass: using the
real albedo causes unexpected discontinuity of the shadow catcher based
on the albedo of the surface the shadow is cast on. Worked around by
passing a fake albedo values. The downside is that it requires a full
frame of constant values. Not sure if there is a way around it.

Differential Revision: https://developer.blender.org/D11585
June 15, 2021, 09:40 (GMT)
Refactor Cycles X OIDN denoiser to use PassAccessor

No functional changes, just laying down code which is needed to denoise
passes different from combined.
June 15, 2021, 09:40 (GMT)
Cycles X: Store information whether pass needs compositing on read

Currently unused, but will allow to properly feed pixels to the
denoiser (ignoring possible optimizations related on general scaling
rules).
June 15, 2021, 09:40 (GMT)
Cycles X: Allow float3 access to shadow catcher pass
June 15, 2021, 09:38 (GMT)
Merge branch 'master' into cycles-x
June 11, 2021, 17:36 (GMT)
Fix previous Cycles X OIDN change

Seems that device needs to be recreated as well (preventing
crash), as well as initial commit missed assignment of the
cached configuration.

Maybe there is a way to "remove" images from filter without
re-creating the filter?
June 11, 2021, 17:19 (GMT)
Cycles X: restore homogeneous volume absorption

This is a first step towards bringing back volume scattering. Almost nothing
works yet, no scattering, heterogeneous media, cameras inside volumes, etc.

Differential Revision: https://developer.blender.org/D11556
June 11, 2021, 17:09 (GMT)
Fix possible use of stalled data in Cycles X OIDN denoiser

The denoiser object is only re-created if denoiser type changes.
Need to manually ensure implementation is up-to-date with the
new parameters.

Solves possible issues with denoiser using image from previous
execution (in viewport render, enable normal pass, then disable
it).
June 11, 2021, 16:53 (GMT)
Fix pass offset calculation in Cycles X

Caused by recent refactor.

In the typical load did not notice that name could be empty:
happens when Combined pass is replaced with Shadow Catcher Matte.

Additionally, return PASS_UNUSED for passes which are not written.

MiikaHweb - Blender Git Statistics v1.06
By: Miika HämäläinenLast update: Nov-07-2014 14:18 MiikaHweb | 2003-2021