POV-Ray : Newsgroups : povray.beta-test : Isosurface CSG shadow problem Server Time
31 Jul 2024 04:15:46 EDT (-0400)
  Isosurface CSG shadow problem (Message 11 to 13 of 13)  
<<< Previous 10 Messages Goto Initial 10 Messages
From: Bob H 
Subject: Re: Isosurface CSG shadow problem
Date: 24 Sep 2001 10:26:44
Message: <3baf42a4@news.povray.org>
"Slime" <noo### [at] hotmailcom> wrote in message
news:3baf39ad$1@news.povray.org...
> Oh, alright, sorry, I misread "max_trace" as "max_trace_level". Max_trace
> fixed it. But how come in CSG it tests for parts of the isosurface outside
> of what has been cut off from the isosurface? Why doesn't it only test the
> parts of the isosurface that have a chance of being visible?

Heh, my guess would be difficulties in bounding.  A isosurface has been said
to be an elusive thing to trace.  But you also seem to be talking about
Catmull hidden surface stuff, and I don't think POV-Ray does any Catmulling
really.  Not that I actually know anything.  And you might not be talking
about such a thing anyhow.

Bob H.


Post a reply to this message

From: Ron Parker
Subject: Re: Isosurface CSG shadow problem
Date: 24 Sep 2001 10:27:20
Message: <slrn9qugma.ot5.ron.parker@fwi.com>
On Mon, 24 Sep 2001 09:47:29 -0400, Slime wrote:
>Oh, alright, sorry, I misread "max_trace" as "max_trace_level". Max_trace
>fixed it. But how come in CSG it tests for parts of the isosurface outside
>of what has been cut off from the isosurface? Why doesn't it only test the
>parts of the isosurface that have a chance of being visible?

And how exactly do you think it should go about doing that?

-- 
#local R=rgb 99;#local P=R-R;#local F=pigment{gradient x}box{0,1pigment{gradient
y pigment_map{[.5F pigment_map{[.3R][.3F color_map{[.15red 99][.15P]}rotate z*45
translate x]}]#local H=pigment{gradient y color_map{[.5P][.5R]}scale 1/3}[.5F
pigment_map{[.3R][.3H][.7H][.7R]}]}}}camera{location.5-3*z}//only my opinions


Post a reply to this message

From: Slime
Subject: Re: Isosurface CSG shadow problem
Date: 24 Sep 2001 18:36:37
Message: <3bafb575$1@news.povray.org>
Well, I'm not really sure how the algorithm works for CSG, but for a simple
example of what I'm thinking of:

difference {
    isosurface {blah blah blah contained_by{ sphere{0,1} }}
    sphere { x,1 } // "sphere B"
}

If a ray hits the bounding sphere of the isosurface, but the point where it
hits it is *inside* sphere B, then it should not start checking
intersections of the isosurface. It should continue on until it hits the end
of sphere B. Then it should test to see if it's inside any *other* objects
in the difference, but ovbiously it's not in this case since there are no
other objects, so it should pretend as though it just entered the
isosurface, and start checking for intersections there.

Sort of as though the contained_by object itself were a CSG object.

If I sounded like I was challenging anyone in my previous post, I apologize,
I had no intention of doing so.

- Slime
[ http://www.teja.nu/slime/ ]
[ http://www.teja.nu/slime/images/ ]

"Ron Parker" <ron### [at] povrayorg> wrote in message
news:slr### [at] fwicom...
> On Mon, 24 Sep 2001 09:47:29 -0400, Slime wrote:
> >Oh, alright, sorry, I misread "max_trace" as "max_trace_level". Max_trace
> >fixed it. But how come in CSG it tests for parts of the isosurface
outside
> >of what has been cut off from the isosurface? Why doesn't it only test
the
> >parts of the isosurface that have a chance of being visible?
>
> And how exactly do you think it should go about doing that?
>
> --
> #local R=rgb 99;#local P=R-R;#local F=pigment{gradient
x}box{0,1pigment{gradient
> y pigment_map{[.5F pigment_map{[.3R][.3F color_map{[.15red
99][.15P]}rotate z*45
> translate x]}]#local H=pigment{gradient y color_map{[.5P][.5R]}scale
1/3}[.5F
> pigment_map{[.3R][.3H][.7H][.7R]}]}}}camera{location.5-3*z}//only my
opinions


Post a reply to this message

<<< Previous 10 Messages Goto Initial 10 Messages

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