Logo by kameelian - Contribute your own Logo!

END OF AN ERA, FRACTALFORUMS.COM IS CONTINUED ON FRACTALFORUMS.ORG

it was a great time but no longer maintainable by c.Kleinhuis contact him for any data retrieval,
thanks and see you perhaps in 10 years again

this forum will stay online for reference
News: Check out the originating "3d Mandelbulb" thread here
 
*
Welcome, Guest. Please login or register. March 29, 2024, 01:02:07 PM


Login with username, password and session length


The All New FractalForums is now in Public Beta Testing! Visit FractalForums.org and check it out!


Pages: 1 [2]   Go Down
  Print  
Share this topic on DiggShare this topic on FacebookShare this topic on GoogleShare this topic on RedditShare this topic on StumbleUponShare this topic on Twitter
Author Topic: orbit trap  (Read 4236 times)
Description: orbit trap
0 Members and 1 Guest are viewing this topic.
JosLeys
Strange Attractor
***
Posts: 258


WWW
« Reply #15 on: March 23, 2013, 09:53:36 PM »

On 3D Kleinian groups see http://www.josleys.com/show_gallery.php?galid=346 and this article (in French!)  http://images.math.cnrs.fr/Les-ensembles-limites-de-groupes.html.

I have not been able to come up with a way of drawing these things using a DE. What I need to do is calculate the positions of the centers, and the radii of thousands of spheres.
Logged
Jesse
Download Section
Fractal Schemer
*
Posts: 1013


« Reply #16 on: March 24, 2013, 01:33:55 AM »

and now ?

now something completely different  wink

Orbit trap did not worked as expected, to bad.

But volumetric light should be also a good option for more variety in images, but this is also much work...

does anyone know a replacement for the trigonometric polar coordinate mapping for the volumetric lightmap?

Because this is for CPU the current bottleneck as it seems, for every little step a arctan2 and arccos calculation slows it very much down  undecided

So i thought there might be an alternative mapping technic to transform a fullsphere vector into a 2d map, the reverse transformation can be more time consuming because it is only performed once for each pixel.
Hmm, for partly maps (lightsource is in far distance), the function becomes more flat anyways...

Logged
hobold
Fractal Bachius
*
Posts: 573


« Reply #17 on: March 24, 2013, 09:42:09 AM »

So i thought there might be an alternative mapping technic to transform a fullsphere vector into a 2d map

Maybe cube mapping?

http://en.wikipedia.org/wiki/Cubemap
Logged
Syntopia
Fractal Molossus
**
Posts: 681



syntopiadk
WWW
« Reply #18 on: March 24, 2013, 12:26:53 PM »

So i thought there might be an alternative mapping technic to transform a fullsphere vector into a 2d map, the reverse transformation can be more time consuming because it is only performed once for each pixel.
Hmm, for partly maps (lightsource is in far distance), the function becomes more flat anyways...

What about simply using lookup-tables for the acos and atan?

You could also precalculate two 2D textures, indexed the x and y component of a (normalized) ray direction. Since the z-component only is determined up to a sign, you would need two maps, one for positive z, and one for negative z. But I'm not sure how distorted this transformation is.


Also a good suggestion, since they probably introduce less distortion. I just checked, and you don't need trigonometry to lookup in these - there is a nice example of (CPU) cubemaps here: http://www.codermind.com/articles/Raytracer-in-C++-Part-III-Textures.html
Logged
Jesse
Download Section
Fractal Schemer
*
Posts: 1013


« Reply #19 on: March 24, 2013, 02:25:52 PM »

Yes, cube mapping looks nice..

i think the optimal solution would be to calculate the needed viewing frustrum for the lightsource into the scene and compute a rotation matrix to center it to one side of the cube.
In case the frustrum is below 90 degrees this cubes side could be stretched by a factor, and in case bigger 90 degrees you could calculate the needed fractions of the surrounding cube sides, so you dont have to calculate more than needed.
Logged
ericr
Fractal Fanatic
****
Posts: 318


« Reply #20 on: March 24, 2013, 05:28:58 PM »

you want to do things for rendering fractal as Incendia EX  for example ?
that is it.
ericr


MC render is SUBLIME
« Last Edit: March 24, 2013, 05:30:57 PM by ericr » Logged
makc
Strange Attractor
***
Posts: 272



« Reply #21 on: March 24, 2013, 10:27:22 PM »

there is very simple atan approximation (Pi / 2) * x / (1 + abs(x)) - fast but nowhere near precise. for something more precise, check this out:
Code:
        public static function atan2(y:Number, x:Number):Number {
            var sign:Number = 1.0 - (int(y < 0.0) << 1)
            var absYandR:Number = y * sign + 2.220446049250313e-16
            var partSignX:Number = (int(x < 0.0) << 1) // [0.0/2.0]
            var signX:Number = 1.0 - partSignX // [1.0/-1.0]
            absYandR = (x - signX * absYandR) / (signX * x + absYandR)
            return ((partSignX + 1.0) * 0.7853981634 + (0.1821 * absYandR * absYandR - 0.9675) * absYandR) * sign
        }
Logged
Jesse
Download Section
Fractal Schemer
*
Posts: 1013


« Reply #22 on: March 25, 2013, 12:39:12 AM »

there is very simple atan approximation (Pi / 2) * x / (1 + abs(x)) - fast but nowhere near precise. for something more precise, check this out:
Code:
        public static function atan2(y:Number, x:Number):Number {
            var sign:Number = 1.0 - (int(y < 0.0) << 1)
            var absYandR:Number = y * sign + 2.220446049250313e-16
            var partSignX:Number = (int(x < 0.0) << 1) // [0.0/2.0]
            var signX:Number = 1.0 - partSignX // [1.0/-1.0]
            absYandR = (x - signX * absYandR) / (signX * x + absYandR)
            return ((partSignX + 1.0) * 0.7853981634 + (0.1821 * absYandR * absYandR - 0.9675) * absYandR) * sign
        }

Thank you, i might find some use for it.
Since the memory usage for the map, a lookup table as Syntopia mentioned would have done it here also, the speedup for a arccos LUT was very good as i tested it...
already changed to cubemap now.
Logged
David Makin
Global Moderator
Fractal Senior
******
Posts: 2286



Makin' Magic Fractals
WWW
« Reply #23 on: March 25, 2013, 12:46:03 PM »

Just a small point relating to the Kleinians - it struck me quite awhile ago that one way to at least create something similar using DE is to use escape-time IFS - one needs something that produces circles or spheres (e.g. z^2+0) plus appropriate linear transforms.
So far I've only tried it in 2D and did this very simple example:



http://makinmagic.deviantart.com/art/Pure-Julia-IFS-123685891

Thinking about it one could of course also use the base object + IFS method (as per Dragon trees) to get the same result if you just want spheres wink As in:



http://www.fractalforums.com/index.php?action=gallery;sa=view;id=13260

But with spheres instead of cylinders.

I realise there are no spirals in the above but that just needs the addition of some rotations wink
« Last Edit: March 25, 2013, 12:48:10 PM by David Makin » Logged

The meaning and purpose of life is to give life purpose and meaning.

http://www.fractalgallery.co.uk/
"Makin' Magic Music" on Jango
ericr
Fractal Fanatic
****
Posts: 318


« Reply #24 on: March 25, 2013, 01:24:16 PM »

only on example Chaospro 4.0
very simple to do with it


* klein 3d 12.jpg (66.78 KB, 640x480 - viewed 324 times.)
Logged
Pages: 1 [2]   Go Down
  Print  
 
Jump to:  

Related Topics
Subject Started by Replies Views Last post
Convergent Orbit Trap Images Showcase (Rate My Fractal) Ross Hilbert 0 2774 Last post August 12, 2008, 08:37:13 PM
by Ross Hilbert
Circle Orbit Trap Images Showcase (Rate My Fractal) Ross Hilbert 1 2038 Last post February 13, 2009, 07:10:24 PM
by cKleinhuis
Orbit Trap is closing down (BUT... has re-opened) Fractal Website of the Month ker2x 8 9386 Last post October 28, 2012, 05:31:49 AM
by taurus
Orbit Trap in GI frag Fragmentarium « 1 2 3 » vinz 38 7135 Last post June 20, 2013, 07:48:01 PM
by vinz
Blue Orbit Trap Images Showcase (Rate My Fractal) Fracticality 0 1512 Last post April 06, 2017, 01:16:03 AM
by Fracticality

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines

Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Page created in 0.29 seconds with 26 queries. (Pretty URLs adds 0.01s, 2q)