Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Mit OpenGL ein Fraktal zeichnen. (https://www.delphipraxis.net/146088-mit-opengl-ein-fraktal-zeichnen.html)

Phiennes 13. Jan 2010 08:29


Mit OpenGL ein Fraktal zeichnen.
 
Hi,

Ich erstelle gerade ein Programm zur Darstellung von 3D-Fraktalen (Mandelbrotmenge), zumindest versuche ich es ;).
Da OpenGL für mich noch neu ist und im Internet nach stundenlangem Suchen nichts zu finden ist, hoffe ich, dass ihr mir weiterhelfen könnt.

Momentan funktioniert mein Programm folgendermaßen:

Die Welt-/Anzeigematrix besteht aus einem 3D-Array vom Typ Boolean. Ein Punkt in dieser Matrix ist genau dann "true", wenn sich dieser am Rand des Fraktals befindet.
Die Punkte werden dann Pixelweise in die von OpenGL dargestellte Welt geladen.

Logischerweise ist beim Ausführen nur eine Art Wolke des Fraktals zu sehen, die je nach Größe meines Array's dichter oder weniger dicht wird (oder beim hin- und wegzoomen).


Ich müsste also mit Drei- oder Vierecken eine Oberfläche auf das Fraktal zaubern, jedoch fehlt mir hierzu noch jeglicher Ansatz.



Ich hoffe, ich konnte mein Problem gut darstellen :D.

lG Phiennes

Medium 13. Jan 2010 08:53

Re: Mit OpenGL ein Fraktal zeichnen.
 
Ein 3D-Fraktal stellt ja praktisch ein Volumen dar, und zwar eines der fiesesten Sorte: Konkav und Konvex und Löcher (aber zumindest geschlossen) - Wenn man jetzt mal für nen Moment davon ausgeht, dass Fraktale überhaupt eine Oberfläche haben (haben sie eigentlich garnicht). Aber ne Schätzung reicht ja dicke, alles andere könnte auch seltsam aussehen :D

Für solche Arten von Volumen bieten sich im Grunde nur 2 Möglichkeiten an: Garkein Mesh nehmen, und per Raycasting rendern (geht auch in nem Pixelshader, ist aber knifflig), oder ein Mesh via Bei Google suchenMarching Cubes basteln. Ist beides nicht ganz trivial, macht aber Fun!

Phiennes 13. Jan 2010 09:00

Re: Mit OpenGL ein Fraktal zeichnen.
 
sehr schön danke, mein Traum von nem eigenen Fraktal ist zum Greifen nah^^

Medium 13. Jan 2010 09:01

Re: Mit OpenGL ein Fraktal zeichnen.
 
Ich kenne das Gefühl gut! Sogar genau dieses :)

Neutral General 13. Jan 2010 09:06

Re: Mit OpenGL ein Fraktal zeichnen.
 
Hi,

Wie machst du dass denn mit dem 3D-Mandelbrot? Gibt da ja scheinbar verschiedene Ansätze und keiner davon scheint die Experten ja wirklich glücklich zu machen. Es wird ja scheinbar noch nach einer idealen Methode gesucht :stupid:

Würde gerne mal ein Bild davon sehen oder das Programm selbst, wenn es fertig ist. Ich bin da nämlich sehr skeptisch ehrlich gesagt.
Die Mandelbrotmenge ist halt eine Menge komplexer Zahlen und "2D-Zahlen" 3D darzustellen macht für mich eigentlich keinen Sinn.
Bisher finde ich auch, dass die 2D Version um einiges schöner ist ^^ Aber ich lasse mich gerne vom Gegenteil überzeugen :zwinker:

Phiennes 13. Jan 2010 09:26

Re: Mit OpenGL ein Fraktal zeichnen.
 
Liste der Anhänge anzeigen (Anzahl: 1)
Naja, meine Programmierkünste sind wohl eher bescheiden^^. Ich glaube nicht, dass ich hier wen vom Hocker reisen werde :roteyes:.

Mathematisch gesehen nutze ich genau die gleiche Formel wie bei der 2D-Darstellung ( Zn+1 = Zn² + C ).
Anstelle der Komplexen Zahlen setze ich Quaternionen bzw. Hyperkomplexe Zahlen ein, also a +bi +cj + dk = Z.

Das schöne ist, dass das Fraktal eigentlich 4D ist und man die letzte Dimension als Zeit-Achse nutzen kann. Dadurch entstehen coole Videos.

Ich hab mal ein Bild hochgeladen. Es sieht zumindest wie die Mandelbrotmenge aus^^.
Die Farben haben allerdings nichts mit der Iteration zu tun.

grizzly 13. Jan 2010 09:50

Re: Mit OpenGL ein Fraktal zeichnen.
 
Zitat:

Zitat von Neutral General
Bisher finde ich auch, dass die 2D Version um einiges schöner ist ^^ Aber ich lasse mich gerne vom Gegenteil überzeugen :zwinker:

Kennst Du diese Bilder hier: Methematical imagery by Jos Leys?
Und das hier: www.skytopia.com
Das soll jetzt aber keinem die Lust nehmen, es selber zu versuchen!

Gruß
Michael

Medium 13. Jan 2010 10:15

Re: Mit OpenGL ein Fraktal zeichnen.
 
Tipp: Julia-Fraktale schauen noch genialer aus in 3D (bzw. 4D), sind fast genau so zu berechnen, und lassen sich über den zusätzlichen Startparameter auch noch anders als über die 4. Koordinate animieren!

Spannend wäre btw. auch zu implementieren, dass man nicht nur den Schnitt der 4D-Menge mit dem x-y-z-Raum (= Weglassen der 4. Koordinate) darstellt, sondern einen beliebigen orthographischen Unterraum möglich macht. Würd mich mal interessieren, wie sowas dann ausschaut, ich hätte jetzt in diesem Moment aber auch keine spontane Idee das zu realisieren (dürfte letztlich aber garnicht so arg hart sein).


Zum Thema echtes 3D-Mandelbrot: http://www.gamedev.net/community/for...opic_id=553438
Man streitet sich zwar nach wie vor ob es das nun ist, oder nicht doch ganz anders, aber optisch kommt's der Sache doch schon recht nah :). Hat mathematisch mit dem klassischen Mandelbrot aber wohl kaum noch was zu tun.
Edit: Oi, grad erst gesehen. In dem gamedev Artikel gehts meine ich auch u.a. um diese "Mandelbulb".

Mithrandir 13. Jan 2010 10:50

Re: Mit OpenGL ein Fraktal zeichnen.
 
Woah... :shock:

Sehr geil, muss man sagen. Da müsste man glatt mal an einem Programm schreiben... Ach, scheiß Studium, keine Zeit. :stupid: :mrgreen:

turboPASCAL 13. Jan 2010 15:32

Re: Mit OpenGL ein Fraktal zeichnen.
 
Zitat:

Zitat von Daniel G
Woah... :shock:

Sehr geil, muss man sagen. Da müsste man glatt mal an einem Programm schreiben... Ach, scheiß Studium, keine Zeit. :stupid: :mrgreen:

Schweinerei! Erst einem so ein Bildchen vor die Nase halten und dann abzuhauen. :mrgreen:

Bitte mehr Infos.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:17 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz