website/content/blog/3d-workflow.md
2025-04-11 11:59:07 +02:00

28 lines
2.4 KiB
Markdown

---
title: 3D Workflow
excerpt: Mein Workflow zur 3D-Beabeitung und Nutzung in Web-Apps.
---
## Datenformate für 3D im Web
Die meisten Datenformate für 3D-Inhalte sind für das Web ungeeignet. Entweder sind sie zu groß und würden die Ladezeit der Webseite massiv beeinträchtigen oder sie unterstützen nicht alle benötigten Elemente eines 3D-Modells. Viele 3D-Modelle außerhalb derer, die mit CAD-Software erstellt wurden, bestehen nicht nur aus der Geometrie, sondern auch verschiedenen weiteren Daten wie Texturen, Animationen, Belichtung und Unterelementen. Da man auch diese Informationen ins Web bringen muss, bleiben nur ein paar Formate übrig. Als aufkommender Standard für 3D im Web hat sich das Graphics Library Transmission Format (kurz: <a href="https://www.khronos.org/gltf/">GLTF</a>) durchgesetzt. Dieser offene Standard, an dem mehrere große Unternehmen wie Epic Games, NVIDIA, Meta und Blender mitarbeiten, hat die erforderlichen Eigenschaften, die die meisten Projekte im Web benötigen.
## Erzeugung der 3D-Daten
Leider gibt es viele Scanner und Systeme, die das direkte Speichern der Rohdaten (oder des ersten verarbeiteten 3D-Modells) als `.gltf`-Datei nicht unterstützen. Oft muss man dann ein anderes Format als Zwischenspeicherung wählen, wobei sich hier `.obj` am meisten eignet. Es unterstützt neben Geometrieinformationen auch Materialien bzw. Textur-Dateien, die als `.png` oder `.jpg` in eigenen Dateien neben der `.obj`-Datei gespeichert werden. Das Format ist zwar nicht ideal, aber reicht für den Austausch zu open-source Programmen wie Blender zur weiteren Nachbearbeitung aus. Es sollte darauf geachtet werden das 3D-Modell in der **größtmöglichen** Qualität zu exportieren, da sich in den nachfolgenden Schritten die Menge der Daten und damit auch die Qualität des finalen 3D-Modells leicht reduzieren lässt. Wählt man allerdings beim Export eine niedrigere Qualität, verliert man in späteren Schritten unter Umständen noch mehr Qualität und erhöht die Abweichung von der echten Geometrie des gescannten Objekts.
## Nachbearbeitung
### Schritt 1: Reduzierung der Geometrie
Das generierte 3D-Modell (wie beschrieben in der bestmöglichsten Qualität) sollte nun für eine schnellere Bearbeitung in der Komplexität seiner Geometrie reduziert werden. Das bedeutet praktisch die Anzahl der Vertices bzw. Faces zu reduzieren.
- Meshlab
- Blender
- gltf-transform
- gltf.report
## Kompression
- Draco
- Meshoptimizer