Commit Graph

18 Commits

Author SHA1 Message Date
irrlicht 01f299aa4f Hausputz: UV-Doppel-Flip raus, tga::load → Result, hide_object entfernt
UVs laufen jetzt durchgehend in glTF-/tga-Konvention (der Flip-Hin-und-
Zurück stammte vom gelöschten OBJ-Pfad). Kaputte Welt-Texturen fallen auf
den Platzhalter statt zu panicken. Player::eye() statt vierfacher
Augenpunkt-Rechnung. hide_object war ein irl3d-Demo-Relikt ohne
Konsument.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:37:18 +02:00
irrlicht 31e1942870 Audio: WAV + tinyaudio, Ambient-Emitter mit Distance ramps; artist.md
engine/wav.rs (Decoder) und render/audio.rs (Mixer, 8 SFX-Voices +
Loop-Voice je Emitter) aus irl3d eingebettet; Emitter-Logik headless in
engine/audio.rs. Empties mit sound/radius-Property senden positional,
play_sound-Signale laufen als SFX über Session::take_sounds.
Platzhalter-Sounds + Emitter in der Testszene; artist.md fasst die
Content-Regeln für die Autorin zusammen.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:37:18 +02:00
irrlicht 56d92cdb46 Map-Loader entfernt: glTF ist das einzige 3D-Format
engine/map.rs + render/brush.rs raus, Welt kommt komplett aus .glb.
Spawn via Empty mit role=spawn statt info_player_start; testscene.glb
(Boden, Wände, Spawn) ersetzt test.map.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:37:18 +02:00
irrlicht 186ee9a817 640×480 (VGA) intern, UI auf EGA 8×14
Text-getrieben → 80-Spalten-Textmodus-Look; RGB555+Dither bleiben.
Menü-/Dialog-Metriken an die Fonthöhe angepasst, CGA bleibt fürs HUD.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:37:18 +02:00
irrlicht 9db3929750 Collider via collide-Property + Quickhull, OBJ-Pfad entfernt
col_*-Namenspräfix raus: Rollen steuern nur noch Custom Properties
(collide=1 sichtbar+Collider, "proxy" unsichtbar, signal wie gehabt).
Collider sind die konvexe Hülle der Vertices — konkave Meshes erlaubt.
glb ist der einzige Modell-Pfad; suzanne.obj → suzanne.glb.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:37:18 +02:00
irrlicht f7bfdb4a0b Blender-Import-Pipeline: glTF/OBJ, col_*-Proxies, Trigger
Blender wird das Haupt-3D-Tool: zwei Loader (engine/gltf.rs für .glb als
Hauptpfad, engine/obj.rs aus irl3d eingebettet) liefern ein neutrales
engine/model.rs::Model. Loader sind reine Dekoder; das Frontend zieht sie
und schiebt das Ergebnis per Session::load_props in den State, der
Renderer baut sein Mesh (render/props.rs, verschmolzen mit der
Brush-Welt über eine geteilte Texturliste).

glTF trägt Blender-Custom-Properties (node.extras → Object::props) und
Empties (Nodes ohne Mesh) als Entity-Kanal. Namenskonvention: `col_*` =
unsichtbarer Collision-Proxy, aus dem collision::add_model konvexe
Ebenen-Sets baut (konvex-only, daher kein Default-Collider auf
Sichtgeometrie).

Trigger (engine/trigger.rs) hängen an der Custom Property `signal`:
mit Collider = Point-and-Click-Ziel (Session::pick raycastet aus der
Bildmitte, Treffer läuft durch den `use <name>`-Trichter), ohne Collider
= unsichtbare Betretens-Zone, die einmal je Eintritt feuert. Gefeuert
wird nur über Session::exec — der Eingabe-Trichter bleibt der einzige
Weg in den State.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-16 20:37:18 +02:00
irrlicht c9e463bb9a Cleanup 2026-07-11 00:14:41 +02:00
irrlicht f181bf4de9 Renamed Play State 2026-07-01 00:32:05 +02:00
irrlicht 949a076ec7 Mipmapping an den Texturen 2026-06-16 10:39:58 +02:00
irrlicht 44f58bc9c2 First Person Cam im Menu 2026-06-15 09:40:51 +02:00
irrlicht a8bfaaee36 First Person Controller 2026-06-14 16:20:47 +02:00
irrlicht 4f9a792dea Replaced Affine Texture mapping with Regular Texute Mapping 2026-06-13 20:42:18 +02:00
irrlicht a585dff09d Fixed double mouse lock logic 2026-06-13 20:42:18 +02:00
irrlicht d584e418f5 Menu als state im Mode-System 2026-06-13 20:42:18 +02:00
irrlicht a41d39cc78 Menu-Panel 2026-06-13 20:42:18 +02:00
irrlicht 6bb9b009c4 idk shitload of stuff 2026-06-13 18:18:17 +02:00
irrlicht 48c499e356 centralized state 2026-06-13 13:44:02 +02:00
irrlicht 0a8861a5b1 Window init 2026-06-13 03:16:59 +02:00