Thank you all guys for your responses, clarification and tests!
I just have to get used to adaptivity.
And thanks again Corona team for so intensive development and improvement of your product!
Hello guys,
I would like to know what happens “under the hood” that adaptive system on Corona.
I don´t have technical knowlegement, but after watched a video that shows how adaptive works on Fstorm I thought they has different methods.
e.g fstorm´s sampling method stops to sampling areas that doesn´t need more sampling and keep focus just where it´s needed.
Corona´s sampling works that way too?
Thanks and sorry my english if it´s not clear enought.
Video:
That’s exactly how adaptivity in Corona works too. You can add CSamplingInfo render element and see sampling distribution like in that FStorm video.
cecofuli have you tried that scene in any other render to see how it handles those parts?
Thx romullus!!
p.s: nice and informative signature ![]()
In attachment the original rendering
Files.rar (2.24 MB)
Corona adaptivity right now is image space adaptivity. It can only sample some pixels more or less, but it does not change the sampling itself. In some extreme cases, such as the ones you posted, no amount of samples would result in satisfactory result. If you have 0.001% chance of sampling something in pixel, sampling the pixel 10 times more will still give you only 0.01%. For these scenes to render properly, different changes in different algorithms would be necessary (which we will try to do sooner or later).
Ohh, ok. So, we must to wait some new release =)
Bormax: Try to change adaptivity interval via maxscript to higher number(maybe half number of phases or higher) as default(5): renderers.current.adaptivity_interval = 48
With this setting will be the image rendered with equal portion of samples in each pixel from pass 1 to 48.
After pass 48 will start adaptivity do its job ![]()
According sampling focus render element adaptivity is “drastic” in distribution of samples…so solution is let corona render image with adaptivity only last few passes. For me ideal number of interval is between half and 3/4 num. of total passes. I discovered 10% less render time and of course noise eliminated on problematic materials and dark areas ![]()
Someone could say, that with high interval values there will be few or only one calculation of adaptivity during rendering…but when I was watching SF render element, is it enough.
Thank you Bzuco!
I tried to put your script in to Corona’s string option window, but got the “Invalid string option: renderers.current.adaptivity_interval = 48” massage. Did I put it to the wrong place?
press F11 (maxscript listener) ![]()
Thank you! ![]()
BTW: You can also change this parameter as “Adaptivity recalculation (passes)” in the “Development/Experimental Stuff” rollout (activate that rollout in “Performance settings” with “Enable devel/debug mode” first).
This does the same, no need to use a script unless you want to act automatically relatively to the render passes amount (what could get a kind of scripted adaptivity slider requested by some peple here).
Good Luck
If you want to use it as a string, then format is as follows:
int adaptivity.interval = 48
But as Frood already mentioned, this option is already exposed in UI, so no need for strings here. And let’s hope it doesn’t turn into another MSI200 rule :]
Thank you guys for your help!


