# Voxel CSG Motor - Hızlı Test Rehberi

## ✅ Sistemin Hazır Olduğunu Doğrulayın

Voxel CSG motoru **tamamen entegre edilmiştir** ve aşağıdaki adımlarla test edilebilir:

## 🧪 Test Adımları

### 1. Sistemi Başlatın

```bash
cd fikoyt-3D-sistem
ng serve
```

### 2. Kütük Seçin

1. Simülasyon panelini açın
2. **"Kütük Seç"** butonuna tıklayın (kare simgesi)
3. 3D sahneden bir mesh seçin (veya ürün ağacından)
4. ✅ Seçim başarılı olduğunda "✓ Kütük seçildi" mesajı görünür

### 3. Motor Seçimi

Kütük seçildikten sonra **motor seçim paneli** otomatik görünür:

```
⚙️ SİMÜLASYON MOTORU:

[Triple-Dexel]  [Voxel CSG]  [Görsel]
  2.5D | Hızlı    3D | Gerçek   Sadece yol
```

**"Voxel CSG"** butonuna tıklayın.

### 4. Simülasyonu Başlatın

1. **"Başlat"** butonuna basın (kütük simgesine tekrar tıklayın)
2. Console'da şu mesajları görmelisiniz:

```
🎯 [VoxelSim] Initializing Voxel CSG engine... (100x100x50, 1.00mm voxels)
✅ [VoxelSim] CPU engine initialized
🚀 [VoxelSim] GPU acceleration enabled (WebGPU)
   // VEYA
🔷 [VoxelSim] Worker threading enabled
✨ [VoxelSim] Engine ready (GPU mode)
```

### 5. Simülasyonu Oynatın

1. **Play** butonuna basın (▶)
2. Takım yolu oynatılmaya başlar
3. **Voxel mesh'in güncellenmesini görmelisiniz**

## 🔍 Debug ve Doğrulama

### Console Logları

Console'da şunları görmeli:

```javascript
// Engine başlatma
[VoxelSim] Initializing Voxel CSG engine...
[VoxelSim] CPU engine initialized
[VoxelSim] GPU acceleration enabled (WebGPU)  // veya Worker/CPU
[VoxelSim] Visualization mesh created

// Material removal (play'de)
[VoxelGPUCompute] GPU removal completed in 2.35ms
// Her 10 pozisyonda mesh update
[VoxelSim] Mesh updated
```

### DevTools Console'dan Stats

```javascript
// Aktif component'i bul
const comp = ng.getComponent(document.querySelector('fikoyt-fiko-similasyon-v1'));

// Voxel stats'ı al
comp.getVoxelStats()

// Beklenen output:
{
  totalVoxels: "1,000,000",
  activeVoxels: "850,234",
  memoryMB: "12.50",
  lastOpMs: "2.35",
  meshVertices: "42,561",
  meshTriangles: "85,122",
  mode: "GPU"  // veya "Worker" veya "CPU"
}
```

### 3D Sahnede

- ✅ Orijinal kütük mesh'i gizlenmiş olmalı
- ✅ Yeni voxel mesh görünmeli (gri renk)
- ✅ Play'de mesh gerçek zamanlı değişmeli
- ✅ Material removal görünmeli

## ⚠️ Sorun Giderme

### Voxel Mesh Görünmüyor

**Kontrol:**
```javascript
const comp = ng.getComponent(document.querySelector('fikoyt-fiko-similasyon-v1'));
console.log('Voxel Engine:', comp.voxelEngine);
console.log('Voxel Mesh:', comp.voxelMesh);
console.log('Mode:', comp.kutukSimModu);
```

**Çözüm:**
- `kutukSimModu` "voxel" olmalı
- `voxelEngine` null olmamalı
- `voxelMesh` THREE.Mesh instance olmalı

### Material Removal Çalışmıyor

**Kontrol:**
```javascript
const comp = ng.getComponent(document.querySelector('fikoyt-fiko-similasyon-v1'));
console.log('Last processed pos:', comp.lastProcessedSimPoz);
console.log('Current pos:', comp.poz);
```

**Çözüm:**
- Play butonuna basıldığında `lastProcessedSimPoz` artmalı
- Console'da removal logları görülmeli

### Performance Çok Yavaş

**Optimize Et:**

1. **Resolution'ı düşür:**
   - `kutukDexelBaslat()` içinde `resolution` değerini düşür
   - Örnek: `resolution = 0.5` yerine `resolution = 0.25`

2. **Batch size'ı artır:**
   - `VOXEL_BATCH_SIZE = 10` yerine `= 20`
   - Daha az mesh update = daha hızlı

3. **GPU kullanıldığından emin ol:**
   - Console'da "GPU acceleration enabled" görmeli
   - Chrome Flags: `chrome://flags/#enable-unsafe-webgpu`

## 📊 Performans Karşılaştırması

Aynı takım yolunu her iki motorla test edin:

### Test 1: Triple-Dexel

1. Motor seçiminde "Triple-Dexel" seç
2. Başlat
3. Play
4. Süreyi ölç (console time logs)

### Test 2: Voxel CSG

1. Motor seçiminde "Voxel CSG" seç
2. Başlat
3. Play
4. Süreyi ölç

### Beklenen Sonuçlar

| Motor | Başlatma | 1000 Pozisyon | Bellek | Hassasiyet |
|-------|----------|---------------|--------|------------|
| Triple-Dexel | ~100ms | ~500ms | ~50MB | ⭐⭐⭐ |
| Voxel CSG (GPU) | ~200ms | ~800ms | ~80MB | ⭐⭐⭐⭐ |
| Voxel CSG (CPU) | ~150ms | ~2000ms | ~70MB | ⭐⭐⭐⭐ |

## ✨ Başarı Kriterleri

Test başarılıysa:

- ✅ Motor seçim paneli çalışıyor
- ✅ Voxel engine başlatılıyor (console log)
- ✅ Voxel mesh görünüyor
- ✅ Play'de mesh değişiyor (material removal)
- ✅ GPU veya Worker modu aktif
- ✅ Triple-Dexel hala çalışıyor (değişmemiş)

## 🎯 Sonraki Adımlar

Eğer test başarılıysa:

1. **Performans Optimizasyonu:**
   - Batch size ayarları
   - Resolution presets
   - Adaptive LOD

2. **Snapshot System:**
   - Voxel için geri sarma
   - State serialization

3. **Advanced Features:**
   - Custom mesh voxelization
   - Full marching cubes
   - Adaptive octree optimization

## 📝 Test Raporu Şablonu

```
# Voxel CSG Test Raporu

Tarih: _______
Tarayıcı: Chrome/Firefox/Edge
GPU: _______ (WebGPU support: Evet/Hayır)

## Test Sonuçları

[ ] Motor seçimi çalışıyor
[ ] Engine başlatma OK
[ ] Mesh görünüyor
[ ] Material removal OK
[ ] Performance kabul edilebilir

## Console Logs

```
[İlgili logları yapıştır]
```

## Stats

```javascript
{
  totalVoxels: "_____",
  activeVoxels: "_____",
  mode: "_____"
}
```

## Notlar

_______________________________
```

---

**Sistem hazır! Test ederken sorun olursa bu dokümana bakın.** 🚀
