Different pixel values with/without ambient cache

Hi all,

I am wondering if this is still the effects from too many christmas cookies, but I am not able to solve the mismatch between (luminance) pixel values in two pictures rendered with and without (-aa 0) ambient cache.

The scene is as simple as possible, a window with a surface assigned a glass material (A1-A3 .7 .7 .7). Moderate two ambient bounces, a strong direct transmission. The same octree was used in two rendering runs, controlled by rad and distributed over several cores by rpiece (leading to some artefacts). I share the results as links:

To the compressed HDR images (hdr.bz2):
https://drive.switch.ch/index.php/s/m9l4gmWsoG995jO
https://drive.switch.ch/index.php/s/yifVqTxDOYWJ4dT

To the falsecolor illustrations (jpg):
https://drive.switch.ch/index.php/s/4JwoUBdgA7Ov4y1
https://drive.switch.ch/index.php/s/kGxCBVD8JcKGZhv

Values of a vertical row of pixels for varying -ad (and -lw = 1/ad) settings (pdf):
https://drive.switch.ch/index.php/s/UQq3Nh4g38rQ2Cs

The images were rendered with -ad 1024 -lw .0008 -aa .15 (with ambient cache) and -ad 4096 -lw .00024 -aa 0 (without cache). The plot indicates that for the given scene, even -ad 512 should give reasonable results. My expectation was that both images should be more or less equal, but obviously they are not. Can anyone explain this effect, or is there something I missed?

Cheers,
Lars.

Bonjour,

Je suis actuellement en vacances. Je serai de retour le 8 janvier 2018.

En cas d'urgence, vous pouvez toujours appeler le numéro général d'Estia : +41 (0) 21/510.59.59 ou envoyer un mail à l'adresse [email protected].

Pour toutes questions relatives à DIAL+, merci d'utiliser l'adresse mail [email protected].

Cordialement

Julien Boutillier
Estia SA

Hi Lars,

It's difficult to say for certain without your scene and knowing the rest of your options. (Were they the defaults?) I guess you aren't sharing your ambient cache file between rpiece processes as recommended.

My first guess is that you are only computing a single bounce with -aa 0. This would explain why the values are on the low side. If you set -ad 4096 then use an -lw setting of 1/4096 as you have, the weight test fails after the first bounce because the weight used is the first surface reflection divided by 4096. Without Russian roulette on (-lr negative), no interreflection rays will be traced past the first bounce. In general, I like to make sure my -lw setting is maybe 1/10th of the 1/N value for -ad N.

Cheers,
-Greg

P.S. If this doesn't solve the problem, please send me your scene and commands off-list and I'll take a closer look.

···

From: "Lars O. Grobe" <[email protected]>
Date: December 27, 2017 7:36:49 AM PST

Hi all,

I am wondering if this is still the effects from too many christmas cookies, but I am not able to solve the mismatch between (luminance) pixel values in two pictures rendered with and without (-aa 0) ambient cache.

The scene is as simple as possible, a window with a surface assigned a glass material (A1-A3 .7 .7 .7). Moderate two ambient bounces, a strong direct transmission. The same octree was used in two rendering runs, controlled by rad and distributed over several cores by rpiece (leading to some artefacts). I share the results as links:

To the compressed HDR images (hdr.bz2):
https://drive.switch.ch/index.php/s/m9l4gmWsoG995jO
https://drive.switch.ch/index.php/s/yifVqTxDOYWJ4dT

To the falsecolor illustrations (jpg):
https://drive.switch.ch/index.php/s/4JwoUBdgA7Ov4y1
https://drive.switch.ch/index.php/s/kGxCBVD8JcKGZhv

Values of a vertical row of pixels for varying -ad (and -lw = 1/ad) settings (pdf):
https://drive.switch.ch/index.php/s/UQq3Nh4g38rQ2Cs

The images were rendered with -ad 1024 -lw .0008 -aa .15 (with ambient cache) and -ad 4096 -lw .00024 -aa 0 (without cache). The plot indicates that for the given scene, even -ad 512 should give reasonable results. My expectation was that both images should be more or less equal, but obviously they are not. Can anyone explain this effect, or is there something I missed?

Cheers,
Lars.

Hi Greg,

thank you, that was in fact the reason for the mismatch. I had increased -ab without changing -lw.... In fact, this is also a problem with the "rules of thumb". I had initially set -ab 1 and -lw=1/ad (which often makes sense), and did not review this setting at a later point...

Cheers, Lars.

···

Hi Lars,

It's difficult to say for certain without your scene and knowing the rest of your options. (Were they the defaults?) I guess you aren't sharing your ambient cache file between rpiece processes as recommended.

My first guess is that you are only computing a single bounce with -aa 0. This would explain why the values are on the low side. If you set -ad 4096 then use an -lw setting of 1/4096 as you have, the weight test fails after the first bounce because the weight used is the first surface reflection divided by 4096. Without Russian roulette on (-lr negative), no interreflection rays will be traced past the first bounce. In general, I like to make sure my -lw setting is maybe 1/10th of the 1/N value for -ad N.

Cheers,
-Greg

P.S. If this doesn't solve the problem, please send me your scene and commands off-list and I'll take a closer look.