Commit Graph

12 Commits

Author SHA1 Message Date
5852a972f4 Fix: Correct door alignment for East and West walls
- Fixed wallOffset calculation for E/W walls
- Both E and W walls need inverted offset due to rotation=π/2
- Local X axis points to -Z for both walls when rotated 90°
- Door gaps and door meshes now perfectly aligned on all walls (N/S/E/W)
- Resolves misalignment issue where E/W doors didn't match their wall gaps
2025-12-28 20:12:32 +01:00
8025d66fc4 Refactor: Unify door positioning logic
- Created getDoorWorldPosition() function that calculates both mesh position and wall offset
- Eliminated duplicate positioning logic between wall gaps and door meshes
- Removed inconsistent sign inversions that caused misalignment
- Both wall gaps and door meshes now use the same coordinate system
- Fixes issue where doors and gaps were positioned differently on S and W walls
2025-12-28 20:02:13 +01:00
ea3813213a Pre-refactor: Door alignment fix - safety checkpoint 2025-12-28 20:00:33 +01:00
0e5b885236 Feat: Interactive doors with physical wall cutouts
- Implemented door selection and interaction model (walk-to + click).
- Added modal for opening doors.
- Refactored wall rendering to create physical holes (CSG-like wall segments).
- Aligned door meshes to perfectly fit wall cutouts.
- Managed door visibility states to prevent Z-fighting on open doors.
2025-12-23 13:50:05 +01:00
3c599093cf Fix: Texture stretching in large rooms
- Used texture cloning for floor tiles to ensure independent repeat settings for each room.
- Calculated texture repetition based on room dimensions relative to the base 4x4 tile size, preventing distortion in non-square rooms.
v0.5
2025-12-23 13:13:37 +01:00
12fb18b1de Fix: Remove camera view corruption
- Removed line in animateMovement that mutated CAMERA_VIEWS static constants.
- This prevents the camera offset from skewing as the player moves away from the origin, ensuring the isometric view angle remains consistent throughout the entire dungeon.
2025-12-23 13:07:32 +01:00
e47b2eeba0 Fix: Deterministic camera transitions
- Refactored setCameraView to use precise lookAt and position calculation instead of accumulating quaternion errors.
- Forces camera UP vector (0,1,0) to prevent roll drift during isometric rotation.
2025-12-23 12:56:09 +01:00
21e85915e9 Feat: Weighted dungeon generation, Minimap, and robust movement logic
- Implemented weighted room generation with size limits.
- Added HUD with Minimap (God Mode view).
- Fixed texture stretching and wall rendering for variable room sizes.
- Implemented 'detectRoomChange' for robust entity room transition.
2025-12-23 12:53:09 +01:00
7cc92da012 Mejoras en vistas isométricas y sistema de opacidad de paredes
- Sistema de opacidad dinámica de paredes según vista actual
- Vistas con transición animada suave (600ms)
- Centrado automático en el jugador al cambiar vista
- Quaternions precalculados para evitar degradación de vistas
- Validación de puertas que apuntan a salas existentes
- Limpieza de puertas inválidas en generador de mazmorras
- Paredes opacas/transparentes según orientación de cámara

Pendiente: Resolver z-fighting de puertas en ciertas vistas
2025-12-21 00:43:36 +01:00
92fdfed49c Fix: Vistas isométricas con quaternions fijos para evitar degradación
- Precálculo de quaternions para cada vista (N, S, E, W)
- Eliminado uso de lookAt() en cambios de vista
- Uso de Vector3 nativos de Three.js
- Sistema completamente determinista sin acumulación de errores
2025-12-21 00:25:30 +01:00
38960df5d9 Generador procedural de mazmorras con fog of war y sistema de vistas isométricas
- Generador procedural que crea hasta 10 salas aleatorias conectadas por puertas
- Sistema de fog of war: solo se muestran salas visitadas
- Puertas automáticas entre salas con detección de transición
- 0-2 esqueletos aleatorios por sala
- Sistema de vistas NSEW con UI de compás
- 4 vistas isométricas fijas (Norte, Sur, Este, Oeste)
- Zoom y paneo habilitados, rotación deshabilitada
- Paredes con opacidad diferenciada (N/W opacas, S/E semi-transparentes)
- Validación de movimiento: solo celdas transitables
- Centrado automático de cámara al mover personaje
2025-12-21 00:19:59 +01:00
8da82f4150 Guardando estado actual 2025-12-20 22:57:59 +01:00