POV-Ray : Newsgroups : povray.binaries.images : warp function test images (76k and 28k) Server Time
12 Aug 2024 11:21:50 EDT (-0400)
  warp function test images (76k and 28k) (Message 11 to 20 of 26)  
<<< Previous 10 Messages Goto Latest 10 Messages Next 6 Messages >>>
From: David Burnett
Subject: Re: warp function test images (76k and 28k)
Date: 14 Oct 2003 13:58:25
Message: <3f8c3941@news.povray.org>
Christopher James Huff wrote:
> In article <3f8af3ec$1@news.povray.org>,
>  David Burnett <var### [at] ntlworldcom> wrote:
> 
> 
>>It's an isosurface using the noise subtracted, from f_r(),
>>which is as close to displacement that POV gets.
> 
> 
> I'd say true displacement is as close to true displacement as POV gets... 
> Warping a function also qualifies as true displacement...


Hmmmm, I'm personally not sure *I'd* count anything done in a
isofunction true displacement (you're just changing the function
or the function input so for me its still the 'original' shape)
but do I see what you're getting at.

Dave


Post a reply to this message

From: Christoph Hormann
Subject: Re: warp function test images (76k and 28k)
Date: 14 Oct 2003 15:14:02
Message: <k9st51-i02.ln1@triton.imagico.de>
David Burnett wrote:
> [...]
> 
> Hmmmm, I'm personally not sure *I'd* count anything done in a
> isofunction true displacement

And i am not sure whether you can clearly define what you understand as 
'true displacement'.  As Chris Huff said you can't really get much 
closer to true displacement than with isosurfaces.

Christoph

-- 
POV-Ray tutorials, include files, Sim-POV,
HCR-Edit and more: http://www.tu-bs.de/~y0013390/
Last updated 2 Sep. 2003 _____./\/^>_*_<^\/\.______


Post a reply to this message

From: David Burnett
Subject: Re: warp function test images (76k and 28k)
Date: 15 Oct 2003 13:59:08
Message: <3f8d8aec@news.povray.org>
Christoph Hormann wrote:
> David Burnett wrote:
> 
>> [...]
>>
>> Hmmmm, I'm personally not sure *I'd* count anything done in a
>> isofunction true displacement
> 
> 
> And i am not sure whether you can clearly define what you understand as 
> 'true displacement'.  

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.

As I stated IMHO isosurfaces are not displacement as there is no 
original object expect the one created by the function. It doesn't 
matter what you do within that function what you get is still the 
'original' object not a displaced one.

Picky, oh yes.

Dave.


Post a reply to this message

From: ABX
Subject: Re: warp function test images (76k and 28k)
Date: 15 Oct 2003 14:19:03
Message: <vd3rovceub43tpufk8pn31vshh537vpls4@4ax.com>
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)?

> As I stated IMHO isosurfaces are not displacement as there is no 
> original object expect the one created by the function. It doesn't 
> matter what you do within that function what you get is still the 
> 'original' object not a displaced one.

Thinking that way displacement of mesh surface is only new mesh (even if it is
calculated on the fly). You can work with displacement on
functions/isosurfaces were efficient way if you have tools like:
http://www-public.tu-bs.de/~y0013390/pov/ic/docu02.html#Displace

ABX


Post a reply to this message

From: Christoph Hormann
Subject: Re: warp function test images (76k and 28k)
Date: 15 Oct 2003 17:22:02
Message: <18q061-5lk.ln1@triton.imagico.de>
David Burnett wrote:
> 
> I mean displacement in the renderman displacement shader sense which
> is what Roberto was asking about, hence in this case 'true 
> displacement'. 

Renderman (at least the PRMan implementation) is not a raytracer.

> A function (in this case a shader)
> applied to an object, sphere, mesh, plane etc which change its
> geometry.
> 
> As I stated IMHO isosurfaces are not displacement as there is no 
> original object expect the one created by the function. It doesn't 
> matter what you do within that function what you get is still the 
> 'original' object not a displaced one.
> 
> Picky, oh yes.

No, it's simply wrong.  Isosurfaces are just a more general feature than 
a displacement shader.  Displacement there is limited to mesh 
geomentries since - as mentioned above - it has to work for a scanline 
renderer.  You can model a shape as an isosurface function and then 
displace it - just like with a shader.  The only difference is that with 
isosurfaces you can also do much more.

Christoph

-- 
POV-Ray tutorials, include files, Sim-POV,
HCR-Edit and more: http://www.tu-bs.de/~y0013390/
Last updated 2 Sep. 2003 _____./\/^>_*_<^\/\.______


Post a reply to this message

From: Roberto A 
Subject: Re: warp function test images (76k and 28k)
Date: 16 Oct 2003 10:05:38
Message: <3f8ea5b2@news.povray.org>
> > 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 on Renderman can be applied to any primitive that takes
shaders, with the exception of points and curves. That means meshes,
subsurface subdivision meshes, spheres, cones, etc.

Regards,

Roberto


Post a reply to this message

From: Roberto A 
Subject: Re: warp function test images (76k and 28k)
Date: 16 Oct 2003 10:12:43
Message: <3f8ea75b@news.povray.org>
> > I mean displacement in the renderman displacement shader sense which
> > is what Roberto was asking about, hence in this case 'true
> > displacement'.
>
> Renderman (at least the PRMan implementation) is not a raytracer.

There are Renderman compliant renderers with raytracing support that do true
displacement without problems (BMRT being one of them, and Pixie a more
current example). Of course, true displacement is best used with Reyes
renderers, since you have almost infinite precision with that particular
algorythm.

> No, it's simply wrong.  Isosurfaces are just a more general feature than
> a displacement shader.  Displacement there is limited to mesh
> geomentries since - as mentioned above - it has to work for a scanline
> renderer.  You can model a shape as an isosurface function and then
> displace it - just like with a shader.  The only difference is that with
> isosurfaces you can also do much more.

Displacement can be applied to any primitive that takes shaders on a
Renderman compliant renderer. The original object retains the same
geometry - it's only displaced by the shader when rendering. However, with
isosurfaces, you have to modify the original function, thus the original
object is modified before parsing or rendering. As David said, picky, but
true.

Both approaches have their weak and strong points. However, that doesn't
change the fact that I'd like to apply displacement on pure primitives on
POV, or even meshes without any workarounds. And I can't do that.

At least not for now (hint, hint). ;-)

Best regards,

Roberto


Post a reply to this message

From: ABX
Subject: Re: warp function test images (76k and 28k)
Date: 16 Oct 2003 10:31:14
Message: <tjatovgt46n2qavdlsbm24frt8rhjdb979@4ax.com>
On Thu, 16 Oct 2003 11:05:35 -0300, "Roberto A." <wol### [at] hot-mailcom>
wrote:
> > Is that displacement on object/sphere/plane/mesh or is is only on meshes (if
> > you know what I mean in my question)?
>
> Displacement on Renderman can be applied to any primitive that takes
> shaders, with the exception of points and curves. That means meshes,
> subsurface subdivision meshes, spheres, cones, etc.

From what I understand from 
https://renderman.pixar.com/products/rispec/rispec_3_1/section12.html#Displacement.shaders
https://renderman.pixar.com/products/rispec/rispec_3_1/section4.html#RiDisplacement
https://renderman.pixar.com/products/rispec/rispec_3_1/section5.html#Quadrics
it doesn't mean that 'applied' = realized without conversion to mesh

ABX


Post a reply to this message

From: Christoph Hormann
Subject: Re: warp function test images (76k and 28k)
Date: 16 Oct 2003 12:22:02
Message: <10t261-rfj.ln1@triton.imagico.de>
Roberto A. wrote:
> 
> There are Renderman compliant renderers with raytracing support that do true
> displacement without problems (BMRT being one of them, and Pixie a more
> current example). Of course, true displacement is best used with Reyes
> renderers, since you have almost infinite precision with that particular
> algorythm.

There is no raytracer that can apply displacement to an analytically 
solved shape.  That's not too bad of course because all non-raytracers 
can't even render those shapes.  At the risk of repeating myself - 
isosurfaces are as close to 'true displacement' as you can get.

> Displacement can be applied to any primitive that takes shaders on a
> Renderman compliant renderer. The original object retains the same
> geometry - it's only displaced by the shader when rendering.

This is simply wrong (see above).  What the renderer you have in mind 
probably does is to approximate the shape with a mesh and displace that 
- this is of course much less a 'true displacement' than an isosurface.

> However, with
> isosurfaces, you have to modify the original function, thus the original
> object is modified before parsing or rendering. As David said, picky, but
> true.

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) }
   ...
}

> Both approaches have their weak and strong points. However, that doesn't
> change the fact that I'd like to apply displacement on pure primitives on
> POV,

Sorry, this will never happen, simply because it is not possible (at 
least not without an approximative root solver like in the isosurface 
shape).

Christoph

-- 
POV-Ray tutorials, include files, Sim-POV,
HCR-Edit and more: http://www.tu-bs.de/~y0013390/
Last updated 2 Sep. 2003 _____./\/^>_*_<^\/\.______


Post a reply to this message

From: Roberto A 
Subject: Re: warp function test images (76k and 28k)
Date: 16 Oct 2003 12:58:05
Message: <3f8ece1d$1@news.povray.org>
> There is no raytracer that can apply displacement to an analytically
> solved shape.  That's not too bad of course because all non-raytracers
> can't even render those shapes.  At the risk of repeating myself -
> isosurfaces are as close to 'true displacement' as you can get.

Got it.

> This is simply wrong (see above).  What the renderer you have in mind
> probably does is to approximate the shape with a mesh and displace that
> - this is of course much less a 'true displacement' than an isosurface.

That's what it does internally, yes, but the effect has a 1-pixel
resolution, and thus is as close as defining a perfect displaced geometry as
possible. That's what I meant. I may be wrong, though.

> 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) }
>    ...
> }

I was not aware of this possibility. My bad.

> 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.

Regards,

Roberto


Post a reply to this message

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

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