POV-Ray : Newsgroups : povray.advanced-users : No reflection for a specific object? Server Time
30 Jul 2024 02:23:26 EDT (-0400)
  No reflection for a specific object? (Message 11 to 20 of 23)  
<<< Previous 10 Messages Goto Latest 10 Messages Next 3 Messages >>>
From: Chris Huff
Subject: Re: No reflection for a specific object?
Date: 12 Nov 2000 09:00:08
Message: <chrishuff-959C74.09001812112000@news.povray.org>
In article <3A0E4D2F.367F2933@yahoo.com>, lem### [at] yahoocom wrote:

> Very interesting!...  But... it doesn't seem to work...
> 
> I tried the simplified scene with a white sphere and a mirror, the 
> bounded_by is set to the camera position, everything seems alright, 
> but I see two spheres...
> 
> Do I need any other keywords in order to make this work?

Don't forget the light sources...
Hmm, you probably need to tell POV not to ignore your bounding. On the 
Mac it is just a checkbox, you will probably have to put something in 
your .ini file.
I think it went this way: the earliest versions of POV didn't do 
automatic bounding, so it was all manual. When autobounding was added, 
it sometimes did a better job than manual bounding, so an option to 
override manual bounding was added. I think this option is on in your 
case.

-- 
Christopher James Huff
Personal: chr### [at] maccom, http://homepage.mac.com/chrishuff/
TAG: chr### [at] tagpovrayorg, http://tag.povray.org/

<><


Post a reply to this message

From: Margus Ramst
Subject: Re: No reflection for a specific object?
Date: 12 Nov 2000 09:54:14
Message: <3A0EAF40.709AAF6C@peak.edu.ee>
Simon Lemieux wrote:
> 
> Interesting, so, will doing these bounding boxes hack make my object appear in
> front of the camera but not in the mirror beside it?
> 

It should, yes.

-- 
Margus Ramst

Personal e-mail: mar### [at] peakeduee
TAG (Team Assistance Group) e-mail: mar### [at] tagpovrayorg


Post a reply to this message

From: Simon Lemieux
Subject: Re: No reflection for a specific object?
Date: 12 Nov 2000 11:37:54
Message: <3A0ED597.40992B28@yahoo.com>
> Don't forget the light sources...
> Hmm, you probably need to tell POV not to ignore your bounding. On the
> Mac it is just a checkbox, you will probably have to put something in
> your .ini file.
> I think it went this way: the earliest versions of POV didn't do
> automatic bounding, so it was all manual. When autobounding was added,
> it sometimes did a better job than manual bounding, so an option to
> override manual bounding was added. I think this option is on in your
> case.

Did it for the lights, did it for the switch, still doesn't work...

Anyway, I checked this, it shouldn't work anyway, since the very small sphere
will be seen in the other mirror...

try this:

#declare CameraLocation = <0,1,2>
camera {
  location CameraLocation
  look_at <0, 0, -1>
}

// no light source

plane { <0,0,1>, 0 pigment {rgb <1,1,0>} finish {reflection 1}}

sphere { <0,0,1>, 0.5 pigment {rgb 1} finish {ambient 1}

//bounded_by { sphere { CameraLocation ,.1 } }
}


----------

remove the comment before the "bounded_by" and you should get the same image, at
least that's what I got... :/  Is there something else missing?

Thanks,
	Simon

-- 
+-------------------------+----------------------------------+
| Simon Lemieux           | Website : http://www.666Mhz.net  |
| Email : Sin### [at] 666Mhznet | POV-Ray, OpenGL, C++ and more... |
+-------------------------+----------------------------------+


Post a reply to this message

From: Margus Ramst
Subject: Re: No reflection for a specific object?
Date: 12 Nov 2000 15:26:56
Message: <3A0EFD3B.7E6BD755@peak.edu.ee>
Simon Lemieux wrote:
> 
> Did it for the lights, did it for the switch, still doesn't work...
> 

Your example works as expected here (i.e. the reflection disappears). Did you
use the command-line switch correctly? -UR will turn off user bounds removal
(note the minus sign before the switch to turn a feature off, the plus sign will
turn it on).

-- 
Margus Ramst

Personal e-mail: mar### [at] peakeduee
TAG (Team Assistance Group) e-mail: mar### [at] tagpovrayorg


Post a reply to this message

From: Mike Williams
Subject: Re: No reflection for a specific object?
Date: 12 Nov 2000 17:10:12
Message: <J0mViAAc1vD6EwbO@econym.demon.co.uk>
Wasn't it Simon Lemieux who wrote:
>Hi,
>       I was wondering if it was possible to tell an object to cast no 
>reflection? 
>Probably much like a "vampire effect" ;) or like the media_interaction or
>cast_shadow in lights... etc...

MegaPOV has a "no_reflection" object modifier that does exactly that.

-- 
Mike Williams
Gentleman of Leisure


Post a reply to this message

From: Alan Kong
Subject: Re: No reflection for a specific object?
Date: 12 Nov 2000 17:57:03
Message: <s08u0t4qlo7vet566f271uqsbf20eu9gv0@4ax.com>
On Sun, 12 Nov 2000 02:00:57 +0200 Margus Ramst wrote:

>Specifically, bound the object with very small boxes/spheres near (or around)
>the camera, and any light_sources that you want this object to interact with.

  I seem to recall Warp posting a bunch of really neat demo images using
this technique at least one year ago in p.b.i.

-- 
Alan - ako### [at] povrayorg - a k o n g <at> p o v r a y <dot> o r g
http://www.povray.org - Home of the Persistence of Vision Ray Tracer


Post a reply to this message

From: Simon Lemieux
Subject: Re: No reflection for a specific object?
Date: 12 Nov 2000 20:43:16
Message: <3A0F556E.28EAA28A@yahoo.com>
> Your example works as expected here (i.e. the reflection disappears). Did you
> use the command-line switch correctly? -UR will turn off user bounds removal
> (note the minus sign before the switch to turn a feature off, the plus sign will
> turn it on).

Duh... sorry for this stupid mistake of mine!...  I did add the switch but with
a + -> +UR  and it does work!  So I'll try with my current scene that needs the
vampire effect and I'll post any good result shortly!

Thank you very much!
	Simon

-- 
+-------------------------+----------------------------------+
| Simon Lemieux           | Website : http://www.666Mhz.net  |
| Email : Sin### [at] 666Mhznet | POV-Ray, OpenGL, C++ and more... |
+-------------------------+----------------------------------+


Post a reply to this message

From: Warp
Subject: Re: No reflection for a specific object?
Date: 13 Nov 2000 09:52:17
Message: <3a100021@news.povray.org>
Chris Huff <chr### [at] maccom> wrote:
: Bound it with a union of spheres or boxes, one around the camera and one 
: around each light that you want it to interact with.

  That has only one slight problem: Povray will test for that object in
every pixel. If it's a slow object, it will slow the rendering of the
whole image.

  A more accurate bounding is possible by projecting the bounding box very
close to the camera/light source but still covering just the area which the
object takes.
  This projection sounds quite complicated and mathematically challenging,
but it's surprisingly easy:

bounded_by
{ object
  { ... // your optimal bounding object around the object as usual
    translate -Camera_Location
    scale .001 // or whatever very small value; should be small enough
    translate Camera_Location
  }
}

  I know that although it looks extremely simple, it's very hard to see
why this works. If you think about it long enough, you'll figure out why
it works.

  For light_source bounding just put that one in a union and add the same
object but make the transformations with the light_source location.

-- 
main(i,_){for(_?--i,main(i+2,"FhhQHFIJD|FQTITFN]zRFHhhTBFHhhTBFysdB"[i]
):_;i&&_>1;printf("%s",_-70?_&1?"[]":" ":(_=0,"\n")),_/=2);} /*- Warp -*/


Post a reply to this message

From: David Fontaine
Subject: Re: No reflection for a specific object?
Date: 14 Nov 2000 00:02:02
Message: <3A10C6E9.BC65EA8E@faricy.net>
Warp wrote:

> bounded_by
> { object
>   { ... // your optimal bounding object around the object as usual
>     translate -Camera_Location
>     scale .001 // or whatever very small value; should be small enough
>     translate Camera_Location
>   }
> }
>
>   I know that although it looks extremely simple, it's very hard to see
> why this works. If you think about it long enough, you'll figure out why
> it works.

I see exactly why it works :)
When you scale an object smaller it not only gets smaller but gets closer to
the origin, which has been moved to the camera location. It gets smaller at the
same rate it gets bigger from the viewpoint of the origin (camera), if I'm
picturing this right.

--
David Fontaine  <dav### [at] faricynet>  ICQ 55354965
My raytracing gallery:  http://davidf.faricy.net/


Post a reply to this message

From: Simon Lemieux
Subject: Re: No reflection for a specific object?
Date: 14 Nov 2000 20:37:39
Message: <3A11F737.61983F4B@yahoo.com>
> I see exactly why it works :)
> When you scale an object smaller it not only gets smaller but gets closer to
> the origin, which has been moved to the camera location. It gets smaller at the
> same rate it gets bigger from the viewpoint of the origin (camera), if I'm
> picturing this right.

Actually, as I figured it is the size doesn't matter (unless POVray doesn't like
to deal with nanoscopic numbers) all that matters is that whatever the size the
camera (which is actually a perfectly precise point) will always be _inside_ the
sphere or the object that is not a point...  A real point (i think) should be
like a sphere { Loc, 0 } so to contain that point, all you need is a sphere {
Loc, >0 } (note that radius is >0 not >=0)...

If I understood this right, this should be right, but I'm not absolutely sure...

-- 
+-------------------------+----------------------------------+
| Simon Lemieux           | Website : http://www.666Mhz.net  |
| Email : Sin### [at] 666Mhznet | POV-Ray, OpenGL, C++ and more... |
+-------------------------+----------------------------------+


Post a reply to this message

<<< Previous 10 Messages Goto Latest 10 Messages Next 3 Messages >>>

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