POV-Ray : Newsgroups : povray.beta-test : Beta29 isosurface badly broken Server Time
28 Jul 2024 18:27:10 EDT (-0400)
  Beta29 isosurface badly broken (Message 11 to 15 of 15)  
<<< Previous 10 Messages Goto Initial 10 Messages
From: Slime
Subject: Re: Beta29 isosurface badly broken
Date: 15 Nov 2008 02:12:31
Message: <491e765f@news.povray.org>
> Renders about the same in 3.6 and 3.7. As other have said, max_gradient 
> should be 2.1 (2.01 still give some artefacts) and 3.6 need 2.2.

It should be 2.236 to render properly from any angle. Though I guess the 
real bug here is that 3.7 didn't tell him that.

 - Slime
 [ http://www.slimeland.com/ ]


Post a reply to this message

From: SÅ‚awomir Szczyrba
Subject: Re: Beta29 isosurface badly broken
Date: 15 Nov 2008 08:21:45
Message: <slrn.ghtj72.ls2.steev@hot.pl>
Warp informuje :
>> As a bit of a followup on the f_crackle posts from earlier, a bunch of tinkering
>> finds that much of 'isosurface' appears pretty broken in 3.7b29.
>   A very relevant info would be if this also happens with previous betas
> and/or POV-Ray 3.6, or whether those render it as you expect.
>
I noticed a strange behaviour of f_crackle, rendering one of my old scenes.
Scene renders fine with 3.6, but any compilation of 3.7 creates artifacts. 
I've a demo scene (and images + animations),
but I want to test it with next beta first...

Slawek
-- 
  ________ 
_/ __/ __/ Ils sont fous, ces Gaulois.
 \__ \__ \_______________________________________________________________


Post a reply to this message

From: Nicolas Alvarez
Subject: Re: Beta29 isosurface badly broken
Date: 15 Nov 2008 10:47:22
Message: <491eef09@news.povray.org>
Slime wrote:
>>> isosurface { function { 2*sqrt(x*x+z*z)+y-1  }
>>
>> Mathematically the max gradient is 2.
> 
> At (1,0,0), the gradient is (2,1,0) with a magnitude of sqrt(5) or about
> 2.236.

Damn I wish I knew what the hell you're talking about :) "gradient" to me is
a setting that has to be big enough for isosurfaces to work. I have no idea
what it really means...


Post a reply to this message

From: Slime
Subject: Re: Beta29 isosurface badly broken
Date: 15 Nov 2008 14:24:46
Message: <491f21fe@news.povray.org>
> Damn I wish I knew what the hell you're talking about :) "gradient" to me 
> is
> a setting that has to be big enough for isosurfaces to work. I have no 
> idea
> what it really means...

Well, the gradient of a function at a point is a vector describing the 
function's greatest rate of change and the direction of that change. As a 
simple example, the gradient of f(x) = x is (1,0,0) everywhere, because it 
is always increasing in the x direction. Functions can have different 
gradients at different points. POV-Ray's max_gradient keyword is so you can 
supply the magnitude of the largest gradient anywhere in the function - or 
at least the part of the function within the bounding box - so that it knows 
the fastest the function can change. If POV-Ray evaluates a function and 
finds that its value is 2, and it knows its max_gradient is 1, then it knows 
it's safe to trace the ray 2 more units because it can't possibly find a 
zero value for the function within that distance - the function doesn't 
change fast enough for it to hit zero closer than that!

To actually find the gradient of a function at a point, you take the partial 
derivative with respect to each variable (x, y, and z), plug the values in 
for the point you want to evaluate, and make a vector out of it. The hard 
part is finding the place in the function with the largest vector. Once you 
have that vector, you just get the magnitude with sqrt(x*x+y*y+z*z). In 
reality, no one usually goes to this much trouble - they just make an 
educated guess and try to overestimate a little bit.

 - Slime
 [ http://www.slimeland.com/ ]


Post a reply to this message

From: Dan Connelly
Subject: Re: Beta29 isosurface badly broken
Date: 17 Nov 2008 14:10:49
Message: <4921c1b9@news.povray.org>
Slime wrote:
>> Damn I wish I knew what the hell you're talking about :) "gradient" to me 
>> is
>> a setting that has to be big enough for isosurfaces to work. I have no 
>> idea
>> what it really means...
> 
> Well, the gradient of a function at a point is a vector describing the 
> function's greatest rate of change and the direction of that change.

Right.  My mistake was assuming it was the maximum rate of change y with respect to
projected position on x-z plane of the isosurface f(x,y,z) = 0.   But of course
there's no preferred axis for an isosurface, so that definition makes no sense...

Thanks for the correction!

Dan


Post a reply to this message

<<< Previous 10 Messages Goto Initial 10 Messages

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