Three.js - eigene Geometrie erzeugen

Aus Wikizone
Version vom 4. Januar 2022, 12:03 Uhr von 134.3.241.3 (Diskussion) (→‎BufferGeometry - Geometrie eines Objekts)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche
https://threejs.org/manual/?q=geometr#en/custom-buffergeometry

BufferGeometry - Geometrie eines Objekts[Bearbeiten]

BufferGeometry ist das Objekt mit dem Three.js alle geometrischen Daten darstellt. Eine BufferGeometry ist wiederum eine Zusammenstellung von mehreren BufferAttribute Objekten.

Jedes BufferAttribute steht für einen Typ von Daten:

positions
normals
colors
uv
... 

Jeder Vertex hat für jedes Attribut ein Set an Daten. Jeder Punkt bekommt also Infos über Position, Farbe etc. Achtung: Ein Würfel hat an einer Ecke 3 Vertices, da er 3 Flächen in unterschiedlicher Richtung hat. Die Normalen sind also Unterschiedlich. Sobald ein Wert sich ändert benötigt man einen neuen Vertex. Eine Ecke eines Würfels hat also 3 Vertices.

Geometrien erstellen[Bearbeiten]

Der Weg zur Geometrie[Bearbeiten]

  • Arrays für Attribute erzeugen (am besten Typed Array wg. Performance)
  • BufferGeometry Objekt erzeugen
  • BufferAttribute Objekte erzeugen die jeweils Werte für alle Vertices enthalten und an die Geometrie übergeben.

Wie sehen die Geometrien aus[Bearbeiten]

Beispiel Würfel. siehe Link oben.


//TODO