Mandelbrot / Apfelmännchen optimieren ?!
-
Hi Leute :),
ich hab ein kleines Programm geschrielben das mir die Mandelbrotmenge darstellt, auf der Basis des normalen Mandelbrot Algos wie hierhttp://de.wikipedia.org/wiki/Mandelbrot-Menge.
Das dauert nur sehr lange, was natürlich extrem wird sobald man in die Grafik hineinzoomt.
Es gibt doch aber genügend Fraktalprogramme bei denen das sehr schnell und flüssig geht, ich kann mich erinnern, dass es sowas sogar auf dem Amiga gab und dort war es auch sehr schnell.Meine Frage, wisst Ihr wie man den Mandelbrotalgo optimieren kann ?

Kennt Ihr Tuts. oder sogar CodeSnippets die dieses Problem behandeln ?
Vielen Dank für eure Hilfe und Mühe
ShadowEater
-
Crossposts sind böse.
http://www.c-plusplus.net/forum/viewtopic-var-t-is-210092.html
dass du keine lösung bekommst, liegt einzig und allein daran, dass immernoch niemand weis, wie dein code ausschaut.
Viel am Algo wirst du nicht ändern können. interessant wäre deswegen mal zu wissen, wie du ihn implementierst, wieviele iterationen du verwendest, wieviele Bildpunkte du verwendest...
-
Hmmmm gibt's dazu keine allgemeinen Richtlinien, Formeln, Infos,
der Code ist relativ umfangreich !
Aber wenns nützt dann post ich halt mal nen Auszug !Gruß
ShadowEaterP.S.: Tut mir leid mit dem Doppelpost, hab vergessen dass ich gestern schonmal gefragt hab !

-
Beim "Zoomen" berechnet man nicht einen kleineren Ausschnitt komplett neu, sondern benutzt das vorherige Bild als Naeherung fuer die Iterationstiefe.
So benoetigt man fuer das naechste Bild zb keine 64 Iterationen sondern nur 2 weitere.
-
Danke hellihjb, das ist ein super Tip !
Gruß
ShadowEater
-
auf der Grafikkarte berechnen

-
Hi gruntle,
kannst Du ein bißchen genauer werden ?
Gruß
ShadowEater
-
Hi gruntle
,kannst Du ein bißchen genauer werden
?Gruß
ShadowEater
-
ftp://download.nvidia.com/developer/SDK/Individual_Samples/featured_samples.html#Mandelbrot
http://www.ozone3d.net/demos_projects/mandelbrot_set.phpVielleicht hilft dir da was weiter. War übrigens eine Sache von < 15 Sekunden, das bei google zu finden...
-
Danke,
aber hier wird eine ganz andere GrafikLibrary genutzt "Demoniak" und die ist optimiert nicht das Apfelmännchen an sich.
Den Source bei NVidia muß ich mir noch genauer ansehen !Danke für Deine Hilfe
Gruß
Shadoweater
-
Normalerweise werden bestimmte beobachtete Eigenschaften des Fraktals verwendet um die Berechnung zu beschleunigen (auf Kosten der Genauigkeit).
z.B. kann man oft Bereiche die ohne Unterbrechung von genau einer "Farbe" umgeben sind einfach komplett in dieser Farbe einfärben. Dadurch dass man aber nicht unendlich viele Samples auf so einer Begrenzungslinie nimmt, sondern nur sehr wenige mit "viel Platz dazwischen", kann es natürlich zu Fehlern kommen. Normalerweise sieht man diese Fehler aber nicht wirklich, und daher ist das ein häufig verwendetes Verfahren.