POV-Ray : Newsgroups : povray.binaries.images : SuperSinusoidal Server Time
16 Oct 2026 22:48:03 EDT (-0400)
  SuperSinusoidal (Message 1 to 13 of 13)  
From: Simon Lemieux
Subject: SuperSinusoidal
Date: 21 Nov 2002 13:12:21
Message: <3DDD228A.57FE4541@no_spam.com>
Hi there,
  I'm back with awesome super computing power!  Indeed, now I have one
Macintosh PowerPC 7600 at 120Mhz!  It can render up to 2 images
(640x480) that contains no reflection nor refraction in a day! Isn't
this a technological achievement! ;)

  It took numerous hours to render this 1024x768 image which I scaled to
800x600 for this post.  This scene contains 300x250 spheres (75000) and
it's just about the maximum my 48Mb RAM can support.  And this is quite
a trouble for me because this is the start for an IFS (a fractal in
movement).  This would be the Level 1 of the fractalized scene, but
adding more levels would jump the number of spheres exponentially, which
is impossible.  I will however reduce the number of them when I transfer
the merged spheres into bezier sphere_sweeps.

  I need help with optimising the memory management of this scene, for
the final render I would estimate the number of spheres to (300x25)^9
(7500^9 = 4.2x10^11).  I think I'll read some about isofunctions to see
if it could be done with them... (Do megapov have the isofunctions?)

  Anyway here's the first of a serie:

And thanks,
  Simon


Post a reply to this message


Attachments:
Download 'supersinusoidal.jpg' (165 KB)

Preview of image 'supersinusoidal.jpg'
supersinusoidal.jpg


 

From: Jerry
Subject: Re: SuperSinusoidal
Date: 21 Nov 2002 14:38:42
Message: <jerry-DC04CA.11384221112002@netplex.aussie.org>
In article <3DDD228A.57FE4541@no_spam.com>,
 Simon Lemieux <no_### [at] no_spamcom> wrote:

>Hi there,
>  I'm back with awesome super computing power!  Indeed, now I have one
>Macintosh PowerPC 7600 at 120Mhz!  It can render up to 2 images
>(640x480) that contains no reflection nor refraction in a day! Isn't
>this a technological achievement! ;)
>
>  It took numerous hours to render this 1024x768 image which I scaled to
>800x600 for this post.  This scene contains 300x250 spheres (75000) and
>it's just about the maximum my 48Mb RAM can support.  And this is quite
>a trouble for me because this is the start for an IFS (a fractal in

Haunt e-bay or your local chip shop (unless you live in England). The 
7600 might be slow by today's standards, but it's a great computer. 
Specifically, it has eight memory slots and can be upgraded to 512 MB; 1 
GB if you're willing to risk going out of spec (using 128 MB chips 
instead of the maximum 64 MB chips that Apple recommends).

Note that while the chips can be added in groups of 1, there are 
supposed to be minor speed increases by keeping all RAM chips in groups 
of 2--the same kind in A1 and B1, A2 and B2, A3 and B3, and A4 and B4.

http://docs.info.apple.com/article.html?artnum=112358

We still have a few of these computers on use on our campus.

I started with POV-Ray 3.0 on a Power Mac 7100 at 80 MHz. I remember 
being very stoked when I finally saved up enough to get a 300 MHz G3 
about five years ago (which I still use). It was the top of the line 
then!

Jerry
-- 
http://www.hoboes.com/jerry/
"Give a man a fish and you feed him for a day. Teach him to fish, and you've
depleted the lake."--It Isn't Murder If They're Yankees
(http://www.hoboes.com/jerry/Murder/)


Post a reply to this message

From: Rafal 'Raf256' Maj
Subject: Re: SuperSinusoidal
Date: 21 Nov 2002 15:04:27
Message: <Xns92CDD5CBB321Eraf256com@204.213.191.226>
Simon Lemieux <no_### [at] no_spamcom> wrote in 
news:3DDD228A.57FE4541@no_spam.com

>   I need help with optimising the memory management of this scene, for
> the final render I would estimate the number of spheres to (300x25)^9
> (7500^9 = 4.2x10^11).  I think I'll read some about isofunctions to see
> if it could be done with them... (Do megapov have the isofunctions?)

Hello,
I will be heapy to help You, email sources of final image to pov### [at] raf256com 
I can spend about 1 day on 1,7 GHz 512 DDR computer for You :)
But You must wait about 1 week (I need to finish my jewels scene first)


-- 
#macro g(U,V)(.4*abs(sin(9*sqrt(pow(x-U,2)+pow(y-V,2))))*pow(1-min(1,(sqrt(
pow(x-U,2)+pow(y-V,2))*.3)),2)+.9)#end#macro p(c)#if(c>1)#local l=mod(c,100
);g(2*div(l,10)-8,2*mod(l,10)-8)*p(div(c,100))#else 1#end#end light_source{
y 2}sphere{z*20 9pigment{function{p(26252423)*p(36455644)*p(66656463)}}}//M


Post a reply to this message

From: Simon Lemieux
Subject: Re: SuperSinusoidal
Date: 21 Nov 2002 16:21:02
Message: <3DDD4EEF.3EFC1ADF@no_spam.com>
> Hello,
> I will be heapy to help You, email sources of final image to pov### [at] raf256com
> I can spend about 1 day on 1,7 GHz 512 DDR computer for You :)
> But You must wait about 1 week (I need to finish my jewels scene first)

Hehe, sure!  Currently the data for my scene is about 4.5Mb large...  I
will probably reduce the data a lot when I can "read" the file and use
the data into a povray code, instead now the data consists of povray
code ("sphere{<x,y,z>...etc}" and I could make it into: "x y z...etc"). 
First improvement that will not change much on the parsing.  Actually
this step is critical to adding more objects for my final IFS.

When rendering, memory is used to store spheres location and everything.
 Is there a way I can know hom much memory was used?  Where should I
look into the povray render info?  I can't seem to find such thing...

This way by knowing how much memory is used by my project I will be able
to add more and more objects to fill your computer's memory as much as
possible! ;)  This is not just for fun, actually in a fractal the more
objects there is the nicier the image!

Thanks for your help!
  Simon


Post a reply to this message

From: Rafal 'Raf256' Maj
Subject: Re: SuperSinusoidal
Date: 22 Nov 2002 01:31:26
Message: <Xns92CE4BF6C5555raf256com@204.213.191.226>
Simon Lemieux <no_### [at] no_spamcom> wrote in 
news:3DDD228A.57FE4541@no_spam.com

[...]

Btw, what does this scene represent exacly ? You said something about 4 MB 
data file for it - wilne not use SDL to generate / place spheres ?

-- 
#macro g(U,V)(.4*abs(sin(9*sqrt(pow(x-U,2)+pow(y-V,2))))*pow(1-min(1,(sqrt(
pow(x-U,2)+pow(y-V,2))*.3)),2)+.9)#end#macro p(c)#if(c>1)#local l=mod(c,100
);g(2*div(l,10)-8,2*mod(l,10)-8)*p(div(c,100))#else 1#end#end light_source{
y 2}sphere{z*20 9pigment{function{p(26252423)*p(36455644)*p(66656463)}}}//M


Post a reply to this message

From: Simon Lemieux
Subject: Re: SuperSinusoidal
Date: 22 Nov 2002 12:51:30
Message: <3DDE6F55.89471754@no_spam.com>
> Btw, what does this scene represent exacly ? You said something about 4 MB
> data file for it - wilne not use SDL to generate / place spheres ?

Actually, the principal algorythm that defines the placement of the
spheres will be coded with povray itself. And there should be no more
data... But!  Right now, I have a MacOS program that can display
QuickDraw at will!  And the program not only shows the path of the
spheres, but it also creates the data for pov.  The whole thing is made
actually to tweak the look of the sinusoidal curve for the final render.

I will definately clear out my pov scene so I can just paste the right
formulas when I find them.  And I will send you the pov scene with the
sinusoidal function as soon as possible.

What I intend to do with this nowhere-maths is an IFS. An Iterated
Function System or if you prefer, a Live Fractal.

This kind of work probably as been done already, I'm not sure, but what
I have in mind is very fucked up.  I'm seeking on doing a never-ending
movie of the resolution of the problem we call IFS.  A movie that when
it comes to the end, you can not tell that the movie just started again
and again!  With this pulsating living and furious fractal!

Woa...! ;)

I'm not sure if what I see in my mind will be seen on a screen some day,
but that sure should look nice!

And I will probably need help along the way.  I used the have the
ability to program OpenGL applications to test my maths and see how
things move before doing the render. But now I'm forced to QuickDraw,
that's the best real-time visual programing ability I have.  But that's
not gonna stop me!

Anyway, 
  Thanks and I'll send you the code when I revise it!

Simon


Post a reply to this message

From: Simon Lemieux
Subject: Re: SuperSinusoidal
Date: 22 Nov 2002 13:06:52
Message: <3DDE72EB.993745F6@no_spam.com>
Woa!... Ok, I just checked my math, and I think that I would need a
bloody heavy number of spheres or whatever defines the points.  How many
spheres can "1 day on 1,7 GHz 512 DDR" render??  Cause, you see there
should be way much more than a few trilions or whatever you call them in
english!  Can 9 to the power of 9 multiplied by a constant n which will
triger the quality of the curve. And n should be set to something
probably like 100 or 1000 or more, which whould give 9^9 = 3.8e8 x 100
or 1000, gees...  say there could be like 1e12 or 1e13.  Can "1 day on
1,7 GHz 512 DDR" do it? Cuz my "Macintosh PowerPC 7600 at 120Mhz" won't
go far...  hehe...

Thanks Raf,
  Simon


Post a reply to this message

From: Rafal 'Raf256' Maj
Subject: Re: SuperSinusoidal
Date: 22 Nov 2002 13:14:45
Message: <Xns92CEC3345BA9raf256com@204.213.191.226>
Simon Lemieux <no_### [at] no_spamcom> wrote in 
news:3DDE72EB.993745F6@no_spam.com

> say there could be like 1e12

even assuming that each sphere is only 1 byte (and probably it's about 12-
20 and more) :

4 GB ram (max virtual memory in Win32) = 4*1000*1000*1000
= 4e9

so... NONE PC computer can render this scene (out of VMemory), to render it 
it would need cluster of about
1e12/1e9 = 1000 computers 4 GB RAM each to store entire scene in ram

not to mention parse-time :)

sorry, You should re-design Your's idea probably :/

-- 
#macro g(U,V)(.4*abs(sin(9*sqrt(pow(x-U,2)+pow(y-V,2))))*pow(1-min(1,(sqrt(
pow(x-U,2)+pow(y-V,2))*.3)),2)+.9)#end#macro p(c)#if(c>1)#local l=mod(c,100
);g(2*div(l,10)-8,2*mod(l,10)-8)*p(div(c,100))#else 1#end#end light_source{
y 2}sphere{z*20 9pigment{function{p(26252423)*p(36455644)*p(66656463)}}}//M


Post a reply to this message

From: Simon Lemieux
Subject: Re: SuperSinusoidal
Date: 22 Nov 2002 13:36:45
Message: <3DDE79F0.21FD32A7@no_spam.com>
> 1e12/1e9 = 1000 computers 4 GB RAM each to store entire scene in ram

Doh!

Hmmmmmphhhh...... blah....  erm...   Damn! >:(

How could this be done then?   Defining a 2D fractal is something pretty
possible, now, how could I possibily create a 3D fractal?  Hmmm.... 
since the placement of the sphere is determined by a simple sinusoidal
function, I believe I could use a isofunction or whatever you call it to
make the whole thing One object with almost no RAM of use and Only CPU
calculations...  Ok, I have no idea what an isofunction is I will read
right on about it, I know it could do it.  But wow, gee, is it possible
to make a fractal isofuntion?  Ok, ok, I have to read some...

Thanks,
  Simon


Post a reply to this message

From: Rafal 'Raf256' Maj
Subject: Re: SuperSinusoidal
Date: 22 Nov 2002 13:54:58
Message: <Xns92CECA0614D2Draf256com@204.213.191.226>
Simon Lemieux <no_### [at] no_spamcom> wrote in 
news:3DDE79F0.21FD32A7@no_spam.com

>  how could I possibily create a 3D fractal? 

hmm... julia and mandelbrot objects in help ?

-- 
#macro g(U,V)(.4*abs(sin(9*sqrt(pow(x-U,2)+pow(y-V,2))))*pow(1-min(1,(sqrt(
pow(x-U,2)+pow(y-V,2))*.3)),2)+.9)#end#macro p(c)#if(c>1)#local l=mod(c,100
);g(2*div(l,10)-8,2*mod(l,10)-8)*p(div(c,100))#else 1#end#end light_source{
y 2}sphere{z*20 9pigment{function{p(26252423)*p(36455644)*p(66656463)}}}//M


Post a reply to this message

From: Simon Lemieux
Subject: Re: SuperSinusoidal
Date: 22 Nov 2002 14:13:58
Message: <3DDE82A8.6417D326@no_spam.com>
> >  how could I possibily create a 3D fractal?
> 
> hmm... julia and mandelbrot objects in help ?

Hmmm,  their shapes are defined into some abstract spherical objects,
right?  Well, my IFS is more of the infinite onto the Z axis type of object.

I would like to Learn about isoblobs and isosurfaces, in order to master
them so I could twist the bloblike thing into my IFS.  Do you know of a
good Start?  Tutorial? Docs... etc... ?

Also, while learning this whole thing I though of making an animation of
the ifs in 2D only, so you guys can see what I've been talking about.

So, I'll probably post an image soon and possibly a movie also!...

Thanks a lot Rafal,
  Simon


Post a reply to this message

From: hughes, b 
Subject: Re: SuperSinusoidal
Date: 23 Nov 2002 23:52:47
Message: <3de05b1f@news.povray.org>
"Simon Lemieux" <no_### [at] no_spamcom> wrote in message
news:3DDE82A8.6417D326@no_spam.com...
> > >  how could I possibily create a 3D fractal?
> >
> > hmm... julia and mandelbrot objects in help ?
>
> I would like to Learn about isoblobs and isosurfaces, in order to master
> them so I could twist the bloblike thing into my IFS.  Do you know of a
> good Start?  Tutorial? Docs... etc... ?

Well, there is only a couple about isosurfaces I'm real familiar with
although there might be others.

http://www.zeropps.uklinux.net/isotut/

http://www.econym.demon.co.uk/isotut/index.htm

I saw your animation, of what could be called a drill auger, and unless the
size of the bounding box or sphere that you used for it changes it I'm not
sure about scaling it wider. Just now looking at it.

Okay, looked and tried and changed:

// scaling values
#declare Xs=1.5;
#declare Ys=1.5;
#declare Zs=2.5;

isosurface {
function {
  ((x*Xs)*cos((z+2*Zs*clock)*2*pi) + x*x +
  (y*Ys)*sin((z+2*Zs*clock)*2*pi) + y*y)
}
threshold 0
max_gradient 12 // increase as larger scales are used
accuracy .001
contained_by {box {-<1*Xs,1*Ys,1*Zs>,<1*Xs,1*Ys,1*Zs>}}
pigment {rgb 1}
//finish {ambient .5}
 rotate <0,0,0>
 translate 3*z
}

First thing to take notice of in your equation is that version 3.5 is not
able to see the ^ symbol,  you will need to use pow(x,2) instead. Or
mulitply a value by itself, as I did here. I don't know if I ended up with
the iso correctly, just a quick hack at it to see if it would scale upward
as I expected (which it did I think).

Farewell,
Bob


Post a reply to this message

From: Simon Lemieux
Subject: Re: SuperSinusoidal
Date: 29 Nov 2002 22:05:45
Message: <3DE82BC0.5A3FAEAE@no_spam.com>
Sorry for the delay for the reply...


> Well, there is only a couple about isosurfaces I'm real familiar with
> although there might be others.
> 
> http://www.zeropps.uklinux.net/isotut/
> 
> http://www.econym.demon.co.uk/isotut/index.htm


I just bookmarked them and will start reading as soon as possible!


> I saw your animation, of what could be called a drill auger, and unless the
> size of the bounding box or sphere that you used for it changes it I'm not
> sure about scaling it wider. Just now looking at it.
> 
> Okay, looked and tried and changed:
> 
> // scaling values
> #declare Xs=1.5;
> #declare Ys=1.5;
> #declare Zs=2.5;
> 
> isosurface {
> function {
>   ((x*Xs)*cos((z+2*Zs*clock)*2*pi) + x*x +
>   (y*Ys)*sin((z+2*Zs*clock)*2*pi) + y*y)
> }
> threshold 0
> max_gradient 12 // increase as larger scales are used
> accuracy .001
> contained_by {box {-<1*Xs,1*Ys,1*Zs>,<1*Xs,1*Ys,1*Zs>}}
> pigment {rgb 1}
> //finish {ambient .5}
>  rotate <0,0,0>
>  translate 3*z
> }

Hmmm, I'd need to render this to see how it changes the scene...  will
do as soon as possible also! ;)

> First thing to take notice of in your equation is that version 3.5 is not
> able to see the ^ symbol,  you will need to use pow(x,2) instead. Or
> mulitply a value by itself, as I did here. I don't know if I ended up with
> the iso correctly, just a quick hack at it to see if it would scale upward
> as I expected (which it did I think).

Okay, good...  since I will probably not render the final IFS movie
myself, I will probably pass it to friends or to Rafal that have better
computers than I!


Although, I'm very occupied these days, I will try to get more serious
into this project as soon as my mind permits it!

Thanks a lot Bob,
  Simon


Post a reply to this message

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