FlorianSpeicher 1babd7a42c Make readme pretty
2025-07-17 11:38:07 +02:00
2025-07-17 11:38:07 +02:00
2025-06-25 15:06:48 +02:00
2025-06-25 15:06:48 +02:00
2025-07-17 11:38:07 +02:00

🚀 VR-Konfigurator

Willkommen zum VR-Konfigurator! Hier kannst du Fahrzeuge in VR und AR konfigurieren und eine coole User-Experience genießen.


🎯 Ziele (Goals)

✔️ Auswahl zwischen zwei Modellen: Erlbach & Fahrrad
✔️ Konfiguration von Teilen (Felgen, Grill, etc.)
✔️ Farbauswahl verschiedener Komponenten
✔️ 3D-Darstellung mit frei drehbarer Ansicht
✔️ Explosions-Ansicht via Animation
✔️ Umschalten in AR-Modus
✔️ Export der Konfiguration als JSON
✔️ VR-Umgebung passend zum Kontext
✔️ Grabben der UI-Menüelemente
✔️ Teile per Klick auf das Modell auswählen


🖼 Screenshots

Hauptmenü Konfiguration Explosionsansicht
Screenshot1 Screenshot2 Screenshot3

🛠 Projektstruktur (Structure)

🏗 Model

Grundlage für Base- und ChildModels:

  • Name (Human-Readable)
  • ID
  • Mesh (Form)
  • Material (Oberfläche)
  • Position, Rotation, Skalierung
  • Farbauswahlen
  • Unterstützt Passthrough-Model (Hilfsobjekte, Farbweitergabe an Kinder)
  • Definiert Ports

🔌 Port

  • Schnittstelle, die ChildModels anbinden lässt
  • Enthält:
    • PortID (nicht-unique)
    • DefaultID (Standardmodell)
    • Chooseable-Flag
    • Positionsinformationen
    • Anzeigename im Menü
    • Explode-Direction

📦 BaseModel

  • Startpunkt der Konfiguration
  • Im Hauptmenü auswählbar
  • Farbe nicht änderbar
  • Empfehlung: leeres/festes Objekt für maximale Flexibilität

🔗 ChildModel

  • An Ports angebunden
  • Kann eigene Ports definieren → rekursive Baumstruktur

🎮 ModelBehaviour

  • Visualisiert Ports und deren Kinder
  • Steuert Logik beim Modellwechsel

🔍 BaseModelBehaviour / ChildModelBehaviour

  • BaseModelBehaviour: Identifikationszweck
  • ChildModelBehaviour: Zusätzliche Infos für ChildModels (Port, Parent)

⚙️ Manager & Controller

  • ModelManager: Verwaltung aller Modelle (Assets/Scripts/Model)
  • StateManager: Reset-Logik & Menü-Rückkehr (Assets/Scripts/Managing)
  • Exploder: Steuert Explosionsanimation
  • Rotator: Rotation des Modells über Meta Quest 3 Joysticks (nur Y-Achse)

Modelle hinzufügen (Adding Models)

📂 Modelle & Materialien ins Verzeichnis: /Assets/Ressources

🔑 In der ModelList eintragen:

  • BaseModel: Grundmodell
  • ChildModel: Teile des Modells (Position, Ports, Farben, Explosionsrichtung)
  • Sammlung von ChildModels: Mehrere ChildModels aus einer Datei laden

📥 Installation

Voraussetzungen

▶️ Schritte

# Repository klonen
git clone ssh://git@git.kilabor.htwsaar.de:2222/projektarbeiten-bachelor/sose_2025/gruppe-1/vr-configurator.git

# Unity öffnen & Projekt importieren
# Player Settings: OpenXR aktivieren
# App auf Meta Quest 3 (Android Build Settings) builden

📚 Dokumentation

Detaillierte Infos findest du hier: /docs/Dokumentation


👥 Contributors

  • Max Luca Schmidt
  • Florian Speicher
  • Tim Wall
Description
No description provided
Readme 1.7 GiB
Languages
C# 72.4%
ShaderLab 17.7%
GLSL 5.2%
HLSL 4.7%