Files
novafarma/docs/DNEVNIK.md
NovaFarma Dev 344fbc307d Session 3: Tree Variety System Complete
TREE VARIETIES IMPLEMENTED:
- Added 5 tree types: Cherry, Oak, Pine, Dead, Apple
- AI-generated PNG sprites with transparent backgrounds
- Random tree selection for natural diversity
- Growth scaling (0.4-0.6x for variety)

 VISUAL IMPROVEMENTS:
- 2.5D depth sorting (Y-position based)
- Proper shadows matching tree size
- Layered rendering for perspective

 TRANSPARENCY FIXES:
- Disabled automatic sprite processing
- User manually removed green screen backgrounds
- Fixed pink/red color preservation
- Trees now render with proper transparency

 TREE DISTRIBUTION:
- Reduced from ~78 to 10 trees (87% reduction)
- Removed corner forest clusters (too crowded)
- Sparse scattered placement across 100x100 map
- Wider spacing (8-15 tiles apart)
- Small tree sizes (0.35-0.7x scale, ~50% reduction)

 TECHNICAL CHANGES:
- PreloadScene: Added tree sprite loading
- PreloadScene: Disabled processAllTransparency()
- Flat2DTerrainSystem: PNG sprite rendering with fallback
- map2d_data.js: Sparse tree generation
- Green removal threshold: g > 180 (preserves pink/red)

 FILES MODIFIED:
- src/scenes/PreloadScene.js
- src/systems/Flat2DTerrainSystem.js
- data/map2d_data.js
- assets/sprites/tree_*.png (5 new sprites)
- docs/DNEVNIK.md (updated with user availability)

Session: 1.5h (23:28-00:48)
Date: 14-15.12.2024
2025-12-15 00:49:06 +01:00

122 lines
4.0 KiB
Markdown

# 📖 DNEVNIK RAZVOJA - NovaFarma
## ⚠️ **POMEMBNO - User Availability:**
**Status:** Na dopustu / bolniški
**Razpoložljivost:** Lahko delamo dolge sessions (3-4+ ur)
**Ni potrebe:** Skrbeti za čas spanja ali utrujenost
**User bo povedal:** Ko je utrujen/zaspan
---
## 🗓️ 14. December 2024 - Session 1: Tiled Map Editor Exploration
**Trajanje:** 2 uri (20:00 - 22:00)
**Cilj:** Integracija Tiled Map Editor za custom map design
### ✅ Dosežki:
1. **Tiled Map Editor Setup:**
- ✅ Instaliran Tiled v1.11.2 (via winget)
- ✅ Ustvarjena workflow dokumentacija (`.agent/workflows/tiled-map-setup.md`)
- ✅ Demo mapa ustvarjena (`farm_map.tmx`, `farm_map.json`)
- ✅ Tileset files (.tsx) pripravljeni
2. **Bug Fixes:**
- ✅ SaveSystem.js - fixed compatibility z Flat2DTerrainSystem
- ✅ InteractionSystem.js - dodal null check za terrainSystem
3. **2D Visual Enhancements (Predhodni session):**
- ✅ Cherry blossom trees (flat 2D triangular design)
- ✅ Vibrant colors (grass, water, dirt)
- ✅ Outlines za 2D cartoon style
### ❌ Izzivi:
1. **Tiled Integration Incomplete:**
- Tileset PNG slike so prevelike (3072x3072 namesto 192x192)
- Tile indices ne kažejo pravih pixlov
- Layer rendering ne deluje
- **ODLOČITEV:** Rollback na procedural Flat2DTerrainSystem
2. **Časovna omejitev:**
- 2 uri dela brez vidnega rezultata
- Kompleksnost Tiled integracije podcenjena
### 🎯 Naslednji Koraki:
1. **Tiled Map - Future Work:**
- Narediti pravilne tileset PNG slike (192x192, 4x4 grid)
- Testirati z manjšimi demo mapami
- Raziskati Phaser Tiled integration best practices
2. **2D Map Improvements:**
- Nadaljnja vizualna poliranje procedural sistema
- Auto-tiling za smooth edges (grass/water transitions)
- Weather effects (rain on water)
### 📊 Statistika:
- **Datoteke spremenjene:** 11
- **Nove datoteke:** 5 (Tiled setup)
- **Linije kode:** ~500 (večinoma debugging in testiranje)
- **Bugs fixed:** 3
### 💡 Lekcije:
1. **Procedural sistem deluje dobro** - ni nujno zamenjati
2. **Tiled integration zahteva več raziskave** - tileset dimensions critical
3. **Incremental approach** - manjše testne mape pred velikimi
4. **Time management** - vedno imej rollback plan!
---
## 🗓️ 14. December 2024 - Session 2: Cherry Blossom Trees + Visual Polish
**Trajanje:** 30 min (22:30 - 23:00)
**Cilj:** Dodati cherry blossom drevesa in testirati PNG sprite integration
### ✅ Dosežki:
1. **Cherry Blossom Trees:**
- ✅ Generirane AI PNG slike (`roza_cesnjevo_drevo.png`, `cesnja_sadje.png`)
- ✅ Dodan loading v PreloadScene.js
- ✅ Implementiran PNG sprite rendering v Flat2DTerrainSystem
- ✅ Testiranje različnih velikosti (0.8x → 0.5x scale)
2. **Background Removal Attempts:**
- ✅ Dodal cherry tree v `processSpriteTransparency()` seznam
- ✅ Implementiral `ultraRemoveBackground()` za pink + brown piksle
- ❌ AI generiran PNG ima črne obrobe ki jih težko odstranimo
3. **Končna Rešitev:**
- ✅ Revert nazaj na **proceduralne cherry blossom trees** (roza trikotniki)
- ✅ Čisto brez artefaktov, pravilno rendering
### 🎨 **POMEMBNO PRAVILO - Image Generation:**
**🟢 VSE PRIHODNJE AI GENERIRANE SLIKE:**
- **GREEN SCREEN BACKGROUND** (RGB: 0, 255, 0)
- **100% solid green** - NO gradients, NO transparency
- Razlog: Chroma-key removal je 100% zanesljiv!
- Sistem že ima `processSpriteTransparency()` - lahko dodamo green detection
**Format:**
```
Background: Solid bright green (#00FF00)
Subject: Clear, sharp edges
No anti-aliasing on green boundary
```
### 💡 Lekcije:
1. **AI transparency NE DELUJE zanesljivo** - vedno ostanejo artefakti
2. **Green screen je STANDARD** - uporablja Hollywood, uporabimo tudi mi!
3. **Procedural graphics > problematic PNGs** - če PNG ne deluje, procedural je backup
4. **Test early** - raje testiraj hitro kot da persistent z nedelujočim pristopom
---
## **Prejšnji Sessions:**
*(Sessions pred 14.12.2024 niso dokumentirani v tem dnevniku)*