Author Topic: Issues with A6 final (AA related)  (Read 2563 times)

2016-12-30, 17:00:27

SharpEars

  • Active Users
  • **
  • Posts: 103
    • View Profile
I am test driving the A6 final and am having some issues specifically related to aliasing (and a lack of good (and/or documented) anti-aliasing options):

1. In the documentation and on the web site there is mention of an internal resolution ("Internal res.") setting which by default is set to 1 or 2, depending on which web page on this site you believe. This setting does not seem to be viewable or changeable in the C4D version. It is not listed in the Image Filter settings at all. I see the image filter type, width, etc..., but the Internal Res. setting is completely absent from the available settings. Was it purposely removed and if so what has replaced it?

Update:

I just found the answer to this at: https://coronarenderer.freshdesk.com/support/solutions/articles/5000515615

The setting has been removed, leaving only highlight compression and clamping as fallbacks. I already tried highlight compression and this severely reduces/distorts the highlights and speculars of the image and greatly reduces contrast. I will take a look at highlight clamping, but based on the sample images at https://coronarenderer.freshdesk.com/support/solutions/articles/12000006462 it seems to either: 1) Not do much at higher settings 2) Reduce brightness and contrast to unacceptable levels, just like highlight compression, at lower levels.

So, what does all of this mean? If we want to get the former effect of internal resolution, we have to render at a higher resolution and then scale it down ourselves in post-processing - a major PITA, if you ask me. Also, Corona can do this much more intelligently in its engine. Instead of having the artist render the scene using a 2x resolution, resulting in four times as many pixels, to later scale it down (an effective method of manual aliasing reduction), the engine could potentially limit this process to only neighboring high contrast pixels, of which there most likely aren't very many. To do the same process manually in a reasonable amount of (rendering) time, one would have to create multiple renders: A baseline render at the desired final resolution (base-res) and several selective area (high-res) renders of problem areas with jaggies. These would then be scaled down to (base-res) in order to reduce and/or eliminate the jaggies and composited on the original (base-res) render. This of course would require quite a bit of manual labor.


2. With regard to the image filter type and width. By default, these are set to "Tent" and 2. This is producing heavy aliasing of some high contrast elements in my scene - fairly thin diagonal metal cylinders reflecting direct lighting along a portion of their curved area. Note that this is after hundreds of passes at a resolution of 1920x1080. Highlight clamping is at zero (I will try raising it) and compression is 1.0 (I tried increasing the highlight compression, but it just makes highlights and speculars in particular darker and in my opinion leaves the aliasing just as bad, if slightly less noticeable because of the lowered contrast) . I keep reading about a "Gaussian" filter type from other posts which is supposed to produce better anti-aliasing at the expense of some image sharpness, but this is not available from the filter type drop down in the A6 final. Also, I cannot find any documentation whatsoever about the various filter types (other than Tent or None, both of which produce very aliased results at a width of 2, anyways). Additionally, there does not appear to be any documentation whatsoever on how the filter width affects anti-aliasing. I would like to know what a good setting is to smooth out very high contrast direct reflecting diagonal highlights. A setting of 2 px doesn't cut it for my scenes.

I am loving the quality of the render overall, but these alias jaggies are just killing me. They remind me of ray tracing back in the 90s, but even then we had control over AA settings to combat this. It seems that Corona's idea of anti-aliasing is diametrically opposite to that of the native C4D physical renderer which by default takes a very heavy handed AA approach often blurring high-contrast details in the image as a result. I would like to achieve a middle of the road result - just enough AA to mostly remove the jaggies, without significantly blurring high-contrast details.
« Last Edit: 2016-12-30, 18:38:51 by SharpEars »

2017-05-08, 11:11:27
Reply #1

maru

  • Corona Team
  • Active Users
  • ****
  • Posts: 12784
  • Marcin
    • View Profile
This is a very important topic, so sorry for the delayed response.

Generally the issue with sharp pixels visible where contrasty areas meet is valid for virtually any renderer. It is just sometimes "hidden" by using clever tricks such as displaying clamped image in the VFB (but the jagged edges will be visible when opening the exr in Photoshop!), or using features which basically work like clamping or blurring only the brightest areas.

Currently there are few ways to deal with this, some are more destructive than the other, and this includes:

-Reducing exposure - this will obviously change the way the image looks
-Increasing highlight compression - this will also affect the way the image looks, but only in the brightest areas
-Increasing filmic highlights - same as above, plus some extra visible effect
-Using bloom and glare (especially glare) - this often works really nice, but obviously will also affect some areas of the image you might not want to affect - e.g. light sources
-Using highlight clamping - this usually does the best job, but you will then lose the dynamic range if you would like to use 32-bit format
-Using blur and sharpen in the VFB post settings - this also often does very good job, but will obviously slightly change the image

From our experience, mixing some of the methods often works really well. Example:








We will definitely look into this further, as the topic often appears when talking to our users.

Marcin Miodek | chaos-corona.com
3D Support Team Lead - Corona | contact us

2017-05-09, 10:39:57
Reply #2

houska

  • Former Corona Team Member
  • Active Users
  • **
  • Posts: 1512
  • Cestmir Houska
    • View Profile
Also, if you want more insight, you can look at my answer here: https://forum.corona-renderer.com/index.php/topic,14341.msg100600.html#msg100600

Edit: What I write there also explains why anti-aliasing or oversampling (rendering at higher resolution and then downscaling) doesn't help. It's not that Corona doesn't do anti-aliasing, it's just that these highlight values are pretty resistant when it comes down to antialiasing them to look good in exposure-corrected image :-)
« Last Edit: 2017-05-09, 10:43:32 by houska »