![](/i/fill.gif) |
![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Well, it may be too early to call it the final word, but I think it's the
final word. It gives all of the flexibility of the mythical 3.5 patch, with
mostly the same speed, and without making any changes to the code. I think
it even works in 3.1. The only limitation is the limit on size in a map, but
even that can be worked around with nested maps. This is totally awesome.
Maybe I should go without sleep and/or caffeine more often...
Here's some scene code. Go ahead; render it. It won't bite. Don't bother
with the antialiasing. (I'd post a picture, but y'all have already seen one.)
If your computer has more horsepower than mine, please make that 10 bigger to
get more realistic results. My render stats on a K6-2/350, 320x240, with no AA:
8 minutes 36 seconds.
Have fun, y'all. Make sure you do lots of stuff I wouldn't do.
cylinder {<0,-5,15> <0,5,15> 4
texture {
average texture_map {
#declare I=0;
#declare S=seed(12465);
#while (I<10) // use any value you want here; the higher the better.
#declare I=I+1;
[1
pigment {color rgb 0}
finish {diffuse 0 specular 0 ambient 0 reflection .8}
normal {bumps .1 scale <.001,.001,.001>
translate <.002*rand(S),.002*rand(S),.002*rand(S)>}
]
#end
}
}
}
light_source {-10*x red 1}
light_source { 0 green 1}
light_source { 10*x blue 1}
plane {z, -1 pigment {color rgbf 1} finish {specular 1 roughness .1 diffuse 0}}
plane {y,-5
pigment {checker color rgb 1, color rgb 0}
rotate 30*y
finish {ambient .5}}
sphere {0 20 inverse
pigment {agate color_map {[0 rgb <.5,.5,1>][1 rgb 1]} scale 3}
finish {diffuse 0 specular 0 ambient 1}
}
--
#macro R(L P)sphere{L __}cylinder{L P __}#end#macro P(_1)union{R(z+_ z)R(-z _-z)
R(_-z*3_+z)torus{1__ clipped_by{plane{_ 0}}}translate z+_1}#end#macro S(_)9-(_1-
_)*(_1-_)#end#macro Z(_1 _ __)union{P(_)P(-_)R(y-z-1_)translate.1*_1-y*8pigment{
rgb<S(7)S(5)S(3)>}}#if(_1)Z(_1-__,_,__)#end#end Z(10x*-2,.2)camera{rotate x*90}
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 20 Oct 2001 00:57:30 -0400, Ron Parker wrote:
>get more realistic results. My render stats on a K6-2/350, 320x240, with no AA:
>8 minutes 36 seconds.
Oops, turns out I did have AA turned on. But it's not necessary for the
effect.
--
#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
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
This is very smart. Good thinking.
- Slime
[ http://www.slimeland.com/ ]
[ http://www.slimeland.com/images/ ]
"Ron Parker" <ron### [at] povray org> wrote in message
news:slr### [at] fwi com...
> On 20 Oct 2001 00:57:30 -0400, Ron Parker wrote:
> >get more realistic results. My render stats on a K6-2/350, 320x240, with
no AA:
> >8 minutes 36 seconds.
>
> Oops, turns out I did have AA turned on. But it's not necessary for the
> effect.
>
>
> --
> #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
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Oh, it seems if you set the 10 higher than 255, it tells you that the blend
map is too long. And then, if you set it to something lower afterwards,
POV-Ray crashes.
- Slime
[ http://www.slimeland.com/ ]
[ http://www.slimeland.com/images/ ]
"Slime" <noo### [at] hotmail com> wrote in message
news:3bd12120$1@news.povray.org...
> This is very smart. Good thinking.
>
> - Slime
> [ http://www.slimeland.com/ ]
> [ http://www.slimeland.com/images/ ]
>
> "Ron Parker" <ron### [at] povray org> wrote in message
> news:slr### [at] fwi com...
> > On 20 Oct 2001 00:57:30 -0400, Ron Parker wrote:
> > >get more realistic results. My render stats on a K6-2/350, 320x240,
with
> no AA:
> > >8 minutes 36 seconds.
> >
> > Oops, turns out I did have AA turned on. But it's not necessary for the
> > effect.
> >
> >
> > --
> > #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
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
OK, one more thing; I got better results with the following texture block,
which removes the randomness of the whole thing:
average texture_map {
#declare S=seed(12465);
#declare numiters = 255;
#declare ix=0;
#while (ix<pow(numiters,1/3)-1)
#declare iy=0;
#while (iy<pow(numiters,1/3)-1)
#declare iz=0;
#while (iz<pow(numiters,1/3)-1)
[1
pigment {color rgb 0}
finish {diffuse 0 specular 0 ambient 0 reflection .8}
normal {bumps .1 scale <.001,.001,.001>
translate <.002*ix,.002*iy,.002*iz>}
]
#declare iz=iz+1;
#end
#declare iy=iy+1;
#end
#declare ix=ix+1;
#end
}
}
- Slime
[ http://www.slimeland.com/ ]
[ http://www.slimeland.com/images/ ]
"Slime" <noo### [at] hotmail com> wrote in message
news:3bd121be$1@news.povray.org...
> Oh, it seems if you set the 10 higher than 255, it tells you that the
blend
> map is too long. And then, if you set it to something lower afterwards,
> POV-Ray crashes.
>
> - Slime
> [ http://www.slimeland.com/ ]
> [ http://www.slimeland.com/images/ ]
>
> "Slime" <noo### [at] hotmail com> wrote in message
> news:3bd12120$1@news.povray.org...
> > This is very smart. Good thinking.
> >
> > - Slime
> > [ http://www.slimeland.com/ ]
> > [ http://www.slimeland.com/images/ ]
> >
> > "Ron Parker" <ron### [at] povray org> wrote in message
> > news:slr### [at] fwi com...
> > > On 20 Oct 2001 00:57:30 -0400, Ron Parker wrote:
> > > >get more realistic results. My render stats on a K6-2/350, 320x240,
> with
> > no AA:
> > > >8 minutes 36 seconds.
> > >
> > > Oops, turns out I did have AA turned on. But it's not necessary for
the
> > > effect.
> > >
> > >
> > > --
> > > #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
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
> Oops, turns out I did have AA turned on. But it's not necessary for the
> effect.
I know... I was just doing this same thing! I was also surprised to
see how average worked so well. It is slow, yes, but it has de advantage
of being slow only on the object with the texture, not in all the scene,
as a heavy aa.
--
Jaime Vives Piqueres
La Persistencia de la Ignorancia
http://www.ignorancia.org/
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
From: Nekar Xenos
Subject: Re: The final word on blurred reflection
Date: 20 Oct 2001 04:03:21
Message: <3bd12fc9@news.povray.org>
|
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
"Slime" <noo### [at] hotmail com> wrote in message
news:3bd122dd$1@news.povray.org...
> OK, one more thing; I got better results with the following texture block,
> which removes the randomness of the whole thing:
>
> average texture_map {
> #declare S=seed(12465);
> #declare numiters = 255;
> #declare ix=0;
> #while (ix<pow(numiters,1/3)-1)
> #declare iy=0;
> #while (iy<pow(numiters,1/3)-1)
> #declare iz=0;
> #while (iz<pow(numiters,1/3)-1)
> [1
> pigment {color rgb 0}
> finish {diffuse 0 specular 0 ambient 0 reflection .8}
> normal {bumps .1 scale <.001,.001,.001>
> translate <.002*ix,.002*iy,.002*iz>}
> ]
> #declare iz=iz+1;
> #end
> #declare iy=iy+1;
> #end
> #declare ix=ix+1;
> #end
> }
> }
>
Yup, looks a lot better and ten times slower...
Now to add it to my car. Maybe it'll be finished before Christmas...
- Nekar
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.282 / Virus Database: 150 - Release Date: 2001/09/25
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Yeah, the old average trick with different normals is always handy. I used a
similar technique to obtain the look of brushed metal quite a while ago:
http://rsj.mobilixnet.dk/3d/goodies/goodies.html
Rune
--
3D images and anims, include files, tutorials and more:
Rune's World: http://rsj.mobilixnet.dk (updated June 26)
POV-Ray Users: http://rsj.mobilixnet.dk/povrayusers/
POV-Ray Webring: http://webring.povray.co.uk
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
From: Redbeard (MDJohnson)
Subject: Re: The final word on blurred reflection
Date: 20 Oct 2001 10:33:42
Message: <3bd18b46@news.povray.org>
|
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
"Slime" <noo### [at] hotmail com> wrote in message
news:3bd121be$1@news.povray.org...
> Oh, it seems if you set the 10 higher than 255, it tells you that the blend
> map is too long. And then, if you set it to something lower afterwards,
> POV-Ray crashes.
Yep, it would, since blend maps are still limited to 255 entries. I don't know
about it crashing afterwards. If it's 3.5b6, perhaps it should be reported if
you can repeat it.
Michael
--
#declare R=<8,4,.6>/3;#declare C=function{pattern{object{text{ttf"crystal.ttf"
"MDJ"1,0translate-R/4}}}}camera{location-z*30}box{-R,R pigment{rgbf 1}interior
{media{emission.1density{function{C(x,y,z)}density_map{[0mandel 50color_map{[0
rgb 0][.2rgb x][1rgb x+y]}interior 1,1.5scale 60translate<-33.75,2.85>exponent
4][1rgb<2,2>]}}}}scale 24hollow}// (c) 2001 MDJohnson red### [at] wv adelphia net
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On Sat, 20 Oct 2001 09:51:23 -0400, Redbeard \(MDJohnson\) wrote:
>
>"Slime" <noo### [at] hotmail com> wrote in message
>news:3bd121be$1@news.povray.org...
>> Oh, it seems if you set the 10 higher than 255, it tells you that the blend
>> map is too long. And then, if you set it to something lower afterwards,
>> POV-Ray crashes.
>
>Yep, it would, since blend maps are still limited to 255 entries. I don't know
>about it crashing afterwards. If it's 3.5b6, perhaps it should be reported if
>you can repeat it.
It happened to me, too. I'll report it. :)
--
#local R=<7084844682857967,0787982,826975826580>;#macro L(P)concat(#while(P)chr(
mod(P,100)),#local P=P/100;#end"")#end background{rgb 1}text{ttf L(R.x)L(R.y)0,0
translate<-.8,0,-1>}text{ttf L(R.x)L(R.z)0,0translate<-1.6,-.75,-1>}sphere{z/9e3
4/26/2001finish{reflection 1}}//ron.parker@povray.org My opinions, nobody else's
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |