|
![](/i/fill.gif) |
ron### [at] povray org (Ron Parker) writes:
> On Tue, 29 Feb 2000 05:06:01 -0800, Ken wrote:
> >
> >
> >Peter Popov wrote:
> >>
> >> With time I've compiled a list of features I would be happy to see in
> >> POV-Ray. I think it wouldn't hurt if I posted it here.
> >
> >Here is my little wish list - tee hee !
> >
> >1.) displacement mapping
> >
> >2.) export capabilities pov2???
> >
> >3.) programmable shaders ala renderman
> >
> >4.) the ability to internaly tesselate POV-Ray primatives
> >
> >5.) subdivision surfaces
> >
> >6.) extended capabilities for the warp turbulence feature
> >
> >7.) nurbs
>
> Most of these are perfectly reasonable things to wish for. (1) and (2) are
> of course rather dependent on (4), and of course that ability would be
> limited to the primitives that can be tesselated.
Mmmh, wouldn't it be possible to calculate displacement mappings on the
fly. I mean -- we have isosurface functions now. Something like this:
#version unofficial MegaPov 0.4;
camera { location<15,40,-35> direction<0,0,5.5> look_at<0,0,0>}
light_source {<-50, 40, -20> color <1,1,1>}
light_source {< 0, 50, -50> color <1,1,1>}
background {color <0.65,0.72,0.72>}
#declare P0=0.2;
#declare P1=0.2;
#declare BOX = function { ( abs(x)^(2/P0) + abs(y)^(2/P0) ) ^ (P0/P1)
+ abs(z)^(2/P1) - 1}
#declare RUSTY_BOX =
function{ BOX(x,y,z) + 0.2*noise3d(40*x,40*y,40*z) }
isosurface {
function { RUSTY_BOX }
contained_by{ box {<-1.1, -1.1, -1.1>, <1.1, 1.1, 1.1>}}
eval
threshold 0.18
method 2
pigment {colour <0.65,0.3,0.1>}
finish {ambient 0.3}
scale 3
}
Of course, some work has to be done to apply this technique to other
primitives and composed objects.
Thomas
--
http://thomas.willhalm.de/ (includes pgp key)
Post a reply to this message
|
![](/i/fill.gif) |