Cycles feedback

Just tested the latest builds a959da981785 and ce865d3f721f:

Some additional notes: Denoising during render works fine (both OptiX and OIDN), but the viewport denoising is kind of broken for me. OptiX crashes Blender, while OIDN make the scene overexposed if you have ‘adaptive sampling’ enabled, but works great without it. One more thing that I’ve noticed in the last few builds: I’ve experienced huge performance drop with enabled denoising when I had the ‘world’ in the viewport. When you ‘look’ at the scene geometry/models, performance is great. But when you have the world (empty space around your scene / HDRI) in the viewport - performance goes down like crazy. In other words: Viewport performance w. denoising is great only when the ‘world’ obscured by geometry.

2 Likes

With last version on WIndows 10 / RTX 3070: Have very overexposed scene with ODIN, but no crashes with OptiX or ODIN. Adaptive sampling with ODIN is the culpit, which is very sad because using it normally cuts 20-35% off my renders.

1 Like

With Jun 22 Win version now ODIN always leads to massively overexposed renders even without adaptive sampling.

1 Like

Latest Jun 23 update, ODIN still overexposed with adaptive sampling but the issues gone when unchecking adaptive sampling, using denoiser from compositor giving bad quality image but there is no issues when using denoiser from render properties. Viewport Optix denoiser crashing blender when using 1 start sample, but the issues gone when using 2 start sample or above.

Hi, as there was no commit for a week and the developer don´t fix bugs at this stage it does not make sense to post this over and over.
To get informed what happen in the branch register to the BF-commiters mail list.
You get OIDN to work with a regular compositor node set.

Cheers, mib

Recently we’ve had a small discussion about the shadow catcher in Cycles-X over in the “Let’s (finally) fix the ShadowCatcher” thread and we have some feedback for it.

At the moment it’s really difficult to use the shadow catcher to add CG objects to real life reflections and probably refractions. This is because you’re replacing pixels from real world footage with pixels from your CG scene via multiplication in the compositor. As such, the values in the shadow catcher pass can get quite “extreme”. The issue with this is that if your shadow catcher object is even just a little bit different from the real world, the values produced in the shadow catcher pass end up quite a way off from what they’re supposed to be. And as a result, the final result after compositing the shadow catcher into your scene can have very noticeable artifacts.

Take for example this scene:


There’s a reflective surface. and a background reflected in that surface. I now wish to add a red sphere to the scene. Adding the sphere is easy, but adding the reflections with the shadow catcher can be difficult. This is the expected result:

And these are bad results produced by the shadow catcher simply by having the shadow catcher object representing the water be slightly different from the “real world water”:

In our discussion over on the shadow catcher thread I came to the conclusion that having glossy reflections (and probably refractions) included in a render pass the user can just alpha over the real life footage would probably be best as it resolves the major issues we have with the shadow catcher.
However, I’m not entirely sure how feasible that approach is in terms of performance or whether or not it will continue to produce accurate results. Maybe there’s some other way to setup it up?

That is beyond what the shadow catcher was designed to do, though it would be a good improvement to try to support this.

Currently, it compensates for differences at the first bounce. To composite this kind of reflection in general you’d need to do an alpha over after the first bounce. That can work for surfaces that are 100% reflective/refractive and sharp, and would not work so well for darker/colored surfaces with roughness. There’s a continuum here.

A separate reflection pass may be good to support as well, though again with global illumination there’s a continuum between shadows and reflections, they’re not categorized so easily.

2 Likes

Having used other rendering systems, the shadowcatcher pass is usually split into several elements instead of a all-in-one solution like the current combined pass.
That way it is much easier to multiply and combine the shadow element with an exisiting shadow in the plate and then add the light/reflection/caustics layer on top.
I hope this can be added at some point.

5 Likes

I did a quick test with the new shadow catcher. The results seem pretty good I guess.

I made a custom 32bit HDRI and used photogrammetry to create the shadow catcher’s geometry and create some camera positions.

I could do other “VFX” tests if you guys have any suggestions on how to test the new shadow catcher.

Also, this is the Metalic version:

11 Likes

Getting lackluster motion blur with Optix and 29 Jun CyclesX version on Windows RTX 3070. While CPU renders the whole motion blur “volume” of a spinning propeller, Optix only renders like 30% of the blades positions in the timeframe with holes inbetween. CPU:

Optix:

1 Like

Tested the latest build (cf028a8f6806):

Additional notes: OptiX denoiser now works in the viewport even with adaptive sampling enabling, while OIDN still produces overexposed image if ‘AS’ enabled. I’ve noticed some abnormal behavior (glitch): When I use CUDA/OptiX with both GPU/CPU enabled, Cycles X uses only CPU as the primary device. In order to use GPU, I had to disable CPU in the Blender’s system settings.

1 Like

I have just tested the latest Cycles-X version. This now includes the possibility to render with GPU + CPU simultaneously. Many thanks for this first.

Unfortunately, this slows down rendering for me, since the split is 50/50. Since my CPU is much weaker than my GPU, this is currently having a detrimental effect on me. I hope that the developers will soon find a solution to find a split in rendering that is better suited to the performance of the devices.

I am already looking forward to further improvements. Please keep it up!

1 Like

I’ve been out of the loop for a while (vacation :sunglasses:).
I’ve seen there’s some volume rendering work already. What else is “restored”?
Are Bevel and Ao nodes fully back in CyclesX?

Just wondering if adaptive sampling has been disabled?

This should work fine, since most of the surfaces are rough.

The problem comes with reflective surfaces, like a marble floor for example, you can try some of this :slight_smile:

1 Like

I’m sorry if this was already asked, but I tried some renders with Cycles X… and while it’s incredible faster, specially on heavy scenes, on my end, it produces a lot more noise with the same settings, specially on the grass.

I’ve even tried the following settings:
*Increasing indirect clamp, and glossy filter, with no improvements. *
On both renders, caustics are disabled.

Here is a comparasion:

Cycles X render:

Cycles render:

Any thoughts? Thanks!

1 Like

As I know it is not working if you combine it with a denoiser. I’ll checked it 2 days ago

1 Like

Are you using subsurface scattering on the grass/leaves? If so, is your original scene set to Random Walk in the shader? The older, original, Burley SSS is not supported currently so this might be a reason for the difference.

1 Like

After further inspection, I found the problem.

For some reason, the spot light I’m using on the scene is creating heavy noise/fireflies on Cycles X. The only way of avoinding this is increasing the size of the light, however it creates another problem of changing the look and specially the shadows.

To be honest I had a lot of cases in the past where vanilla Cycles rendered slower or at equal speed with CPU+GPU vs only GPU. I’m using only GPU or CPU (on some GPU less machines on the render farm (3dsmax with VRay/Corona is the main/old purpose of the farm) now.