|
|
On 01/14/2018 02:01 PM, Bald Eagle wrote:
> William F Pokorny <ano### [at] anonymousorg> wrote:
>
> That's a very cool idea! :)
Thanks. And, I see I attached the image for distance 0.707 instead of
the 0.8 I intended...
> Just to raise the bar a bit - is there any way that you can think of to simulate
> an interference pattern?
If multiple lights are projected onto a surface you can get
'interference effects' in POV-Ray. If you look at this code attachment:
http://news.povray.org/povray.binaries.images/attachment/%3C59c91c45%241%40news.povray.org%3E/utf-8
to the Calling the Doctor - nighttime - 16:9 thread:
http://news.povray.org/povray.binaries.images/thread/%3C59c067a6%40news.povray.org%3E/?mtop=417998
and just uncomment both lights you'll get an interference pattern from
both 'sphere/pattern enclosed' lights as seen on a plane. It's a
technique useful for creating image maps, height fields etc. Long
doable, but oh so much easier with the new 3.8 user_defined{} feature of
pigment{}.
With the technique I posted you can use more dual lights of differing
color to, for example, answer questions like what surface regions are
equidistant from two points in space.
Your following ideas - at least in some form - can work too I think
depending on what you want to do.
>
> But: Couldn't you just enclose the entire scene into a union, and use an onion
> pattern?
>
> Define a color map with a narrow band of white, and the rest is rgbt 1, and then
> scale it to highlight the desired distance.
>
> I suppose you could also define a color map for the onion pattern going from 0
> to 1, and then scaling it to the maximum desired radius. The color value at any
> point would then be the distance from wherever you translated the center of the
> onion pattern to.
>
Such approaches are the easiest by changing the pigment over distance,
having finishes of ambient 1 or emission 1 and taking care to
view/access/write linearly stored 'distance' values.
Note. You can change effective color of a light source over distance
using the positive/negative light method. For example update the two
light sources in my example code to read:
#declare Light00 = light_source {
<0.5,0.5,-0.5>, White
// fade_distance VarDistPos
// fade_power 1000
}
#declare Light01 = light_source {
<0.5,0.5,-0.5>, Blue*-1
fade_distance VarDistNeg
fade_power 1
}
The result is yellow up to VarDistNeg, then fading to white the further
you get from the dual light source position. Also note that the
intensity of the light 'seen' on the plane fades too as the angle of
rays becomes less and less perpendicular to the plane surface.
> At the moment, I think the only way to indirectly find the total ray path length
> is the formula method suggested by Christoph, but that's only for direct
> lighting. The ray path length for a light reflected from a mirror that hits an
> object and then travels to the camera (ok, it's the reverse of that for
> raytracing...) I think might presently be a challenging task.
>
Agree.
Aside: I find myself wondering what happens with pos/neg light sources
in media. Would both the positive and negative rays be sampled/scattered
identically?
Bill P.
Post a reply to this message
|
|