PDA

View Full Version : Is it feasible to get faster Adaptive AA?


flingster
09-14-2004, 01:04 PM
NB. This is not a c4d bashing thread...if you want to bash c4d/maxon use someone elses thread please.Ok now we have got that out of the way.

I wanted to know whether in light of all the previous vray threads and renderer commentary if its possible to speed up render settings...Antialiasing min and max speed levels. These make a massive difference in render speed when increased from default. I've just been messing with a scene for with transparency in it..and thought it would be nice to have 2x2 min...i probably should have gone the other way in fact..eg max 8x8, but it just highlighted when i've used these settings in the past eg of AO passes or something, that they effect render time to what feels like a disproportionate time levels..eg render seems to slow down considerable...ok i guess it depends alot on the scene and maybe i'm using it wrong dunno etc. But i just wondered whether it is or would be technically feasible to speed this process up as i wanted to make the request to maxon?
thanks.

MJV
09-14-2004, 01:17 PM
Have you tried using the compositing tag to set AA on a per object basis?

rendermania
09-14-2004, 02:13 PM
http://en.wikipedia.org/wiki/Raytracing

http://en.wikipedia.org/wiki/Antialiasing

As far as I know, AA slows down renders not just because you need calculations to smooth pixel color values by taking neighboring pixels into account, but also because you're not just sampling 640 x 480 = 307,200 rays for a frame, but also using sub-pixel rays that sample values normally lost in the gaps between visible screen pixels to get better accuracy. Game cards on the other hand typically smooth/blur the hell out of textures with realtime AA switched on, so the functional difference is somewhat obvious.

Personally I'm not too concerned with the speed of Cinema's AA, but rather the quality. Renderers like Mental Ray give much more detailed control over AA sampling method, type of filtering used (e.g. box, gauss etc) and similar settings. The risk of getting animation flicker with Mental Ray is much higher than with Cinema in my experience, if you get the settings wrong. The quality looks a lot better to me though, even if MentalRay does what it does considerably slower than Cinema (I'd guess the difference in speed is factor 2 - 4 in some cases).

Don't really know how this could be sped up. Maybe Maxon could try running the subpixel sampling on the graphics card GPU to take some of the load off the rendering CPU if that is technically feasible. I wonder if you'd get the same result with each graphics card in doing this though, and how easy it would be to make the process compatible with all the different GPU types and software drivers that are out there.

flingster
09-14-2004, 04:37 PM
MJV...yeah i have used this before as a workaround...but often if you have an object made up of many parts yet still one object it becomes unrealistic to no difference as the majority of the scene would be the same setting as a global effect rather than object setting...but its definitely something i've thought about and sometimes used.

rendermania: some interesting ideas and info bud..thanks for that...i guess if maya is slow on this i've actually got a lot to be thankful for interms of c4ds speed. Quality is my main concern everytime...hence me trying to use this setting on scenes...problem is render times are kinda to hard to bare..hence me asking if its feasible in someway to speed it up...would any filter type method improve c4d quality just out of interest (rather than speed in this case)?

do you guys ever use these min/max settings in your scenes and what sort of levels do you go to? and how do you find speed level?

MulaG
09-14-2004, 06:56 PM
.....

do you guys ever use these min/max settings in your scenes and what sort of levels do you go to? and how do you find speed level? I used the min and max anitialiasing values on my apartment scene for the floor boards (about 46 of them grouped as one object). I used a compositing tag and set the min value to 4x4 and max value to 8x8 with a threshold of 10%, GI accuracy 60%. Before I set these values my scene rendered about 3 and half to four hours. However with these new values set it took about 26 HOURS TO RENDER...26! I have a dual AMD Opteron 246 with 2 Gig of RAM which I don't think made any difference. As I was tweeking a few things I had to do the render a few times :rolleyes: but despite this I did see an improvement in the floor boards, hence me rendering several times with those settings.

Flingster what was your threshold? Do you think this may affect render times?

Simon Wicker
09-14-2004, 07:49 PM
so far my rendering usually follows this method:

1) render using best at min/max 1x1 4x4 at a threshold of 10% and check for problems.

2) decrease the threshold to 5% if there are problems and check again.

3) if there are still problems return the threshold to 10% and then set min/max values to 2x2 4x4.

4) if there are still problems then lower the threshold again to 5%.

in general the thershold is the biggest culprit because maxon have it set high to get fast render speeds. check that before cranking the aa up!

i have never needed to set my aa beyond best 2x2 4x4 5% threshold.

the other thing is of course to check your material interpolation settings because they have a huge influence over the sharpness of the final render and the tendancy for the image to flicker. in this regard the best quality i have seen so far is from renderman - the images are very sharp without any tendancy towards buzzing or flickering during an animation without any need to really crank up the settings (however i'm sure there are a million and one patents protecting the methods they use).

cheers, simon w.

Per-Anders
09-14-2004, 07:55 PM
it would certainly be nice to have 0x0 aa and even lower than 0x0 (as xsi allows) in best mode as additional levels. cinema has quite a lot of aa algorithms (blend/sinc/still/animation/catmull etc) though more would be welcome.

MulaG
09-14-2004, 08:17 PM
.....

in general the thershold is the biggest culprit because maxon have it set high to get fast render speeds. check that before cranking the aa up!

i have never needed to set my aa beyond best 2x2 4x4 5% threshold.

the other thing is of course to check your material interpolation settings because they have a huge influence over the sharpness of the final render and the tendancy for the image to flicker...

cheers, simon w.
Thanks for sharing that with us I'll tweek around with the settings!

flingster
09-14-2004, 09:01 PM
mulag: thanks for posting that...i thought it was just me...heh.heh

simon: thanks for the tip on threshold...didn't even touch it..and rarely do...when i have in the past its generally not got me look i wanted so end up leaving it at 10% and then changing AA at end of day anyways....but i like the method you go through...definitely something i'll file for future use...cheers appreciated.

per: i tend to use sinc a lot as i seem to get a nice quality for still but i take a hit for that afaik.

i guess alot of you guys work towards animation...hence flickering comments...really i want to squeeze the best quality still out of c4d at the fastest speed...animation i'm less worried about..so i can afford to take an age rendering a pic within reason as i'm less bothered about the transition...but once you start lifting any of those levels i take big hits in speed...probably to be expected...i was just curious as to whether maxon could improve AA speed...all to often improvement comments surround animation/motion gfx or gi/archvis stuff...and i feel a little left using c4d for print type work despite maxon in the past targetting this type of user with "C4D Art" releases, eg minus animation...
in my mind its the perfect soho 3d printwork tool around and i hope maxon don't loose sight of this whilst targetting everything else...was reading an xsi thread commenting on mem usage of MR eg foundation from gui at around 800+meg, essential 1.3gig, standalone was up to 1.5.... then i realised on some of my large scenes or stills...i've gone to around 1.57 no problemo topped out on one scene around 1.82 but slow increase hence number...just got me thinking c4d makes it so easy for me with this sort of work. anyway i'm getting ot now as usual.

so this means basically it may be possible..with either different algos or hardware rendering or am i missing something?
thanks guys.

wuensch
09-14-2004, 09:23 PM
I found the Sinc algorithm to be very capable, especially for small pictures that will look very crisp with it.

Olli

rendermania
09-14-2004, 10:16 PM
I used the min and max anitialiasing values on my apartment scene for the floor boards (about 46 of them grouped as one object). I used a compositing tag and set the min value to 4x4 and max value to 8x8 with a threshold of 10%, GI accuracy 60%. Before I set these values my scene rendered about 3 and half to four hours. However with these new values set it took about 26 HOURS TO RENDER...26! I have a dual AMD Opteron 246 with 2 Gig of RAM which I don't think made any difference. As I was tweeking a few things I had to do the render a few times :rolleyes: but despite this I did see an improvement in the floor boards, hence me rendering several times with those settings.

Flingster what was your threshold? Do you think this may affect render times?
I don't know how long you've been working/rendering with cinema, but short of a 6000x4000 pixel print quality render, the rendertimes you are quoating are totally off the scale, especially on a dual Opteron 246. Could you post a screenshot of your scene, and also your full radiosity settings (samples, bounces, filter settings etc)? The only object I could imagine benefitting from 4x4 times 8x8 AA optically would be something made up of thousands of really, really fine hairs, or an object with very fine and complex transparency, not a bunch of floorboards.

I wonder if its a problem similar to that Vray scene someone posted a while ago. That one had procedural shaders applied to three little squares on the wall that ate maybe 70% of the CPU time spent on the render, had stuff subdivided and triangulated like crazy that is barely large enough to be seen in the render, and other stuff that will kill yer rendertime.

As a rule of thumb, stay away from simbiont or bhodinut shaders unless you absolutely need them. A lot of people use them for glass and metals that you can just as easily create in much faster to render form with Cinema shaders, and some of them like the Banji glass shader beat the crap out of your CPU when you try to render anything with them. I've seen architectural renders posted where the radiosity settings are wrong, blurry reflections on glass etc take up 60% of the rendertime, and other things that can easily be avoided.

With regards to threshold, try rendering the same scene with 2x2 times 2x2 AA, threshold 0% and MipMap Aliasing set to 0% to see the optical effect it has.

MulaG
09-14-2004, 11:10 PM
I don't know how long you've been working/rendering with cinema, but short of a 6000x4000 pixel print quality render, the rendertimes you are quoating are totally off the scale, especially on a dual Opteron 246. Could you post a screenshot of your scene, and also your full radiosity settings (samples, bounces, filter settings etc)? The only object I could imagine benefitting from 4x4 times 8x8 AA optically would be something made up of thousands of really, really fine hairs, or an object with very fine and complex transparency, not a bunch of floorboards.

I wonder if its a problem similar to that Vray scene someone posted a while ago.....
Thanks Rendermania! I'm still a learner!:) I'm obviosuly doing something seriously wrong to get such long render times!

You can view my image:

http://www.cgtalk.com/showthread.php?t=136912&page=2&pp=15

Radiosity Settings:

<li>Standard
<li>Strength: 97%
<li>Accuracy: 70%
<li>Prepass size: 1/4
<li>Diffuse Depth: 3
<li>Stochastic Samples: 200
<li> Min Resolution: 3
<li>Max Resolution: 70
<li>Recompute: Always
<li>Save Solution: checked
<li>Identical Noise Distribution: checked

Antialiasing Settings:

<li>Best
<li>Filter: Still image
<li>Threshold 10%
<li>min/Max level 1x1; 4x4
<li>Use object properties: checked. - On my floorboards I had the min max 4x4 and 8x8 (which I now know is waaay to high!)
<li>MIP Scale: 100%

The image is rendered at 1280 x 1024.

Thanks!

AdamT
09-14-2004, 11:36 PM
If you haven't already, disable GI for the glass material. That should cut a lot of time.

flingster
09-15-2004, 01:01 AM
If you haven't already, disable GI for the glass material. That should cut a lot of time.
any dispersion setting on transparency or reflection channels...wow..killer.

rendermania
09-15-2004, 03:09 PM
Thanks Rendermania! I'm still a learner!:) I'm obviosuly doing something seriously wrong to get such long render times!

You can view my image:

http://www.cgtalk.com/showthread.php?t=136912&page=2&pp=15

Radiosity Settings:

<li>Standard
<li>Strength: 97%
<li>Accuracy: 70%
<li>Prepass size: 1/4
<li>Diffuse Depth: 3
<li>Stochastic Samples: 200
<li> Min Resolution: 3
<li>Max Resolution: 70
<li>Recompute: Always
<li>Save Solution: checked
<li>Identical Noise Distribution: checked

Antialiasing Settings:

<li>Best
<li>Filter: Still image
<li>Threshold 10%
<li>min/Max level 1x1; 4x4
<li>Use object properties: checked. - On my floorboards I had the min max 4x4 and 8x8 (which I now know is waaay to high!)
<li>MIP Scale: 100%

The image is rendered at 1280 x 1024.

Thanks!
Am in a hurry to go someplace, but some brief suggestions:

MIP scale 100 will give you blurry textures. If you're using AA at 1x4 times 4x4 for the frame already, you can comfortably set it down to 20%, 10% or even 0% for better texture definition.

Try setting Radiosity accuracy down to 50-60% for a faster render if you can get away with it qualitywise, and a smaller range than Min 3 Max 70 will get you faster rendering as well. You could try something like Min 5 Max 20 and scale up gradually to deal with splotches etc. Interior stuff also lights more easily with more diffuse bounces in my experience, so setting that to 10 or 20 could help you cut down on the number of lights you need. In my experience, the diffuse bounces don't impact rendertimes too badly if your sample size and min/max values aren't through the roof.

Another factor - if you have hypernurbs objects in your scene, too many subdivisions will cripple your GI times as well. A lot of CAD scenes imported from elsewhere have nutty polygon/triangulation counts for simple objects like seatcushions, vases, doorhandles, books on a shelf and other barely visible stuff. It's worth optimizing that stuff for a much faster render and better viewport interaction.

You could also try AA at 1x1 times 2x2 with threshold 0 to see if that gets you a quicker render with acceptable image quality.

MulaG
09-15-2004, 03:17 PM
Am in a hurry to go someplace, but some brief suggestions:

MIP scale 100 will give you blurry textures. If you're using AA at 1x4 times 4x4 for the frame already, you can comfortably set it down to 20%, 10% or even 0% for better texture definition......
Well that's excellent advice for someone in a hurry! Really appreciated - I'll try those out:thumbsup:

Simon Wicker
09-15-2004, 03:37 PM
You could try something like Min 5 Max 20 and scale up gradually to deal with splotches etc.
as it mentions in the AR manual setting your min values too low slows down the render as the render engine takes time to decide what is the best place for the samples it has available. the sweet spot tends to be around a min value of 12 - 16 samples for a normal scale scene, going up from there as the scene gets bigger.

cheers, simon w.

ThirdEye
09-21-2004, 07:54 PM
the other thing is of course to check your material interpolation settings because they have a huge influence over the sharpness of the final render and the tendancy for the image to flicker
Sounds interesting Simon, would you like to share some details?

CGTalk Moderation
01-19-2006, 06:00 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.