Comparing Octane with Cycles X - very interesting first result

Im trying to match as close as possible deep settings wise Cycles to Octane for this one scene rendering a glass with an HDRI background.

Octane is using GGX for the glass material with roughness set to 0.05, Dispersion set to 0.010 IOR set to 1.550
The color management is set to Filmic and Gamma at 1.0 (all that happens if you set it to say raw with non LUT is it under exposes it and you can bring up the exposure in photoshop and find it matching blenders filmic).
Octanes camera imager settings are set to defaults and i took off the vignetting.
The render was set to Adaptive sampling with default 0.03 threshold. The GI was set to unlimited. The other quality settings were default such as glossy depth 24, scatter depth 8. The filter size was 1.20
Kernel = path tracer

HDRI was set to 32bit. The plane material was a default universal material.
I could have used the Octane beauty pass AI denoiser but its slightly noiser than Blender 2.93 ODIN so i used Blender ODIN simply by feeding the Octane denoiser beauty pass into the blender denoise node.

For the Cycles render I was able to emulate the Octane scene very closely.

I set the adaptive sampling threshold to the same 0.03. I set the pixel filter to 1.20 and Gaussian.
I set the max samples to 500K because i thought it would reach the threshold and finish…
I set the light bounces to the same as octane limiting the glossy to 24.
For the Plane material i copied the hex albedo color and used the same roughness settings etc.
Same HDRI same rotation. Same color management.
I turned off cycles light clamping completely. i turned off the filter glossy.

For the Glass material i used a complex dispersion glass from blenderkit. Also using GGX, with the same IOR and the same roughness. I set the dispersion to 3.0 for a very similar result, and yes its proper dispersion.

In the end Octane ran its 10k samples in 16mins… Cycles did not reach noise threshold because i had turned off the filter glossy and light clamping so it kept throwing new hot pixels… however it reaches 210K samples in 30 mins…

Here are the results in JPG format.


As you can see OIDN could not remove all the noise in Cycles but i imagine i could set the filter glossy very low like .1 and probably get a similar result…

Inspect for yourself, NO DIFFERENCE in caustics or dispersion quality. Apart from some of the nice lighting setup and camera setup options in octane and its very nice dispersion capabilities for things like Metals and i guess more flexible dispersion for glass, im not seeing the great advantage over cycles, Yet (only been testing for a day).

Cycles is about 4X faster when in a fair test. And there is the amazing photographer addon which gives it even more flexiblity than the Octane Camera settings.

note the rotation of the HDRI isnt a perfect match between the two scenes because of the way octane handles the rotation i had to eye ball it for cycles.

Test 2.

Different HDRI.
Octane dispersion set to 0.02 and glass ior to 1.65

Cycles dispersion set to 6 and ior 1.65
Cycles pixel filter set to .1

Let them run for the same amount of time. Cycles only managed about 20K samples. maybe struggling because of the dispersion.

I dont know why Octanes HDRI is more exposed i am using the gamma set to 1.0 in the HDRI and gamma set to 1 in the color management same as test 1.


6 Likes

Looking at the second test, I have no idea what is going on with the Octane render.

I am sure it is not the engine’s fault (as it has been used for beautiful stuff), but to have such a muddy image flooded with off-white would be a pretty bad first impression. Then you have a noticeable ring of cyan surrounding the off-white to top it off.

I will put it down to the HDRI configuration and the color management… im sure it can do better.
I am running a 3rd test with another HDRI.

Another difference to note is probably Cycles is running a newer version of OIDN and has the normal and albedo plugged into the denoise node, where as Octane is running on blender 2.93 and has its own denoise passes (octdenoiserbeauty) plugged into the OIDN denoiser node.

So when the difference is similar between 2 render engines AI denoise plays a big part in creating the final look when you want a reasonable time render.

I dont know if this cycles version of dispersion is as accurate as the one octane is using but as long as the AI gets the gist of it, its going to fill in the blanks and the final result the casual observer wont know the difference. I don’t see why cycles cant give us a new glass BSDF with dispersion and metal, even if its only faking it, because AI denoise is faking the final image anyway.

3rd test coming up…

Cycles was set to indirect lighting clamp of 5000 and filter glossy at 0.1
It managed 16K samples in the same time as octane and thus the denoiser was able to clear up more noise. The caustics are very similar the dispersion looks good on cycles.
Updated the Octane render i gave it a 0.015 dispersion and gave it some hotpixel removel and highlight compression.

Luxrender was given the exact same time limit as octane and cycles using its halt conditions.
I dont think it uses GGX so it was a case of eyeballing the settings to try and get a match. It’s dispersion looked overly orange and after denoising just gave an orange hue to the glass so i turned it off in the end.
Overall Luxrender seems an excellent renderer and its caustics trace out clear with just a few samples off the bat, it supports all the usual AI denoise, Adaptive sampling, GPU rendering, lots of AOVs and more.

2 Likes

Going on a tangent now, but i never knew Cycles could produce nearly the same caustics as Luxrender’s light tracing, if cycles is set correctly. Im still trying to optimize the settings, between indirect light clamping, pixel filter width, filtering glossy, light bounces, and the adaptive sampling settings, and AI denoisers… But here is what i got so far.

When i gave it 20 mins it reached 30K samples on a GTX 1070 and gave very accurate caustics and dispersion, but the denoiser was not strong enough to clean it right up, however a secondary AI denoiser AI gigapixel was able to brute force clean up the already OIDN image.

I have no doubt that with a 3090 card and a modern CPU i could have gotten at least 10X the samples or many more due to it reaching the adaptive sampling noise threshold.

2 Likes

Which image was rendered with which renderer?

Should be in the file name.

1 Like

im still doing more tests to find out how to make cycles x produce the best caustics. I think light bounces has a lot to do with it. And of course take off that filter glossy unless you want a blob for caustics.
Im going to try to find an HDRI that makes the caustics really show up and do another comparison between Cycles and Luxrender.

1 Like

I’m just curious…

I don’t ever need photorealism, so I don’t use Cycles.

But, what if you rendered this at 30 samples instead of 30,000 samples?
Would the average viewer notice the difference - in your opinion?
How long would it take to render

cycles at 30 samples it just would not find many caustics at all, and probably the average joe would notice it easily.
The reason its 30k samples in only 20 mins, is because of adaptive sampling, it gets most of the image to a low level of noise then concentrates on the noisy stuff which is just the caustics, so it can work a lot faster and rack up more samples.

Luxrender has this light tracing thing, and it finds the caustics right away so you can get away with way less samples.

But in the future i think with much better AI denoisers you could get away with 30 samples and it would still look photoreal.

1 Like

This next test proves Luxrender is the boss of caustics. And for some reason Cycles under some conditions just cant find the caustics.
Luxrender dispersion for some reason even if i render for hrs just turns to a tinted color after AI denoise.

Cycles after 25 min with an even more overly complex shader.


Luxrender but with higher photon counts but limited to same timespan.

2 Likes

Can you share the Blend file of this one? cycles 0.1 blackman harris pixel filter - filter glossy 0High

The test images there are outdated because they predate the introduction of Path Guiding in Cycles (which brings about a night and day difference in caustic rendering). Unfortunately, new technology will not be going into Luxcore at the moment as the project is now without developers (but the code is still there if people still feel there is a need for a FOSS rendering solution that is not attached to Blender).

1 Like