3D Objekte
  • 13 May 2024
  • 7 Minuten zu lesen
  • Dunkel
    Licht
  • pdf

3D Objekte

  • Dunkel
    Licht
  • pdf

Artikel-Zusammenfassung

Um komplexere, oder bereits existierende 3D-Objekte im Grafiksystem nutzen zu können, müssen diese vorher in einem A3D-Format abgespeichert werden. Mit der zentralen Procedure 'LOADOBJECT' können A3D-Objekte in das Grafiksystem geladen werden. Diese Objekte können, wie alle anderen selbst konstruierten Objekte, mit diversen Funktionen aus den zentralen Stammdaten manipuliert werden. (Material zuweisen / Position verändern / etc..)

A3D Objekt erzeugen

Um ein A3D erzeugen zu können, muss das gewünschte 3D-Objekt zuvor als .OBJ-Datei abgespeichert werden. Falls das 3D-Objekt nicht als .OBJ-Datei vorliegt kann das kostenlose Programm 'Blender' verwendet werden um solches zu erstellen.

Blender Download: Download —blender.org

Unter File -> Import lassen sich diverse 3D-Formate importieren, und unter File -> Export lässt sich das Objekt als .OBJ exportieren.

Nachdem eine .OBJ-Datei erzeugt wurde, kann man diese in der Grafikanzeige im ISS, mittels dem Kontextmenü der rechten Maustaste, als 'Wavefront OBJ-Datei einlesen'. Anschließend wird im selben Ordner-Verzeichnis, wo sich die .OBJ-Datei befindet, eine A3D-Datei erstellt. Diese kann nun mittels 'LOADOBJECT' in das Grafiksystem geladen werden.

Hilfreiche Shortcuts und Navigieren in Blender

Es ist relevant, wo der Mauszeiger gerade steht -im Objekt-Baum z.B. funktionieren einige Shortcuts nicht.

  • Mausrad halten = Rotieren

  • Mausrad halten + Shift = Bewegen

  • [Tab] wechseln zw. Object und Edit Mode

  • [A] = Alle Objekte auswählen

Im Object Mode

  • [Strg] + [J] = Join -zusammenfassen von Objekten

Im Edit Mode

  • [P] = Splitten nach "Loose Geometry"

  • [Entf] -Limited Dissolve = reduziert auch schon die Geometrie

Optimieren von 3D Objekten zur Verwendung in Stammdaten

Geometrie Reduktion -was ist das und warum ist es notwendig?

Für eine performante Erzeugung von Objekten in einem Online 3D Grafikviewer ist es relevant, dass die Geometrie eines jeden 3D Objektes so gut wie möglich reduziert wird. Dabei ist es essentiell, eine Balance aus Reduktion der Geometrie und Erhaltung der Qualität des Objektes zu finden.

Die Geometrie eines Ursprungs-3D-Objektes ist in der Regel viel zu komplex und detailliert für eine angemessene Darstellung in einem Web 3D Grafikviewer. Die Geometrie Eigenschaften werden in dem Tool Blender rechts unten angezeigt. Je geringer die endgültigen Werte sind, desto besser ist dies für die Performance in der Darstellung.

Es ist notwendig, die Geometrie von 3D-Objekten für die Darstellung in einem Web 3D Viewer deutlich zu reduzieren aus mehreren Gründen:

  • Effizienz: Web 3D Viewer arbeiten in Echtzeit und müssen 3D-Inhalte schnell und reibungslos rendern. Durch die Reduzierung der Geometrie wird die Datenmenge verringert, was zu schnelleren Ladezeiten und einer flüssigeren Darstellung führt.

  • Bandbreite: Um 3D-Inhalte im Web darzustellen, müssen sie über das Internet übertragen werden. Durch die Reduzierung der Geometrie wird die Dateigröße des 3D-Modells verringert, was die Übertragungszeit verkürzt und die Anforderungen an die Bandbreite reduziert.

  • Kompatibilität: Nicht alle Geräte und Browser unterstützen leistungsstarke Grafikfunktionen. Indem die Geometrie reduziert wird, kann sichergestellt werden, dass das 3D-Modell auf einer breiten Palette von Geräten und Browsern reibungslos dargestellt werden kann.

  • Speicherbedarf: Web 3D Viewer arbeiten normalerweise im Browser und haben begrenzten Zugriff auf Systemressourcen. Durch die Reduzierung der Geometrie wird der Speicherbedarf des 3D-Modells verringert, was zu einer effizienteren Nutzung der verfügbaren Ressourcen führt.

  • Interaktivität: Ein Web 3D Viewer ermöglicht oft interaktive Funktionen wie das Verschieben, Zoomen und Drehen von 3D-Objekten. Durch die Reduzierung der Geometrie wird die Leistung verbessert, wodurch eine flüssige und reaktionsschnelle Interaktion mit dem 3D-Modell ermöglicht wird.

Zusammenfassend lässt sich sagen, dass die Reduzierung der Geometrie von 3D-Objekten für die Darstellung in einem Web 3D Viewer notwendig ist, um Effizienz, Bandbreite, Kompatibilität, Speicherbedarf und Interaktivität zu verbessern und eine optimale Web-Erfahrung für die Betrachtung von 3D-Inhalten zu gewährleisten.

Best Practice -Geometrie Reduktion in Blender

Es gibt einige Funktionen und Tools für eine Geometriereduktion. Man kann aber sagen, dass diese nicht voll automatisiert werden kann. Es ist ein manueller Ablauf, der sich je nach Objekttyp einfacher oder komplexer gestalten kann. Hier ein moveIT Best Practice mit dem Tool Blender.

  1. Ist das Ursprungs-Objekt nicht in einzelne Teile aufgetrennt, so empfiehlt es sich, zuerst das Gesamtobjekt in Einzelobjekte aufzuteilen:

    1. In den EDIT Mode wechseln (TAB)

    1. [P] drücken

    1. Hier nun "By Material" (haben gewisse Teilbereiche unterschiedliche Materialien eingestellt) oder "By loose Parts" (wird in einzelne Teile aufgeteilt, die keine "physische" Verbindung zueinander haben) versuchen, je nachdem, wie das Ursprungsobjekt aussieht. How To Split And Separate An Object In Blender | Gachoki Studios

  1. Das Objekt wurde jetzt bestenfalls in mehrere, aber nicht zu viele Einzelteile aufgeteilt. Im Object Mode [Tab] können nun ganze Objekte, die man nicht sieht oder nicht benötigt per [Entf] löschen. Das Auswählen der Objekte kann per Mauszeigerklick im Objekt-Viewer oder auch im Objekt-Baum rechts erfolgen.

  1. Sind nun nur mehr Objekte vorhanden, die tatsächlich notwendig für die Betrachtung sind, so kann je Objekt nun die eigentliche Reduktion vorgenommen werden.

  1. Nun können z.B. auch Faces und Edges per manueller Selektion gelöscht werden [Entf] die nicht mehr benötigt werden. Dazu im Edit Mode alle anderen Objekte ausblenden und die Edges markieren, die man nicht benötigt. Dann per mehrmaligen [Entf] und dann "Only Edges and Faces" oder "Vertices" alles löschen was nicht benötigt wird.

Man kann im Edit Mode zw. Drei verschiedenen Selektions Möglichkeiten wählen: Vertexes also Punkte, Edges also Kanten, oder Faces, also Flächen. Per Shift halten kann man diese für die Auswahl kombinieren.

  1. Danach gibt es mehrere Möglichkeiten:

Funktionen:

Limited Dissolve

Mit Limited Dissolve können selektierte Bereiche "glatt gestreift" werden.

mesh -Removing details -Blender Stack Exchange
modifiers -Limited Dissolve and face loop selection -Blender Stack Exchange

Convex Hull

Ein anderer Ansatz ist, dass man mit der Funktion Convex Hull eine Fläsche, wie z.B. ein Loch schließt.

Convex Hull —Blender Manual

Merge

Bereiche miteinander zu verbinden ist auch ein Weg um eine Reduktion durchzuführen.

Clean Up —Blender Manual
Reducing Your Geometry With The Decimate Modifier –blender base camp

Decimate Geometry

Auch über die Funktion Decimate Geometry kann die Geometrie verringert werden. Wie bei allen Funktionen ist es wicht, das Funktions Panel links unten zu benutzen und verschiedene Werte zu testen.

Clean Up - Blender Manual

Modifier

Modifier werden wie folgt angewendet:

  1. Wähle das Objekt aus, indem du darauf klickst.

  1. Gehe zum Modifier-Tab in der rechten Seitenleiste (Shortcut: Klick auf das kleine Schraubenschlüssel-Symbol).

  1. Klicke auf den Button "Add Modifier"

    • Remesh

Hat man sehr viele "innere" Details in einem Objekt, so ist das Tool "Remesh" ein Ansatz. Dabei wird eine eine Hülle rund um das gewählte Objekt erzeugt. Diese ist initial sehr detailliert und sollte deshalb danach über Decimate deutlich reduziert werden. Achtung - dabei kann es passieren, dass das Programm nicht mehr oder nur mehr langsam reagiert.

1. Wähle "Remesh" aus der Liste der Modifier.

2. Im Remesh-Modifier-Panel hast du verschiedene Optionen, um den Remesh-Vorgang anzupassen. Die wichtigsten Optionen sind:

"Mode": Hier kannst du den Modus auswählen, in dem das Remeshing durchgeführt werden soll. Die verfügbaren Optionen sind "Blocks", "Smooth" und "Sharp". "Blocks" erzeugt ein grobes, kantiges Gitter, während "Smooth" und "Sharp" ein glatteres Ergebnis liefern. "Octree Depth": Dieser Wert definiert die Anzahl der Remeshing-Iterationen. Ein höherer Wert erzeugt ein detaillierteres Ergebnis, erfordert jedoch mehr Rechenleistung. "Scale": Hier kannst du den Skalierungsfaktor für das remeshed Modell festlegen. Ein Wert von 1 entspricht der Originalgröße, während Werte über 1 das Modell vergrößern und Werte unter 1 das Modell verkleinern.

3. Experimentiere mit diesen Optionen, um das gewünschte Ergebnis zu erzielen. Jedes Modell erfordert möglicherweise spezifische Einstellungen, um optimale Ergebnisse zu erzielen.

4. Überprüfe das Ergebnis, indem du das remeshed Modell betrachtest und auf mögliche Artefakte oder Verzerrungen achtest.

5. Wenn du mit dem Ergebnis zufrieden bist, wende den Modifier an, indem du auf den Button "Apply" klickst.

Learn How to Re-Mesh in Blender -Avoid Freezing
Remesh Modifier —Blender Manual

  • Decimate (Dies sollte immer gemacht werden)

Geradlinige Objekte wie z.B. Stangengriffe = Decimate -Planar Komplexere Objekte wie z.B. Scharniere = Decimate -Collapse

1. Wähle "Decimate" aus der Liste der Modifier.

2. Im Decimate-Modifier-Panel hast du verschiedene Optionen, um die Geometrie zu reduzieren. Die wichtigsten Optionen sind:

"Collapse": Hier kannst du einen Dezimalwert eingeben, um den Prozentsatz der Geometriereduktion anzugeben. Eine Ratio von 0,5 würde beispielsweise die Geometrie um 50 % reduzieren. "Unsubdivide": Diese Option ermöglicht es, die Geometrie basierend auf der Anzahl der Unterteilungen zu reduzieren. Du kannst die Anzahl der Unterteilungen angeben, die du entfernen möchtest. "Planar": Hier kannst du angeben, wie viele Vertices entfernt werden sollen, um die Geometrie zu reduzieren

3. Experimentiere mit diesen Optionen, um das gewünschte Ergebnis zu erzielen. Beachte jedoch, dass eine zu starke Reduktion zu Verlusten in der Detailgenauigkeit führen kann.

4. Überprüfe das Ergebnis, indem du das Modell betrachtest und auf mögliche Artefakte oder Verzerrungen achtest.

5. Wenn du mit dem Ergebnis zufrieden bist, wende den Modifier an, indem du auf den Button "Apply" klickst.

Decimate Modifier —Blender Manual
Blender: Reduce Polygons –Simply Explained | All3DP

Schlussendlich sollte zuerst das Projekt als Blender File abgespeichert werden, damit man es von der aktuellen Stelle aus weiter bearbeiten kann, wenn notwendig. Für moveIT Stammdaten ist es dann notwendig, das Objekt als .OBJ zu exportieren. In moveIT muss dann zuerst aus dem .OBJ File ein .A3D File gemacht werden -es ist nicht erlaubt, in moveIT Stammdaten direkt ein .OBJ File zu laden.

Ist die Geometrie immer noch relativ hoch, so befindet sich evtl. im inneren eines Objektes noch zusätzliche, komplexe Geometrie. Dazu kann der X-Ray Mode [Alt+Z] aktiviert werden um zu sehen, ob im Inneren noch etwas ist, das man nicht benötigt.


War dieser Artikel hilfreich?