 |
 |
|
 |
|
 |
|  |
|  |
|
 |
From: Nekar Xenos
Subject: Re: Question to Kari about his glassware
Date: 11 Oct 2001 02:23:02
Message: <3bc53ac6@news.povray.org>
|
|
 |
|  |
|  |
|
 |
"Warp" <war### [at] tag povray org> wrote in message news:3bc49ba9@news.povray.org...
> JRG <jrg### [at] hotmail com> wrote:
> : I noticed you did not use any specular higlights in your glass textures. Are
> : you doing so because specular highlights do not exist in RL and you are
> : leaving the work to real reflections?
>
> Specular highlights are a method to simulate a physical phenomenon which
> happens in reality. It's very difficult to simulate this phenomenon by using
> just reflection (you need *at least* blurred reflection and probably something
> more).
>
Talking about specular highlights, I was considering removing them from my car
and simulate it with an area light and/or looks_like. Would this work?
- Nekar
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.282 / Virus Database: 150 - Release Date: 2001/09/25
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"Nekar Xenos" <j-p### [at] citywalk co za> wrote in message
news:3bc53ac6@news.povray.org...
>
> Talking about specular highlights, I was considering removing them from my
car
> and simulate it with an area light and/or looks_like. Would this work?
area_light no, looks_like yes. Since area lights still produce just one
point source it'll be the object acting as a light that will be seen in any
reflections. If your looks like object has highlights on, it will also show
just the one source instead of a array of them.
Bob H.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Nekar Xenos <j-p### [at] citywalk co za> wrote:
: Talking about specular highlights, I was considering removing them from my car
: and simulate it with an area light and/or looks_like. Would this work?
The problem with reflection is that it's linear. This means that if you
have a reflection 0.1, then *everything* which is reflected is multiplied
by 0.1. This means that a "light source" (with a looks_like object) of
color <1,1,1> will be multiplied by 0.1, so only <.1,.1,.1> is reflected.
However, in realitity bright light sources are reflected in polished surfaces
more than dim light. This is exactly what the specular lighting model tries
to simulate (and succeeds a lot better than reflection alone).
One idea: I haven't tested what happens if your looks_like object is
colored with <10,10,10> (while the reflecting surface has a reflection 0.1).
Note that this only works for *perfect mirrors*. In reality surfaces are
seldom perfect mirrors, but they instead scatter light to all directions
(but not evenly: they reflect more light than they scatter to all directions,
and this is what causes highlights). That is, the reflection has a mirror
component and a scattering component.
The result of this is that highlights are often fuzzy (except for very
polished/smooth surfaces, such as glass or polished metal). Objects do not
reflect the light source as a perfect mirror, but the light source is reflected
fuzzily/blurred.
--
#macro N(D,I)#if(I<6)cylinder{M()#local D[I]=div(D[I],104);M().5,2pigment{
rgb M()}}N(D,(D[I]>99?I:I+1))#end#end#macro M()<mod(D[I],13)-6,mod(div(D[I
],13),8)-3,10>#end blob{N(array[6]{11117333955,
7382340,3358,3900569407,970,4254934330},0)}// - Warp -
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
I have been trying to do scenes without specular highlighting for some time
now and take advantage of the fresnel type reflection. I have been using a
white sphere with a high ambient value (say 100) with global ambient set to
1. All other textures have ambient set explicitly to 0. This seems to work
as I want it to for shiny surfaces. I'm still working on a way to get a
blurred reflection.
-tgq
Try the following scene:
--start--
global_settings {
assumed_gamma 1.0
max_trace_level 25
ambient_light 1
}
camera {
up y
right x*image_width/image_height
location <3,2,-3>
look_at <0,1,0>
}
#declare LB=sphere{0 .5 hollow pigment{rgb 1} finish{ambient 50}}
light_source{0
rgb 1
looks_like{LB}
fade_power 2
fade_distance 5
translate <3,3,-3>
}
plane {y 0 pigment{checker rgb 1 rgb 0}}
#declare M1=
material{
texture{
pigment{red 1}
finish{
conserve_energy
ambient 0
diffuse 0
reflection {
0 1
fresnel on
metallic 1
}
}
}
interior{ior 25}
}
#declare M2=
material{
texture{
pigment{red 1}
finish{
conserve_energy
ambient 0
diffuse .25
reflection {
0 1
fresnel on
metallic 0
}
}
}
interior{ior 1.3}
}
sphere{<1,1,1> 1 material{M1}}
sphere{<-1,1,-1> 1 material{M2}}
--end--
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"Warp" <war### [at] tag povray org> wrote in message
news:3bc5676c@news.povray.org...
>
> The problem with reflection is that it's linear. This means that if you
> have a reflection 0.1, then *everything* which is reflected is multiplied
> by 0.1. This means that a "light source" (with a looks_like object) of
> color <1,1,1> will be multiplied by 0.1, so only <.1,.1,.1> is reflected.
> However, in realitity bright light sources are reflected in polished
surfaces
> more than dim light. This is exactly what the specular lighting model
tries
> to simulate (and succeeds a lot better than reflection alone).
Keyword exponent in a reflection statement is the new way of saying
reflection_exponent as was used in v3.1, and it'll do a similar effect as
mentioned by Warp. Value less than 1.0 will darken all but the brightest
scene objects.
Of course to use looks_like and have a reasonable highlight on the subject
object you'd want to use specular highlighting in the finish of a clear
object acting as the light source in order to get a softened fake highlight.
Else all you get is the directly reflected object outline instead.
That's what Warp was describing is different from the reality if you try
reflection alone.
> One idea: I haven't tested what happens if your looks_like object is
> colored with <10,10,10> (while the reflecting surface has a reflection
0.1).
It does contribute more to the reflection. Having checked, high diffuse
creates about the best faked highlighting, kind of figured it might.
Ambient and color are too solid to be useful. Problem with that idea though
is how you need some non-transparent color for diffuse to do anything which
then can show up where not wanted.
Bob H.
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Bob H. <omn### [at] msn com> wrote:
:> The problem with reflection is that it's linear.
: Keyword exponent in a reflection statement is the new way of saying
: reflection_exponent as was used in v3.1, and it'll do a similar effect as
: mentioned by Warp.
Here we can see that even pros don't remember everything... :P
Yes, the reflection exponent can help a lot here. Great point.
--
#macro N(D,I)#if(I<6)cylinder{M()#local D[I]=div(D[I],104);M().5,2pigment{
rgb M()}}N(D,(D[I]>99?I:I+1))#end#end#macro M()<mod(D[I],13)-6,mod(div(D[I
],13),8)-3,10>#end blob{N(array[6]{11117333955,
7382340,3358,3900569407,970,4254934330},0)}// - Warp -
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Warp wrote:
>
> Nekar Xenos <j-p### [at] citywalk co za> wrote:
> : Talking about specular highlights, I was considering removing them from my car
> : and simulate it with an area light and/or looks_like. Would this work?
>
> The problem with reflection is that it's linear. This means that if you
> have a reflection 0.1, then *everything* which is reflected is multiplied
> by 0.1. This means that a "light source" (with a looks_like object) of
> color <1,1,1> will be multiplied by 0.1, so only <.1,.1,.1> is reflected.
> However, in realitity bright light sources are reflected in polished surfaces
> more than dim light.
I suspect that what's really happening is that the light sources being
reflected are much brighter than we think they are. In POV-Ray,
everything eventually gets clipped at 1, so there's a tendency to not
use anything brighter, but that light source might realistically be
closer to rgb 30.
I wonder what would happen if Kari's dynamic range tricks were used in a
scene with shiny objects, if it would create "realistic" reflections...
-Xplo
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
"Trevor Quayle" wrote:
> I have been using a white sphere with a high ambient value
> (say 100) with global ambient set to 1. All other textures
> have ambient set explicitly to 0. This seems to work as I
> want it to for shiny surfaces. I'm still working on a way
> to get a blurred reflection.
Using a normal scaled very small combined with heavy antialiasing would work
if POV-Ray did antialiasing before doing color-clipping to the 0-1 range.
But because POV-Ray do color-clipping before antialiasing, this doesn't
work.
This may sound bad, but there's a reason that POV-Ray works this way. If it
did color-clipping after antialiasing, it would mean that very bright
objects in the scene would not be properly antialiased because the bright
samples in an antialiased pixel would completely outweigh the dim samples,
even if there are more dim samples.
So unfortunately I see no solution...
Rune
--
3D images and anims, include files, tutorials and more:
Rune's World: http://rsj.mobilixnet.dk (updated June 26)
POV-Ray Users: http://rsj.mobilixnet.dk/povrayusers/
POV-Ray Webring: http://webring.povray.co.uk
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Yes I have been trying that with limited success, I can get a somewhat
blurry reflection but not much control over it, it renders horrible without
AA as well.
-tgq
"Rune" <run### [at] mobilixnet dk> wrote in message
news:3bc60d42@news.povray.org...
> "Trevor Quayle" wrote:
> > I have been using a white sphere with a high ambient value
> > (say 100) with global ambient set to 1. All other textures
> > have ambient set explicitly to 0. This seems to work as I
> > want it to for shiny surfaces. I'm still working on a way
> > to get a blurred reflection.
>
> Using a normal scaled very small combined with heavy antialiasing would
work
> if POV-Ray did antialiasing before doing color-clipping to the 0-1 range.
>
> But because POV-Ray do color-clipping before antialiasing, this doesn't
> work.
>
> This may sound bad, but there's a reason that POV-Ray works this way. If
it
> did color-clipping after antialiasing, it would mean that very bright
> objects in the scene would not be properly antialiased because the bright
> samples in an antialiased pixel would completely outweigh the dim samples,
> even if there are more dim samples.
>
> So unfortunately I see no solution...
>
> Rune
> --
> 3D images and anims, include files, tutorials and more:
> Rune's World: http://rsj.mobilixnet.dk (updated June 26)
> POV-Ray Users: http://rsj.mobilixnet.dk/povrayusers/
> POV-Ray Webring: http://webring.povray.co.uk
>
>
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Xplo Eristotle wrote:
>
> I wonder what would happen if Kari's dynamic range tricks were used in a
> scene with shiny objects, if it would create "realistic" reflections...
Since dynamic range compression simulates photographs everything
that is correctly simulated in pov, including reflections and
higlights, would look like they look in photographs. With higlights
and other bright spots the over exposure/halo effects would have to
be added separately.
_____________
Kari Kivisalo
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|
 |