POV-Ray : Newsgroups : povray.binaries.images : warp function test images (76k and 28k) Server Time
12 Aug 2024 13:18:20 EDT (-0400)
  warp function test images (76k and 28k) (Message 21 to 26 of 26)  
<<< Previous 10 Messages Goto Initial 10 Messages
From: ABX
Subject: Re: warp function test images (76k and 28k)
Date: 16 Oct 2003 13:28:51
Message: <5mktovkn5eq4udoebmu00ejhgt8da48eun@4ax.com>
On Thu, 16 Oct 2003 13:58:04 -0300, "Roberto A." <wol### [at] hot-mailcom>
wrote:
> > Sorry, this will never happen, simply because it is not possible (at
> > least not without an approximative root solver like in the isosurface
> > shape).
>
> That's sad. I stand corrected then.

No. You were wrong. POV _can_ do exactly the same what other packages - see
family of HF macros in shapes.inc where You can displace grid of triangles
using delivered function (kind of shader). You can do it on-the fly (like in
other packages) or write it to precalculated file. You have sources of it so
you can adjust it to your needs. You can even write macros to perform kind of
CSG with it.

And yes, POV can't do displacement on every primitive but afaik none other
package can do it as it was said in this thread.

ABX


Post a reply to this message

From: David Burnett
Subject: Re: warp function test images (76k and 28k)
Date: 16 Oct 2003 14:48:13
Message: <3f8ee7ed@news.povray.org>
ABX wrote:
> On Wed, 15 Oct 2003 18:56:23 +0100, David Burnett <var### [at] ntlworldcom> wrote:
> 
>>I mean displacement in the renderman displacement shader sense which
>>is what Roberto was asking about, hence in this case 'true 
>>displacement'. A function (in this case a shader)
>>applied to an object, sphere, mesh, plane etc which change its
>>geometry.
> 
> 
> Is that displacement on object/sphere/plane/mesh or is is only on meshes (if
> you know what I mean in my question)?
> 

Displacement shaders can be applied to any sphere, however as RMAN,
BMRT etc always convert objects to micropolygons
(effectively sub 1 pixel in size depending on settings ) for shading
you could and probably should say its done on meshes.

Dave


Post a reply to this message

From: David Burnett
Subject: Re: warp function test images (76k and 28k)
Date: 16 Oct 2003 14:58:04
Message: <3f8eea3c$1@news.povray.org>
Christoph Hormann wrote:

  No, you don't have to modify the function as ABX already pointed out:
> 
> #declare fn_Shape = function { ... }
> 
> #declare fn_Iso = IC_Displace (fn_Shape)
> 
> isosurface {
>   function { fn_Iso(x,y,z) }
>   ...
> }
> 


And this our point of contention. I say
the isosurface here is the result of fn_Iso,
and not a displacement of fn_Shape and you
disagree.

Dave


Post a reply to this message

From: Jellby
Subject: Re: warp function test images (76k and 28k)
Date: 16 Oct 2003 16:13:14
Message: <3f8efbd9@news.povray.org>
Among other things, David Burnett wrote:

>   No, you don't have to modify the function as ABX already pointed out:
>> 
>> #declare fn_Shape = function { ... }
>> 
>> #declare fn_Iso = IC_Displace (fn_Shape)
>> 
>> isosurface {
>>   function { fn_Iso(x,y,z) }
>>   ...
>> }
> 
> And this our point of contention. I say
> the isosurface here is the result of fn_Iso,
> and not a displacement of fn_Shape and you
> disagree.

What if POV syntax were:

isosurface {
  function { fn_Shape(x,y,z) }
  displaced_by { IC_Displace }
  ...
}

... and it were internally translated to IC_Displace(fn_Shape) ?

Would it be different?

-- 
light_source{9+9*x,1}camera{orthographic look_at(1-y)/4angle 30location
9/4-z*4}light_source{-9*z,1}union{box{.9-z.1+x clipped_by{plane{2+y-4*x
0}}}box{z-y-.1.1+z}box{-.1.1+x}box{.1z-.1}pigment{rgb<.8.2,1>}}//Jellby


Post a reply to this message

From: David Burnett
Subject: Re: warp function test images (76k and 28k)
Date: 17 Oct 2003 14:27:04
Message: <3f903478$1@news.povray.org>
Jellby wrote:
> Among other things, David Burnett wrote:
> 
> 
>>  No, you don't have to modify the function as ABX already pointed out:
>>
>>>#declare fn_Shape = function { ... }
>>>
>>>#declare fn_Iso = IC_Displace (fn_Shape)
>>>
>>>isosurface {
>>>  function { fn_Iso(x,y,z) }
>>>  ...
>>>}
>>
>>And this our point of contention. I say
>>the isosurface here is the result of fn_Iso,
>>and not a displacement of fn_Shape and you
>>disagree.
> 
> 
> What if POV syntax were:
> 
> isosurface {
>   function { fn_Shape(x,y,z) }
>   displaced_by { IC_Displace }
>   ...
> }
> 
> .... and it were internally translated to IC_Displace(fn_Shape) ?
> 
> Would it be different?
> 

Not really, syntactically it looks good but internally it would have to 
work something like...


if shape(<x,y,z>) = threshold then
    <a,b,c> = ic_displace(<x,y,z>)
    value_for_point(<a,b,c>) = threshold	
end if


Dave


Post a reply to this message

From: Christopher James Huff
Subject: Re: warp function test images (76k and 28k)
Date: 25 Oct 2003 23:33:01
Message: <cjameshuff-1BC18C.23305925102003@netplex.aussie.org>
In article <3f903478$1@news.povray.org>,
 David Burnett <var### [at] ntlworldcom> wrote:

> > .... and it were internally translated to IC_Displace(fn_Shape) ?
> > 
> > Would it be different?
> 
> Not really, syntactically it looks good but internally it would have to 
> work something like...

I do not see how the internal implementation can matter. The only thing 
of importance is the results.

I especially don't see how a mesh approximation of an object with the 
vertices shifted around with the displacement function can be any more 
"real" of a displacement than solving for a displaced version of the 
actual shape.

-- 
Christopher James Huff <cja### [at] earthlinknet>
http://home.earthlink.net/~cjameshuff/
POV-Ray TAG: chr### [at] tagpovrayorg
http://tag.povray.org/


Post a reply to this message

<<< Previous 10 Messages Goto Initial 10 Messages

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