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)
https://threejs.org/manual/?q=geometr#en/custom-buffergeometry
BufferGeometry - Geometrie eines Objekts
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
Der Weg zur Geometrie
- 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
Beispiel Würfel. siehe Link oben.
//TODO