![](/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) |
Mid-week abstract anyone?
Just a small test, which uses a few techniques which perhaps might be of
interest for some?
First, it's a simple way of randomly placing a lot of objects without them
intersecting. The code should speak for itself, but I don't know if this method
is entirely bulletproof?
Second, I wanted to use an image I did with apophysis (
http://www.apophysis.org/ ). The resolution was a bit too low though, and I
lost the settings to remake it. So I blurred it by averaging the image several
times in a while loop. I've blurred procedural textures this way before, but it
works quite well with image_maps also.
I'd love to see some "remixes" of this scene! The source is below, and I can
post the background image if anyone's interested.
(Pinnedyr means phasmatodea/walking sticks in Norwegian).
-Peter
// +w1920 +h1200 +a0.3
// +w1920 +h400 +a0.3
camera{
ultra_wide_angle
location <1,3,-5>*0.3 look_at y*1 angle 130
sky vrotate (<0,1,0>,z*40)
translate <-1,-0.5,-1>
right x*image_width/image_height
up y
}
light_source{<5,15,-10>1}
#local TO = plane{y,0} // Trace Object
#local Radius = 0.025; // Radius of cylinders
#local S = seed(1337);
#local X = 0;
#while (X<1)
#local Shoot_Start =
vrotate(<1-rand(S)*0.5,3+sin(X*4*pi)*0.1+rand(S)*0.2,0>,y*360*rand(S));
#local Shoot_Direction =
vrotate(<-Shoot_Start.x+rand(S)*0.1,-1.3-rand(S)*0.5,-Shoot_Start.z+rand(S)*0.1>,y*10*rand(S));
#local Shoot_End = trace(TO,Shoot_Start,Shoot_Direction);
#if(Shoot_End.y=0) // If it hits the plane in TO
#ifndef(OBJ) // Final OBJect
#local OBJ = merge{
#else
#local OBJ = merge{object{OBJ}
#end
cylinder{Shoot_Start,Shoot_End,Radius}
sphere{Shoot_Start,Radius}
sphere{Shoot_End,Radius}
}
#local TO =
union{
object{TO}
cylinder{Shoot_Start,Shoot_End,Radius*2} // Radius
doubled to avoid collision
}
#end
#local X = X+0.001; // Decrease to shoot more cylinders
#end
object{OBJ
texture{
pigment {rgb 0.9 filter 0.9}
finish{reflection {0.2,0.6} ambient 0.1 specular 0.4 phong 0.3
irid{0.25 thickness 1}}
}
interior{ior 1.255 fade_color x*2 fade_power 2}
}
#local AP = 0.05; // increase/decrease to blur less/more
// These settings worked well for my 1920x1200 image_map
sky_sphere{
pigment{
average
pigment_map{
#local X = 0;
#while (X<1)
[AP+X*AP, image_map{png
"Apophysis-081026-214_1000.png" interpolate 2 map_type 1}rotate y*(35+1*X)]
#local X = X+AP;
#end
}
}
}
Post a reply to this message
Attachments:
Download 'pinnedyr_01.jpg' (129 KB)
Preview of image 'pinnedyr_01.jpg'
![pinnedyr_01.jpg](/povray.binaries.images/attachment/%3Cweb.499c335881b8128e2611931b0%40news.povray.org%3E/pinnedyr_01.jpg?ttop=443866&toff=2850&preview=1)
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Man thats pretty cool!
Fractal Explorer (which you can program fractals in, using formula parser)
and chaoscope are both very good as well. http://www.chaoscope.org/
http://www.eclectasy.com/Fractal-Explorer/
Hmm...that makes me want to try your method on some fractals of my own.
ian
"Peter Hertel" <peter@**nospam**hertel.no> wrote in message
news:web.499c335881b8128e2611931b0@news.povray.org...
> Mid-week abstract anyone?
> Just a small test, which uses a few techniques which perhaps might be of
> interest for some?
> First, it's a simple way of randomly placing a lot of objects without them
> intersecting. The code should speak for itself, but I don't know if this
> method
> is entirely bulletproof?
> Second, I wanted to use an image I did with apophysis (
> http://www.apophysis.org/ ). The resolution was a bit too low though, and
> I
> lost the settings to remake it. So I blurred it by averaging the image
> several
> times in a while loop. I've blurred procedural textures this way before,
> but it
> works quite well with image_maps also.
>
> I'd love to see some "remixes" of this scene! The source is below, and I
> can
> post the background image if anyone's interested.
> (Pinnedyr means phasmatodea/walking sticks in Norwegian).
>
> -Peter
>
> // +w1920 +h1200 +a0.3
> // +w1920 +h400 +a0.3
>
> camera{
> ultra_wide_angle
> location <1,3,-5>*0.3 look_at y*1 angle 130
> sky vrotate (<0,1,0>,z*40)
> translate <-1,-0.5,-1>
>
> right x*image_width/image_height
> up y
> }
>
> light_source{<5,15,-10>1}
>
> #local TO = plane{y,0} // Trace Object
>
> #local Radius = 0.025; // Radius of cylinders
>
> #local S = seed(1337);
>
> #local X = 0;
> #while (X<1)
> #local Shoot_Start =
> vrotate(<1-rand(S)*0.5,3+sin(X*4*pi)*0.1+rand(S)*0.2,0>,y*360*rand(S));
> #local Shoot_Direction =
>
vrotate(<-Shoot_Start.x+rand(S)*0.1,-1.3-rand(S)*0.5,-Shoot_Start.z+rand(S)*0.1>,y*10*rand(S));
> #local Shoot_End = trace(TO,Shoot_Start,Shoot_Direction);
>
> #if(Shoot_End.y=0) // If it hits the plane in TO
> #ifndef(OBJ) // Final OBJect
> #local OBJ = merge{
> #else
> #local OBJ = merge{object{OBJ}
> #end
> cylinder{Shoot_Start,Shoot_End,Radius}
> sphere{Shoot_Start,Radius}
> sphere{Shoot_End,Radius}
> }
> #local TO =
> union{
> object{TO}
> cylinder{Shoot_Start,Shoot_End,Radius*2} // Radius
> doubled to avoid collision
> }
> #end
> #local X = X+0.001; // Decrease to shoot more cylinders
> #end
>
> object{OBJ
> texture{
> pigment {rgb 0.9 filter 0.9}
> finish{reflection {0.2,0.6} ambient 0.1 specular 0.4 phong
> 0.3
> irid{0.25 thickness 1}}
> }
> interior{ior 1.255 fade_color x*2 fade_power 2}
> }
>
> #local AP = 0.05; // increase/decrease to blur less/more
> // These settings worked well for my 1920x1200 image_map
> sky_sphere{
> pigment{
> average
> pigment_map{
> #local X = 0;
> #while (X<1)
> [AP+X*AP, image_map{png
> "Apophysis-081026-214_1000.png" interpolate 2 map_type 1}rotate
> y*(35+1*X)]
> #local X = X+AP;
> #end
> }
> }
> }
>
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
From: Thomas de Groot
Subject: Re: Blurred apophysis meets traced cylinders
Date: 19 Feb 2009 03:39:56
Message: <499d1adc$1@news.povray.org>
|
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Looks very good. Should work with any apophysis image of course (I love that
program), but there should be a kind of coincidence.
Thomas
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) |
Beautiful
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) |
"Peter Hertel" <peter@**nospam**hertel.no> wrote:
> Mid-week abstract anyone?
> Just a small test, which uses a few techniques which perhaps might be of
> interest for some?
> First, it's a simple way of randomly placing a lot of objects without them
> intersecting. The code should speak for itself, but I don't know if this method
> is entirely bulletproof?
> Second, I wanted to use an image I did with apophysis (
> http://www.apophysis.org/ ). The resolution was a bit too low though, and I
> lost the settings to remake it. So I blurred it by averaging the image several
> times in a while loop. I've blurred procedural textures this way before, but it
> works quite well with image_maps also.
>
> I'd love to see some "remixes" of this scene! The source is below, and I can
> post the background image if anyone's interested.
> (Pinnedyr means phasmatodea/walking sticks in Norwegian).
>
> -Peter
>
> // +w1920 +h1200 +a0.3
> // +w1920 +h400 +a0.3
>
> camera{
> ultra_wide_angle
> location <1,3,-5>*0.3 look_at y*1 angle 130
> sky vrotate (<0,1,0>,z*40)
> translate <-1,-0.5,-1>
>
> right x*image_width/image_height
> up y
> }
>
> light_source{<5,15,-10>1}
>
> #local TO = plane{y,0} // Trace Object
>
> #local Radius = 0.025; // Radius of cylinders
>
> #local S = seed(1337);
>
> #local X = 0;
> #while (X<1)
> #local Shoot_Start =
> vrotate(<1-rand(S)*0.5,3+sin(X*4*pi)*0.1+rand(S)*0.2,0>,y*360*rand(S));
> #local Shoot_Direction =
>
vrotate(<-Shoot_Start.x+rand(S)*0.1,-1.3-rand(S)*0.5,-Shoot_Start.z+rand(S)*0.1>,y*10*rand(S));
> #local Shoot_End = trace(TO,Shoot_Start,Shoot_Direction);
>
> #if(Shoot_End.y=0) // If it hits the plane in TO
> #ifndef(OBJ) // Final OBJect
> #local OBJ = merge{
> #else
> #local OBJ = merge{object{OBJ}
> #end
> cylinder{Shoot_Start,Shoot_End,Radius}
> sphere{Shoot_Start,Radius}
> sphere{Shoot_End,Radius}
> }
> #local TO =
> union{
> object{TO}
> cylinder{Shoot_Start,Shoot_End,Radius*2} // Radius
> doubled to avoid collision
> }
> #end
> #local X = X+0.001; // Decrease to shoot more cylinders
> #end
>
> object{OBJ
> texture{
> pigment {rgb 0.9 filter 0.9}
> finish{reflection {0.2,0.6} ambient 0.1 specular 0.4 phong 0.3
> irid{0.25 thickness 1}}
> }
> interior{ior 1.255 fade_color x*2 fade_power 2}
> }
>
> #local AP = 0.05; // increase/decrease to blur less/more
> // These settings worked well for my 1920x1200 image_map
> sky_sphere{
> pigment{
> average
> pigment_map{
> #local X = 0;
> #while (X<1)
> [AP+X*AP, image_map{png
> "Apophysis-081026-214_1000.png" interpolate 2 map_type 1}rotate y*(35+1*X)]
> #local X = X+AP;
> #end
> }
> }
> }
Thanks for the source!
:-)
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
From: Thomas de Groot
Subject: Re: Blurred apophysis meets traced cylinders
Date: 3 Mar 2009 04:15:35
Message: <49acf537@news.povray.org>
|
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Here is one.
Thomas
Post a reply to this message
Attachments:
Download 'Pinnedyr.jpg' (360 KB)
Preview of image 'Pinnedyr.jpg'
![Pinnedyr.jpg](/povray.binaries.images/attachment/%3C49acf537%40news.povray.org%3E/Pinnedyr.jpg?ttop=443866&toff=2850&preview=1)
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
"[GDS|Entropy]" <gds### [at] hotmail com> wrote:
> Man thats pretty cool!
> Fractal Explorer (which you can program fractals in, using formula parser)
> and chaoscope are both very good as well. http://www.chaoscope.org/
> http://www.eclectasy.com/Fractal-Explorer/
>
> Hmm...that makes me want to try your method on some fractals of my own.
>
> ian
Thanks! Chaoscope is really great, I especially like the ability to rotate the
fractals. Made me understand a lot more how they're created.
"Thomas de Groot" <tDOTdegroot@interDOTnlANOTHERDOTnet> wrote:
> Looks very good. Should work with any apophysis image of course (I love that
> program), but there should be a kind of coincidence.
>
> Thomas
It also works rather well with tiled textures which are of somewhat low
resolution. But it's not always that easy to find the best axis to blur on.
nemesis <nam### [at] gmail com> wrote:
> Beautiful
Thank you very much!
"Carlo C." <nomail@nomail> wrote:
> Thanks for the source!
> :-)
You're welcome, I hope it's useful for you.
Be aware that the code for the non-intersecting cylinders can intersect in some
rare cases, so it's not entirely bulletproof.
"Thomas de Groot" <tDOTdegroot@interDOTnlANOTHERDOTnet> wrote:
> Here is one.
>
> Thomas
Wow, that looks really nice!
I've been trying to add such a colorful background myself, but have failed
miserably. It would be interesting to see your scene with a more glasslike
texture.
Just an quick example with glass.inc, which works for my background:
global_settings{max_trace_level 20}
#include "glass.inc"
object{OBJ
texture{
pigment {rgbf 1}
finish{F_Glass2}
}
interior{I_Glass2}
}
Have a nice weekend, and thanks for all the comments everyone!
-Peter
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) |
> Just an quick example with glass.inc, which works for my background:
After 8h 36m (with some of the time in low priority), this was not a that quick
test after all ;) Maybe max_trace_level was a tad too high.
Well, I liked the result, so here it comes. Ultra-wide this time.
-Peter
Post a reply to this message
Attachments:
Download 'pinnedyr_03.jpg' (48 KB)
Preview of image 'pinnedyr_03.jpg'
![pinnedyr_03.jpg](/povray.binaries.images/attachment/%3Cweb.49b2fe11202941c22611931b0%40news.povray.org%3E/pinnedyr_03.jpg?ttop=443866&toff=2850&preview=1)
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
"Peter Hertel" <peter@**nospam**hertel.no> schreef in bericht
news:web.49b24ca8202941c22611931b0@news.povray.org...
>
> Wow, that looks really nice!
> I've been trying to add such a colorful background myself, but have failed
> miserably. It would be interesting to see your scene with a more glasslike
> texture.
You can change the palet used for the fractals quite easily, as you
undoubtedly know...
Yes, with a better glass texture the result would be even better I guess.
Yours looks great indeed.
> Just an quick example with glass.inc, which works for my background:
I shall try that. Thanks!
Thomas
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
From: Thomas de Groot
Subject: Re: Blurred apophysis meets traced cylinders
Date: 9 Mar 2009 06:01:19
Message: <49b4e8ef@news.povray.org>
|
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Here is with glass.inc.
Does not look so bright as you example, but the glass-like texture is more
pronounced than in my earlier image. I used max_trace_level 10. I do not see
any black spots, so that looks ok. Render time was about 30 minutes on my
machine (Pentium D 2x3GHz).
Thomas
Post a reply to this message
Attachments:
Download 'Pinnedyr_01.jpg' (368 KB)
Preview of image 'Pinnedyr_01.jpg'
![Pinnedyr_01.jpg](/povray.binaries.images/attachment/%3C49b4e8ef%40news.povray.org%3E/Pinnedyr_01.jpg?ttop=443866&toff=2850&preview=1)
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |