FAZA 17: 2.5D Minecraft-Style Terrain + Y-Layer Stacking + Custom Sprites
COMPLETED FEATURES: Custom Sprite Integration: - Player, Zombie, Merchant sprites (0.2 scale) - 11 custom sprites + 5 asset packs loaded - Auto-transparency processing (white/brown removal) - Gravestone system with atlas extraction 2.5D Minecraft-Style Terrain: - Volumetric blocks with 25px thickness - Strong left/right side shading (30%/50% darker) - Minecraft-style texture patterns (grass, dirt, stone) - Crisp black outlines for definition Y-Layer Stacking System: - GRASS_FULL: All green (elevation > 0.7) - GRASS_TOP: Green top + brown sides (elevation 0.4-0.7) - DIRT: All brown (elevation < 0.4) - Dynamic terrain depth based on height Floating Island World Edge: - Stone cliff walls at map borders - 2-tile transition zone - Elevation flattening for cliff drop-off effect - 100x100 world with defined boundaries Performance & Polish: - Canvas renderer for pixel-perfect sharpness - CSS image-rendering: crisp-edges - willReadFrequently optimization - No Canvas2D warnings Technical: - 3D volumetric trees and rocks - Hybrid rendering (2.5D terrain + 2D characters) - Procedural texture generation - Y-layer aware terrain type selection
This commit is contained in:
68
FAZA_4_CHECKLIST.md
Normal file
68
FAZA_4_CHECKLIST.md
Normal file
@@ -0,0 +1,68 @@
|
||||
# FAZA 4: Optimizacija in Performance - Checklist
|
||||
|
||||
**Status:** ✅ PRIPRAVLJEN ZA TESTIRANJE
|
||||
|
||||
**Datum:** 2025-12-06
|
||||
|
||||
---
|
||||
|
||||
## ✅ Opravila (Developer)
|
||||
|
||||
- [x] Kreacija ObjectPool sistema (`src/utils/ObjectPool.js`)
|
||||
- [x] Refaktorizacija TerrainSystem za uporabo tekstur namesto Graphics
|
||||
- [x] Implementacija Culling-a Viewport-a (render samo visible tiles)
|
||||
- [x] Object Pooling za tiles in dekoracije
|
||||
- [x] Dinamično posodabljanje vidnega polja v `update` zanki
|
||||
- [x] Memory managment (auto-release nevidnih sprite-ov)
|
||||
|
||||
**VSE OPRAVILA ZAKLJUČENA** ✅
|
||||
|
||||
---
|
||||
|
||||
## 🧪 Ročno testiranje (Naročnik)
|
||||
|
||||
### Test 1: FPS Stabilnost
|
||||
**Ukaz:** Opazuj FPS števec spodaj levo med premikanjem
|
||||
|
||||
**Pričakovani rezultat:**
|
||||
- [ ] FPS ostaja stabilen pri ~60 FPS
|
||||
- [ ] Pri hitrem zoomiranju/premikanju ni opaznega laga
|
||||
- [ ] Load time na začetku je hiter (ker ne riše vsega takoj?)
|
||||
|
||||
**Status:** ⏳ ČAKA NA TESTIRANJE
|
||||
|
||||
### Test 2: Culling (Nevidno nalaganje)
|
||||
**Ukaz:** Hitro premikaj kamero po robovih mape
|
||||
|
||||
**Pričakovani rezultat:**
|
||||
- [ ] Map se "riše" sproti na robovih ekrana
|
||||
- [ ] Če greš hitro, morda vidiš za delček sekunde črnino, ki se takoj zapolni
|
||||
- [ ] Ko odideš stran in se vrneš, so tile-i in dekoracije še vedno tam (konzistentnost)
|
||||
|
||||
**Status:** ⏳ ČAKA NA TESTIRANJE
|
||||
|
||||
---
|
||||
|
||||
## 📋 Potrditev Naročnika
|
||||
|
||||
```
|
||||
FAZA 4: [STATUS]
|
||||
- Testirano: [DA/NE]
|
||||
- Datum testiranja: ___________
|
||||
- Opombe:
|
||||
|
||||
ODOBRENO ZA FAZO 5: [DA/NE]
|
||||
|
||||
Podpis naročnika: _____________
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ➡️ Naslednji koraki (po odobritvi)
|
||||
|
||||
Ko naročnik potrdi FAZO 4, se začne:
|
||||
**FAZA 5: UI Elementi**
|
||||
- HUD (Head-up Display)
|
||||
- Health Bar
|
||||
- Inventory Bar (quick slots)
|
||||
- Mini-mapa (optional)
|
||||
Reference in New Issue
Block a user