POV-Ray : Newsgroups : povray.binaries.images : verres1 file plus photons : Re: verres1 file plus photons Server Time
26 Apr 2024 03:35:15 EDT (-0400)
  Re: verres1 file plus photons  
From: William F Pokorny
Date: 26 Sep 2019 09:40:03
Message: <5d8cbfb3$1@news.povray.org>
On 9/25/19 7:03 PM, Alain Martel wrote:

> 
>> Aside: Since you have multiple lights... Christoph added some 
>> parallelism when shooting photons based upon each light source. Long 
>> wondered how much we might speed up photon generation on a large 
>> machines like yours by creating multiple, near duplicate light sources 
>> where each light source sits today. My bet is it would speed up the 
>> photon shooting step quite a bit if you have the cores - and slight 
>> offsets in the near duplicates might help the deposited distribution 
>> some. Would have to manage/adjust intensities for the multiples. If 
>> your interested in some experimentation, I'd be interested in what you 
>> find.
>>
>> Bill P.
> 
> It's not a good idea to duplicate lights. It's even worst in a photons 
> scene as the photons from the duplicated lights will be shot in the same 
> pattern and end up in the same locations = more photons, but same end 
> result.
> 
> It would be better to use area_light and add photons{area_light} to it's 
> definition.
> 
> This also tend to make photons more fuzzy, which may help hide the 
> graininess.
> 

Thanks for bringing up area lights with photons! Something I forgot in 
the moment was available with photon shooting. I've also got in my head 
there are some limitations when used with photons and I do not believe 
area lights will help much with photon shooting speed. The results as 
you say though are perhaps better / more fuzzy.

I did a poor job describing my aside about creating more light sources. 
Given how many photons are getting shot for a good result, my bet is 
photon shooting dominates the render time. The parallelism added was 
primarily by light source IIRC. To maximally use this photon shooting 
parallelism you need more light sources up to the number of effective 
cores you've got(1).

Yes, you must split lights smartly - which is what I was trying to hint 
at with the 'near duplicate' / 'slight offsets' wording.

Part of what I think is driving the need for so many photons in 
Norbert's scene is there are long vertical cylinders or cylinder-like 
portions of sors(2). The spiral shooting pattern crosses those only 
occasionally so it's likely going to generate bursts of deposited 
photons at each crossing - this likely effect is a candidate contributor 
for the graininess of the deposited photons.

So, my thinking for creating additional light sources would be say to 
split each of the existing 4 light sources into 4 each for a total of 16 
sources. Each set of 4 would be spaced vertically so the spiral patterns 
of each are offset; the intensities/4; the global photon spacing/4. It 
might make sense to do area lights on top of this - but there is already 
jitter as we spiral and shoot.

Aside: Something else which can create fuzzier results is to override 
the automatic gathering radius - make them larger. There are too some 
sampling counts that can be adjusted but I don't remember details. I 
think you can specify values for the target specification too other than 
1.0 though never played with it.

 > Also, avoid using sor with the open option. This is particularly
 > important with any object with an ior.
 > When you encounter a single surface, light get bent once. If you
 > encounter two surfaces, it is like the object is solid thorough.
 > You need to actually model the inner side of your object by backtracking
 > to the start point and shift your points slightly inward.
 >
 > The open option should never be used with any transparent object, no
 > matter what primitive is used.

I go along with what you've said up to this last 'never' rule. Never 
using open with media containers is a good rule. If we are just talking 
about transparency and want a visual effect and not physical accuracy, I 
think using opens are OK. What matters is whether the shape supports an 
inside-test/interior where the ior is tracked, and sors do.

You can use open objects with a defined inside / interior in csg and 
that single surface can create refracted rays. Might not correspond to 
any real world thing, but for effects, why not. You can also put such 
single surfaces together to form other 'complete/closed surface' 
transparent/ior/media supporting objects.

Lastly, if we want to go deeper, 'open' with sors is itself fuzzy. The 
user with their point list can effectively close a specified 'open' 
shape by taking the curve at one, or both, ends back to the origin. In 
such cases any 'open' gets ignored though having it might help 
performance as the cap tests can be avoided immediately. Further, rays 
which intersect only with the sor's sides are effectively sor-closed no 
matter the sor having actual ends or not.

Bill P.

(1) - Might there be a place for photon shooting only light sources. 
Used only to deposit photons and not after..?

(2) - There are other ways to increase the photon shooting densities on 
such shapes - breaking them more box or sphere like parts and not 
turning off split_unions(3)

(3) - Spot lights / cylinder lights can still largely miss when doing 
this kind of thing. Gets complicated to optimize. In the long term might 
other photon shooting methods / patterns help? Something like the 
user_defined camera / pigment capability but in a light source with 
respect to shooting photons. Letting the user specify the shooting 
patterns they want.


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.