explo.js - Optimierung und Erweiterung eines webbasierten Frameworks für interaktive 3D-Exploded-View-Animationen
Ein Paket zur einfachen Erstellung, Bearbeitung und Integration von interaktiven Exploded Views mit Beschriftungselementen für das Web – inklusive eines integrierten visuellen WYSIWYG-Editors.
Dieses Projekt wurde im Rahmen meiner Bachelorarbeit an der TH Köln weiterentwickelt und optimiert. Es baut auf einem vorangegangenen Praxisprojekt auf und bietet eine wiederverwendbare JavaScript-Bibliothek zur Erstellung modularer und interaktiver Exploded Views.
Das zentrale neue Element ist ein interaktiver WYSIWYG-Editor, der die bisherige rein codebasierte JSON-Konfiguration durch eine visuelle Benutzeroberfläche (mit Timeline, Transform-Controls und Keyframes) ersetzt, um die Einstiegshürde maßgeblich zu senken. Zudem wurde der Funktionumfang und die Szenenkonfigurationsmöglichkeiten erweitert, um weitere Anwendungsfälle abzudecken.
- Welche zentralen Probleme und Defizite von Explo.js beeinflussen den Workflow und die Nutzbarkeit, und wie lassen sich diese durch gezielte konzeptionelle und technische Anpassungen verbessern?
- Welche Visualisierungs- und Interaktionsmuster aus etablierter 3D-Software lassen sich sinnvoll auf einen webbasierten Exploded-View-Editor übertragen, um die Konfiguration, Steuerung und Vorschau von Animationen zu verbessern?
Der Fokus liegt auf:
- Visueller Editor (WYSIWYG): Intuitive UI zur direkten Konfiguration und Vorschau der Animationen und der Szene im Browser.
- Nahtloser Integration: Einfache Einbettung in bestehende Web-Layouts und verbesserte Installation über die offizielle NPM-Registry.
- User Experience & Animationslogik: Intuitive Bedienung durch etablierte 3D-UI-Muster. Erweiterte Animationssteuerung durch Intervalle, Keyframes, Easing-Effekte, Vektoren und Rotation.
- Konfigurierbarkeit: Breiter Funktionsrahmen für die einfache Anpassung von Licht (Ambient, Directional, Point), Kamera und Highlighting-Effekten (Wireframe- und Ghost-Modus).
- Beschriftungselemente: Auswahl an verschiedenen 2D- und 3D-Beschriftungselementen
- Modell-Unterstützung: Lädt
.glb-Modelle. - Visuelle Konfiguration: Nutze den Online-Editor, um Bauteile visuell auszuwählen, Positionen über Transform-Controls anzupassen und auf einer Timeline zu organisieren.
- JSON-Export: Exportiere komplexe Explosionsanimationen und Szeneneinstellungen mit einem Klick als
JSON-Konfigurationsdatei. - Interaktivität: Reagiere auf Klicks, hebe einzelne Bauteile hervor und zeige dynamisch Zusatzinformationen an.
- Debugging & Lokaler EditMode: Der Editor kann zur schnellen Anpassung auch lokal im eigenen Projekt direkt über das Framework aufgerufen werden (
editMode: true).
Die Installation wurde im Rahmen der Bachelorarbeit deutlich vereinfacht (es wird kein GitHub Access-Token mehr benötigt). Installiere das Paket direkt über NPM:
npm i explo.jsEine detaillierte Anleitung und alle verfügbaren optionen sind in der INSTALLATION.md zu finden.
- Beispieldaten Auto: /Prototyp/public/car
- Beispieldaten Kopfhörer: /Prototyp/public/kopfhoerer
- Beispieldaten Klemmbaustein Figur: /Prototyp/public/lego
Um den neuen visuellen Editor direkt im Browser zu testen und eigene .glb-Modelle ohne Programmierung zu animieren, besuche die dedizierte Web-Applikation: https://exploded-views-kellner.de-fender.it/
Alternativ kann die Beispielumgebung lokal gestartet werden:
git clone https://github.com/MaximilianKellner/exploded-view-web-package.gitcd .\Prototyp\npm i
npm run dev
