direct sampling behavior

Hi Radiance Developers (Greg),

I often find myself oversampling an image by as much as 8 times to render
smooth penumbras. I wonder if it would make sense to add an option to
Radiance that would allow users to force additional direct samples when
they want nice penumbras (assuming that -dj is non-zero). Then when I want
a final image that is 1200x800 I don't need to render it at 9600x6400 and
filter it down, I could render at 1200x800 and request 64 direct samples
per light source to get the same smooth penumbras.

Would this actually help me, or is the time difference between rendering
9600x6400 with 1 direct sample to rendering 1200x800 with 64 direct samples
negligible?

Andy

Dear Picky Penumbra People (Andy):

It's difficult to say for sure without implementing such an option, but the source sampling often dominates the calculation time to the point where you might not gain much over your current approach. Increasing image resolution adds some minor costs for the initial ray casting from the view point, and some calculation time looking up and interpolating values from the ambient cache (assuming you are using that), but those are pretty nominal. Your biggest gains for multiple source sampling would come from scenes with only one or two light sources.

One thing to bear in mind is that lights that are either sphere or source types don't know how to subdivide, so the -ds option doesn't do what it should for those emitters. Otherwise, you can get better penumbras by reducing your -ds value to some small (non-zero) value in addition to using -dj 1.

Cheers,
-Greg

···

From: Andy McNeil <[email protected]>
Subject: [Radiance-dev] direct sampling behavior
Date: September 17, 2015 11:04:22 AM PDT

Hi Radiance Developers (Greg),

I often find myself oversampling an image by as much as 8 times to render smooth penumbras. I wonder if it would make sense to add an option to Radiance that would allow users to force additional direct samples when they want nice penumbras (assuming that -dj is non-zero). Then when I want a final image that is 1200x800 I don't need to render it at 9600x6400 and filter it down, I could render at 1200x800 and request 64 direct samples per light source to get the same smooth penumbras.

Would this actually help me, or is the time difference between rendering 9600x6400 with 1 direct sample to rendering 1200x800 with 64 direct samples negligible?

Andy

Could I test the relative speed by rendering a scene with 64 coincident
suns of 1/64th the radiance?
Actually, if this works, it might be a suitable solution for us picky
penumbra people.

Andy

···

On Thu, Sep 17, 2015 at 12:08 PM, Gregory J. Ward <[email protected]> wrote:

Dear Picky Penumbra People (Andy):

It's difficult to say for sure without implementing such an option, but
the source sampling often dominates the calculation time to the point where
you might not gain much over your current approach. Increasing image
resolution adds some minor costs for the initial ray casting from the view
point, and some calculation time looking up and interpolating values from
the ambient cache (assuming you are using that), but those are pretty
nominal. Your biggest gains for multiple source sampling would come from
scenes with only one or two light sources.

One thing to bear in mind is that lights that are either sphere or source
types don't know how to subdivide, so the -ds option doesn't do what it
should for those emitters. Otherwise, you can get better penumbras by
reducing your -ds value to some small (non-zero) value in addition to using
-dj 1.

Cheers,
-Greg

*From: *Andy McNeil <[email protected]>

*Subject: *[Radiance-dev] direct sampling behavior

*Date: *September 17, 2015 11:04:22 AM PDT

Hi Radiance Developers (Greg),

I often find myself oversampling an image by as much as 8 times to render
smooth penumbras. I wonder if it would make sense to add an option to
Radiance that would allow users to force additional direct samples when
they want nice penumbras (assuming that -dj is non-zero). Then when I want
a final image that is 1200x800 I don't need to render it at 9600x6400 and
filter it down, I could render at 1200x800 and request 64 direct samples
per light source to get the same smooth penumbras.

Would this actually help me, or is the time difference between rendering
9600x6400 with 1 direct sample to rendering 1200x800 with 64 direct samples
negligible?

Andy

_______________________________________________
Radiance-dev mailing list
[email protected]
http://www.radiance-online.org/mailman/listinfo/radiance-dev

Andy,

I think a lot like you. I have a Perl script somewhere around here
that does just that---can't find it yet.

On a related note, I did some experiments a while back comparing
ambient sampling with image oversampling, and in the process learned a
lot about penumbras. I'm posting it here in hopes that you or someone
finds it useful:

http://markjstock.org/radmisc/aa0_ps1_test/final.html

Mark

···

On 9/17/15, Andy McNeil <[email protected]> wrote:

Could I test the relative speed by rendering a scene with 64 coincident
suns of 1/64th the radiance?
Actually, if this works, it might be a suitable solution for us picky
penumbra people.

Andy

On Thu, Sep 17, 2015 at 12:08 PM, Gregory J. Ward <[email protected]> > wrote:

Dear Picky Penumbra People (Andy):

It's difficult to say for sure without implementing such an option, but
the source sampling often dominates the calculation time to the point
where
you might not gain much over your current approach. Increasing image
resolution adds some minor costs for the initial ray casting from the
view
point, and some calculation time looking up and interpolating values from
the ambient cache (assuming you are using that), but those are pretty
nominal. Your biggest gains for multiple source sampling would come from
scenes with only one or two light sources.

One thing to bear in mind is that lights that are either sphere or source
types don't know how to subdivide, so the -ds option doesn't do what it
should for those emitters. Otherwise, you can get better penumbras by
reducing your -ds value to some small (non-zero) value in addition to
using
-dj 1.

Cheers,
-Greg

*From: *Andy McNeil <[email protected]>

*Subject: *[Radiance-dev] direct sampling behavior

*Date: *September 17, 2015 11:04:22 AM PDT

Hi Radiance Developers (Greg),

I often find myself oversampling an image by as much as 8 times to render
smooth penumbras. I wonder if it would make sense to add an option to
Radiance that would allow users to force additional direct samples when
they want nice penumbras (assuming that -dj is non-zero). Then when I
want
a final image that is 1200x800 I don't need to render it at 9600x6400 and
filter it down, I could render at 1200x800 and request 64 direct samples
per light source to get the same smooth penumbras.

Would this actually help me, or is the time difference between rendering
9600x6400 with 1 direct sample to rendering 1200x800 with 64 direct
samples
negligible?

Andy

_______________________________________________
Radiance-dev mailing list
[email protected]
http://www.radiance-online.org/mailman/listinfo/radiance-dev

Mark,

That's great! I didn't expect it, but it's actually quite logical that you
can reduce the -ad parameter when oversampling and when when the ambient
cache is disabled. I guess a pixel in the final rendering is the average of
the oversampled pixels, so 4 ad samples oversampled 4 times is the same as
16 ad samples without oversampling. That should help considerably when
oversampling for penumbras.

Thanks!
Andy

···

On Thu, Sep 17, 2015 at 12:22 PM, Mark Stock <[email protected]> wrote:

Andy,

I think a lot like you. I have a Perl script somewhere around here
that does just that---can't find it yet.

On a related note, I did some experiments a while back comparing
ambient sampling with image oversampling, and in the process learned a
lot about penumbras. I'm posting it here in hopes that you or someone
finds it useful:

http://markjstock.org/radmisc/aa0_ps1_test/final.html

Mark

On 9/17/15, Andy McNeil <[email protected]> wrote:
> Could I test the relative speed by rendering a scene with 64 coincident
> suns of 1/64th the radiance?
> Actually, if this works, it might be a suitable solution for us picky
> penumbra people.
>
> Andy
>
>
> On Thu, Sep 17, 2015 at 12:08 PM, Gregory J. Ward < > [email protected]> > > wrote:
>
>> Dear Picky Penumbra People (Andy):
>>
>> It's difficult to say for sure without implementing such an option, but
>> the source sampling often dominates the calculation time to the point
>> where
>> you might not gain much over your current approach. Increasing image
>> resolution adds some minor costs for the initial ray casting from the
>> view
>> point, and some calculation time looking up and interpolating values
from
>> the ambient cache (assuming you are using that), but those are pretty
>> nominal. Your biggest gains for multiple source sampling would come
from
>> scenes with only one or two light sources.
>>
>> One thing to bear in mind is that lights that are either sphere or
source
>> types don't know how to subdivide, so the -ds option doesn't do what it
>> should for those emitters. Otherwise, you can get better penumbras by
>> reducing your -ds value to some small (non-zero) value in addition to
>> using
>> -dj 1.
>>
>> Cheers,
>> -Greg
>>
>> *From: *Andy McNeil <[email protected]>
>>
>> *Subject: *[Radiance-dev] direct sampling behavior
>>
>> *Date: *September 17, 2015 11:04:22 AM PDT
>>
>>
>> Hi Radiance Developers (Greg),
>>
>> I often find myself oversampling an image by as much as 8 times to
render
>> smooth penumbras. I wonder if it would make sense to add an option to
>> Radiance that would allow users to force additional direct samples when
>> they want nice penumbras (assuming that -dj is non-zero). Then when I
>> want
>> a final image that is 1200x800 I don't need to render it at 9600x6400
and
>> filter it down, I could render at 1200x800 and request 64 direct samples
>> per light source to get the same smooth penumbras.
>>
>> Would this actually help me, or is the time difference between rendering
>> 9600x6400 with 1 direct sample to rendering 1200x800 with 64 direct
>> samples
>> negligible?
>>
>> Andy
>>
>>
>> _______________________________________________
>> Radiance-dev mailing list
>> [email protected]
>> http://www.radiance-online.org/mailman/listinfo/radiance-dev
>>
>>
>

_______________________________________________
Radiance-dev mailing list
[email protected]
http://www.radiance-online.org/mailman/listinfo/radiance-dev

Yes, I think the coincident suns trick should work. Did you try it? It's only valid for distant sources -- anything else would give unreliable results, since local sources cast shadows from one another.

-G

···

From: Andy McNeil <[email protected]>
Subject: Re: [Radiance-dev] direct sampling behavior
Date: September 17, 2015 12:17:09 PM PDT

Could I test the relative speed by rendering a scene with 64 coincident suns of 1/64th the radiance?
Actually, if this works, it might be a suitable solution for us picky penumbra people.

Andy

On Thu, Sep 17, 2015 at 12:08 PM, Gregory J. Ward <[email protected]> wrote:
Dear Picky Penumbra People (Andy):

It's difficult to say for sure without implementing such an option, but the source sampling often dominates the calculation time to the point where you might not gain much over your current approach. Increasing image resolution adds some minor costs for the initial ray casting from the view point, and some calculation time looking up and interpolating values from the ambient cache (assuming you are using that), but those are pretty nominal. Your biggest gains for multiple source sampling would come from scenes with only one or two light sources.

One thing to bear in mind is that lights that are either sphere or source types don't know how to subdivide, so the -ds option doesn't do what it should for those emitters. Otherwise, you can get better penumbras by reducing your -ds value to some small (non-zero) value in addition to using -dj 1.

Cheers,
-Greg

From: Andy McNeil <[email protected]>
Subject: [Radiance-dev] direct sampling behavior
Date: September 17, 2015 11:04:22 AM PDT

Hi Radiance Developers (Greg),

I often find myself oversampling an image by as much as 8 times to render smooth penumbras. I wonder if it would make sense to add an option to Radiance that would allow users to force additional direct samples when they want nice penumbras (assuming that -dj is non-zero). Then when I want a final image that is 1200x800 I don't need to render it at 9600x6400 and filter it down, I could render at 1200x800 and request 64 direct samples per light source to get the same smooth penumbras.

Would this actually help me, or is the time difference between rendering 9600x6400 with 1 direct sample to rendering 1200x800 with 64 direct samples negligible?

Andy

_______________________________________________
Radiance-dev mailing list
[email protected]
http://www.radiance-online.org/mailman/listinfo/radiance-dev

_______________________________________________
Radiance-dev mailing list
[email protected]
http://www.radiance-online.org/mailman/listinfo/radiance-dev