Marschierende Würfel

Nachdem ich heute am frühen Morgen die Klötzengrafik vorgestellt habe, habe ich eben die nächste Generation meiner Experimente mit Iso-Surfaces fertiggestellt. Der logische, nächste Schritt sind selbstverständlich Marching Cubes. Diese sollen es ermöglichen, daß die dicken Klötzchen aus dem letzten Teil verschwinden und durch glattere Oberflächen ersetzt werden. Das Drahtgittermodell wird so den Iso-Surfaces viel besser angenähert und spätestens mit einem schönen Phong-Shading sollte die Oberfläche schon sehr glatt aussehen.

Aktuell habe ich eine wenig optimierte Variante des Marching-Cubes Algorithmus implementiert. In dieser Variante wird sehr viel mit Listen gearbeitet, die zur Erzeugung des Vertex-Buffers auch noch umkopiert werden müssen. Auf die Generierung von Indices habe ich noch verzichtet, da diese aktuell einfach aufsteigend von 0 bis Anzahl der Dreiecks-Vertices hochzählen würden. Hier gibt es noch einiges an Optimierungsbedarf, was auch die Generierungszeit des Meshes deutlich bestätigt: gute 6 Sekunden dauert es das 256*256*256 Iso-Surface mit knapp 450.000 Dreiecken zu tesselieren.

Da auch noch die Normalen fehlen, habe ich diesmal das Objekt als Drahtgitter dargestellt, in dem man sehr gut eine Menge kleiner Dreiecke erkennen kann. Um das Mesh etwas zu säubern müssen hier noch „Kleinst-Dreiecke“ mit anderen zusammengeführt werden. Dies ist aber nicht sonderlich schwer.

Die Framerate bricht im Wireframe-Modus natürlich ein wenig ein, im Solid-Modus ist sie aber weiterhin bei stabilen 60 FPS, sowohl im Debug- als auch im Release-Modus und das mit den instrumentierten DirectX-Treibern.

Hier jetzt aber endlich der Screenshot:

Im nächsten Schritt werde ich sicherlich ein wenig mit dem Ergebnis von MarchingCubes herumspielen. Mal schauen, ob man das Drahtgittermodell noch etwas schöner hinbekommt. Das nächste Experiment wird dann vielleicht eine MarchingTetrahedron-Implementation oder vielleicht ein Dual-Contouring. Mal sehen, in welche Richtung sich das entwickelt. Es ist für mich genauso spannend wie für euch 😉

Advertisements

Veröffentlicht am 29.08.2011 in Algorithmen, Random Noise und mit , , getaggt. Setze ein Lesezeichen auf den Permalink. 2 Kommentare.

  1. Nette Seite, gefaellt mir sehr.

  1. Pingback: Klötzchenwelt « "Mit ohne Haare"

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s

%d Bloggern gefällt das: