This repository has been archived on 2026-02-15. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
breakpilot-pwa/breakpilot-drive/PREFAB_CONFIG.md
Benjamin Admin 21a844cb8a fix: Restore all files lost during destructive rebase
A previous `git pull --rebase origin main` dropped 177 local commits,
losing 3400+ files across admin-v2, backend, studio-v2, website,
klausur-service, and many other services. The partial restore attempt
(660295e2) only recovered some files.

This commit restores all missing files from pre-rebase ref 98933f5e
while preserving post-rebase additions (night-scheduler, night-mode UI,
NightModeWidget dashboard integration).

Restored features include:
- AI Module Sidebar (FAB), OCR Labeling, OCR Compare
- GPU Dashboard, RAG Pipeline, Magic Help
- Klausur-Korrektur (8 files), Abitur-Archiv (5+ files)
- Companion, Zeugnisse-Crawler, Screen Flow
- Full backend, studio-v2, website, klausur-service
- All compliance SDKs, agent-core, voice-service
- CI/CD configs, documentation, scripts

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-09 09:51:32 +01:00

7.7 KiB

Breakpilot Drive - Prefab Konfiguration

Diese Anleitung beschreibt, wie die Prefabs fuer das Spiel konfiguriert werden.


1. Spieler-Auto (Player)

Prefab erstellen

  1. Aus Kenney Car Kit ein Auto waehlen
  2. In die Szene ziehen
  3. Umbenennen zu "PlayerCar"

Komponenten

Komponente Einstellungen
Transform Position: (0, 0, 0), Scale: (1, 1, 1)
Rigidbody Use Gravity: false, Is Kinematic: true
Box Collider Is Trigger: false, Size an Auto anpassen
PlayerController Lane Distance: 3, Lane Switch Speed: 10

Inspector-Einstellungen (PlayerController)

Bewegung:
  Lane Distance: 3
  Lane Switch Speed: 10
  Forward Speed: 10

Spuren:
  Current Lane: 1 (Mitte)

Touch-Steuerung:
  Swipe Threshold: 50

Effekte:
  Crash Effect: (ParticleSystem zuweisen)
  Collect Effect: (ParticleSystem zuweisen)

Tag

  • Tag: Player

Speichern

  • Aus Hierarchy in Assets/Prefabs/Player/ ziehen
  • Name: PlayerCar.prefab

2. Strecken-Segment (Track)

Prefab erstellen

  1. Leeres GameObject: "TrackSegment"
  2. Boden erstellen:
    • 3D Object → Plane
    • Scale: (5, 1, 5) fuer 50m Laenge
    • Material: Strassen-Textur

Struktur

TrackSegment
├── Ground (Plane mit Strassen-Material)
├── LeftBorder (optional, Leitplanke)
├── RightBorder (optional, Leitplanke)
└── SpawnPoints (leeres GO fuer Hindernis-Positionen)

Speichern

  • Mehrere Varianten erstellen (gerade, Kurve, etc.)
  • In Assets/Prefabs/Track/ speichern

3. Hindernisse (Obstacles)

Hindernis-Prefab erstellen

  1. Aus Kenney Nature Kit: Stein, Baum, etc. waehlen
  2. In Szene ziehen
  3. Umbenennen (z.B. "Obstacle_Rock")

Komponenten

Komponente Einstellungen
Box Collider Is Trigger: true, Size anpassen

Tag

  • Tag: Obstacle

Prefab-Varianten

Name Beschreibung Groesse
Obstacle_Rock.prefab Kleiner Stein 1 Spur
Obstacle_Tree.prefab Umgefallener Baum 2 Spuren
Obstacle_Barrier.prefab Absperrung 1-2 Spuren
Obstacle_Cone.prefab Verkehrskegel 1 Spur

Speichern

  • In Assets/Prefabs/Obstacles/ speichern

4. Sammelbare Items

Coin-Prefab

  1. 3D Object → Cylinder (oder Kenney Asset)
  2. Scale: (0.5, 0.1, 0.5)
  3. Material: Gold
Komponente Einstellungen
Sphere Collider Is Trigger: true, Radius: 0.5
Rotation Script (optional, fuer Dreh-Animation)
  • Tag: Coin
  • Prefab: Assets/Prefabs/Items/Coin.prefab

Star-Prefab

  1. Star-Modell (oder Kenney Asset)
  2. Groesser als Coin
Komponente Einstellungen
Sphere Collider Is Trigger: true, Radius: 0.7
  • Tag: Star
  • Prefab: Assets/Prefabs/Items/Star.prefab

Shield-Prefab

  1. Shield-Modell
  2. Blauer Schimmer-Effekt
Komponente Einstellungen
Sphere Collider Is Trigger: true, Radius: 0.7
  • Tag: Shield
  • Prefab: Assets/Prefabs/Items/Shield.prefab

5. Quiz-Trigger (Visual Triggers)

Bridge-Prefab

  1. Aus Kenney Assets oder selbst erstellen
  2. Muss ueber der Strasse sein (Y-Position erhoehen)

Struktur

Bridge
├── BridgeModel (visuelles Modell)
└── TriggerZone (leeres GO mit Collider)
    └── Box Collider (Is Trigger: true)
    └── VisualTrigger.cs (Trigger Type: "bridge")

Komponenten (TriggerZone)

Komponente Einstellungen
Box Collider Is Trigger: true, Size: (10, 5, 2)
VisualTrigger Trigger Type: "bridge"
  • Tag: QuizTrigger

Weitere Trigger

Prefab Trigger Type Beschreibung
Bridge.prefab "bridge" Bruecke ueber Strasse
Tree.prefab "tree" Grosser Baum am Rand
House.prefab "house" Haus am Rand
Sign.prefab "sign" Schild mit Bild

Speichern

  • In Assets/Prefabs/VisualTriggers/ speichern

6. Manager-Objekte

Diese werden nicht als Prefabs, sondern direkt in der Szene erstellt:

GameManager

GameObject: GameManager
Scripts:
  - GameManager.cs

Inspector:
  Start Lives: 3
  Pause Question Interval: 500
  Game Over Panel: (UI Referenz)
  Pause Panel: (UI Referenz)

QuizManager

GameObject: QuizManager
Scripts:
  - QuizManager.cs

Inspector:
  Quick Quiz Panel: (UI Referenz)
  Pause Quiz Panel: (UI Referenz)
  Question Text: (TextMeshPro Referenz)
  Answer Buttons: [Button0, Button1, Button2, Button3]
  Timer Text: (TextMeshPro Referenz)
  Timer Slider: (Slider Referenz)
  Points Correct: 500
  Points Wrong: -100
  Pause Question Interval: 500

TrackGenerator

GameObject: TrackGenerator
Scripts:
  - TrackGenerator.cs

Inspector:
  Track Segment Prefabs: [Segment1, Segment2, ...]
  Start Segment Prefab: (Start-Segment)
  Segment Length: 50
  Visible Segments: 5
  Despawn Distance: -20
  Base Speed: 10

ObstacleSpawner

GameObject: ObstacleSpawner
Scripts:
  - ObstacleSpawner.cs

Inspector:
  Obstacle Prefabs: [Rock, Tree, Barrier, ...]
  Large Obstacle Prefabs: [LargeTree, ...]
  Coin Prefab: (Coin.prefab)
  Star Prefab: (Star.prefab)
  Shield Prefab: (Shield.prefab)
  Bridge Prefab: (Bridge.prefab)
  Tree Prefab: (Tree.prefab)
  House Prefab: (House.prefab)

  Lane Distance: 3
  Min Obstacle Spacing: 10
  Max Obstacle Spacing: 30

  Obstacle Chance: 0.6
  Coin Chance: 0.3
  Star Chance: 0.05
  Shield Chance: 0.02
  Quiz Trigger Chance: 0.1

BreakpilotAPI

GameObject: BreakpilotAPI
Scripts:
  - BreakpilotAPI.cs

Inspector:
  Base URL: http://localhost:8000/api/game
  Use Offline Cache: true

7. UI Canvas

Canvas erstellen

  1. Rechtsklick in Hierarchy → UI → Canvas
  2. Canvas Scaler:
    • UI Scale Mode: Scale With Screen Size
    • Reference Resolution: 1920 x 1080

UI Struktur

Canvas
├── GameHUD
│   ├── ScorePanel
│   │   ├── ScoreIcon
│   │   └── ScoreText (TextMeshPro)
│   ├── LivesPanel
│   │   ├── Heart1, Heart2, Heart3 (Images)
│   │   └── LivesText (TextMeshPro)
│   └── DistanceText (TextMeshPro)
│
├── QuickQuizPanel (anfangs deaktiviert)
│   ├── QuestionText (TextMeshPro)
│   ├── AnswerButtons
│   │   ├── Button1, Button2, Button3
│   ├── TimerSlider
│   └── TimerText
│
├── PauseQuizPanel (anfangs deaktiviert)
│   ├── Background (halbtransparent)
│   ├── QuestionPanel
│   │   ├── QuestionText
│   │   ├── Button1, Button2, Button3, Button4
│   │   └── HintText (optional)
│
├── GameOverPanel (anfangs deaktiviert)
│   ├── GameOverText
│   ├── FinalScoreText
│   ├── RestartButton
│   └── MainMenuButton
│
└── PausePanel (anfangs deaktiviert)
    ├── PauseText
    ├── ResumeButton
    └── MainMenuButton

8. Checkliste

Prefabs erstellt?

  • PlayerCar.prefab
  • TrackSegment.prefab (mindestens 1)
  • Obstacle_Rock.prefab
  • Coin.prefab
  • Star.prefab
  • Shield.prefab
  • Bridge.prefab (Quiz-Trigger)

Manager konfiguriert?

  • GameManager - alle UI Referenzen gesetzt
  • QuizManager - alle UI Referenzen gesetzt
  • TrackGenerator - Prefabs zugewiesen
  • ObstacleSpawner - Prefabs zugewiesen
  • BreakpilotAPI - Base URL korrekt

Tags erstellt?

  • Player
  • Obstacle
  • Coin
  • Star
  • Shield
  • QuizTrigger

UI Canvas?

  • Canvas Scaler konfiguriert
  • GameHUD erstellt
  • QuickQuizPanel erstellt
  • PauseQuizPanel erstellt
  • GameOverPanel erstellt