# FikoYT 3D CAD Sistemi - Mega Arastirma Raporu

**Tarih:** 2026-03-13
**Kapsam:** 20 ajan takimi, 4 arastirma grubu (Sistem Inceleme, Web Arastirma, Performans, Plan Olusturma)
**Ilgili plan dosyalari:**
- `docs/plans/2026-03-13-rendering-pipeline-optimizasyon.md`
- `docs/plans/2026-03-13-gpu-compute-entegrasyon-plani.md`
- `docs/plans/2026-03-13-secim-sistemi-upgrade-plani.md`
- `docs/plans/2026-03-13-endustriyel-web-cad-viewer-analizi.md`
- `docs/plans/2026-03-13-3d-cad-master-mimari-plan.md`

---

## 1. Yonetici Ozeti

FikoYT 3D CAD motoru, ~120.000+ satir TypeScript ve ~8.500 satir Rust WASM koduyla endustriyel seviye bir web tabanli CAD viewer'dir. 537 dosya, 57 performans modulu, 3 katmanli secim sistemi (WASM -> GPU -> CPU) ve SPH sivi simulasyonu altyapisina sahiptir. Mevcut sistem "iyi" seviyededir; ancak endustri liderleriyle (Onshape, Autodesk Viewer) rekabet icin stratejik yatirimlar gereklidir.

### En Kritik 10 Bulgu

1. **Motor Olcegi:** 120K+ satir TS + 8.5K satir Rust, 537 dosya. 5 mega dosya 2000+ satir (FikoSecililer 7451, FikoWasmBridge 2833, FikoImporter.STP 2000+, FikoCizimYalin 2000+, FikoOlcumCizgisi 2000+)
2. **Secim Sistemi God Object:** FikoSecililer.ts 7451 satir, 80+ metod -- modulerize edilmeli
3. **WASM Kapsami Dar:** 134 export fonksiyon mevcut ama mesh boolean, tessellation, BVH construction eksik
4. **WebGPU Compute Mevcut (SPH):** 17 WGSL shader, 3 solver -- ancak CAD rendering pipeline'ina entegre degil
5. **Frustum Culling Varsayilan KAPALI:** Aktif edilirse hemen %15-20 performans kazanimi
6. **LOD Fragmentasyonu:** 5 farkli LOD implementasyonu konsolide edilmemis
7. **SharedArrayBuffer Kullanilmiyor:** Worker'lar arasi sifir-kopya veri paylasimi firsati kacirilmis
8. **Mesh Deduplication Yok:** Autodesk SVF2'nin %86 geometri azaltma teknigi uygulanmamis
9. **Progressive Loading Eksik:** Buyuk STEP dosyalarinda kullanici tum yukleme bitmeden model goremiyor
10. **Dokum Simulasyonu GPU'ya Tasinmali:** Mevcut Rust CPU kodlari (LBM, termal) GPU'da 50-100x hizlanabilir

### Hemen Yapilmasi Gereken 5 Sey

| # | Aksiyon | Beklenen Kazanim | Sure |
|---|---------|------------------|------|
| 1 | Frustum culling varsayilan ACIK yap | %15-20 FPS artisi | 1 gun |
| 2 | Material atlasing (ayni renk = tek draw call) | %30-50 draw call azalmasi | 3 gun |
| 3 | Render state sorting (front-to-back opaque) | %10-15 overdraw azalmasi | 2 gun |
| 4 | three-mesh-bvh SAH mode + serialization aktif et | %30 BVH hizi | 1 gun |
| 5 | WASM'da SIMD intrinsics aktif et (edge distance, raycast) | 2-4x CPU hesaplama hizi | 3 gun |

---

## 2. Mevcut Sistem Durumu

### 2.1 Motor Istatistikleri

| Metrik | Deger |
|--------|-------|
| Toplam TS Dosya | 537 |
| IFikoThreeJS/ Satir | ~34.000 |
| fiko-performance/ Satir | ~38.000 |
| Services Satir | ~4.000 |
| **Toplam Motor Kodu** | **~120.000+ satir** |
| WASM Rust Kodu | 8.454 satir (5 dosya + dokum modulleri) |
| WASM Export Fonksiyon | 134 |
| Worker Tipi | 6 ozel + 3 pool yonetici |
| WASM Binary Boyutu | ~364 KB (optimize) |

### 2.2 Mimari Diyagram

```
+------------------------------------------------------------------+
|                        ANGULAR 20 FRONTEND                        |
|  +------------------------------------------------------------+  |
|  |                    fiko-three-js MOTOR                      |  |
|  |  +------------------+  +-----------------+  +------------+ |  |
|  |  | FikoSecililer     |  | FikoImporter    |  | FikoCizim  | |  |
|  |  | (7451 satir)      |  | .STP (2000+)    |  | Yalin      | |  |
|  |  | Secim Pipeline    |  | STEP Import     |  | CAD Draw   | |  |
|  |  +--------+---------+  +--------+--------+  +-----+------+ |  |
|  |           |                      |                  |        |  |
|  |  +--------v---------+  +--------v--------+  +------v-----+ |  |
|  |  | fiko-performance/ |  | Worker Pipeline |  | fiko-olcum | |  |
|  |  | 55+ dosya,38K sat |  | stp-occt.worker |  | Olcum      | |  |
|  |  | LOD,Culling,GPU   |  | stp-processor   |  | Aletleri   | |  |
|  |  | BVH,Spatial,Pool  |  | bvh-builder     |  +------------+ |  |
|  |  +--------+---------+  | geometry-comlink |                  |  |
|  |           |             +--------+--------+                  |  |
|  +-----------|----------------------|---------------------------+  |
|              |                      |                              |
|  +-----------v-----------+  +-------v--------+                    |
|  | WASM (Rust, 8.5K sat) |  | GPU Pipeline   |                   |
|  | - Edge Detection      |  | - GPUPicker    |                   |
|  | - Thickness Analyzer  |  | - GPUSelection |                   |
|  | - Frustum Culler      |  | - GPUHighlight |                   |
|  | - Surface Recognizer  |  | - SPH Compute  |                   |
|  | - BVH Cache           |  | (17 WGSL)      |                   |
|  | - Dokum (LBM,Termal)  |  +----------------+                   |
|  +------------------------+                                       |
+------------------------------------------------------------------+
```

### 2.3 Guclu ve Zayif Yanlar

| Guclu Yanlar | Zayif Yanlar |
|-------------|-------------|
| 3 katmanli secim (WASM->GPU->CPU) | FikoSecililer.ts God Object (7451 satir) |
| Sifir-allokasyon hot path'ler | 5 farkli LOD implementasyonu dagitmik |
| 134 WASM export fonksiyonu | WASM'da SIMD/threads kullanilmiyor |
| SPH GPU compute altyapisi (17 WGSL shader) | WebGPU CAD rendering'e entegre degil |
| BVH + Spatial Index O(log n) arama | SharedArrayBuffer kullanilmiyor |
| Instanced edge rendering (100K edge -> 1 draw call) | Progressive loading / streaming yok |
| OpenCascade.js STEP parsing | Mesh deduplication yok |
| Temporal coherence (frame-to-frame cache) | Frustum culling varsayilan kapali |
| Screen-space edge indexing (CATIA seviyesi) | Material atlasing yok |
| Multi-format destek (STP, DXF, STL, OBJ, FBX) | Render state sorting yok |

---

## 3. Teknoloji Arastirma Bulgulari

### 3.1 WebGPU Durumu ve Firsatlari

| Ozellik | Durum (2026) | FikoYT Uygulanabilirlik |
|---------|-------------|------------------------|
| Tarayici Destegi | Chrome/Edge stabil, Firefox deneysel, Safari sinirli | Feature-flag ile, WebGL2 fallback zorunlu |
| Compute Shaders | Uretim hazir | **COK YUKSEK** - Mevcut SPH altyapisi referans |
| Storage Buffers | Stabil | Edge batch hesaplama icin ideal |
| Indirect Draw | Stabil | GPU-driven rendering icin kritik |
| Multi-Draw Indirect | Deneysel | Montaj rendering icin bekle |
| TSL (Three Shading Language) | Three.js r177+ stabil | Asamali gecis -- once basit shader'lar |

**Oncelik sirasi:** Dokum termal GPU (1-2 hafta) -> GPU frustum culling (1 hafta) -> WebGPU renderer pilot (1-2 ay) -> Tam TSL migration (6+ ay)

### 3.2 WASM SIMD/Threading Potansiyeli

| Teknoloji | Tarayici Destegi | Kazanim | FikoYT Durumu |
|-----------|-----------------|---------|---------------|
| WASM SIMD (v128) | %96 | 2-4x geometri hesaplama | Build flag mevcut, intrinsics kullanilmiyor |
| Relaxed SIMD (FMA) | %85 (Safari sinirli) | %10-20 ek hizlanma | Yok, graceful fallback ile eklenebilir |
| WASM Threads (Rayon) | %90 (COOP/COEP gerekli) | 1.5-3x paralel (core sayisina bagli) | Yok, header degisikligi gerekli |
| wasm-opt flags | Evrensel | %10-30 boyut + hiz | Mevcut ama agresif flags eksik |

**Referans:** Figma 3x yukleme hizi (WASM gecisi), AutoCAD Web native %80-90 performans, Adobe Photoshop Web filtrelerde native %80-90.

### 3.3 Three.js r177+ Yenilikler

| Ozellik | Kazanim | FikoYT Oncelik |
|---------|---------|----------------|
| BatchedMesh (r160+) | Multi-material batching, draw call %80 azalma | YUKSEK -- CAD parcalari icin ideal |
| WebGPURenderer | TSL shader sistemi, compute node | ORTA -- pilot test, 20+ ShaderMaterial port gerekli |
| Float16Array | %50 bellek tasarrufu position buffer'larda | DUSUK -- basit degisiklik |
| three-mesh-bvh v0.9.5 | LineBVH, SAH build, serialization | YUKSEK -- hemen upgrade |
| Line2 (fat lines) | Kalinlik kontrollu cizgiler | Zaten kullaniliyor |

### 3.4 Dokum Simulasyonu Pazar Analizi

| Yazilim | Web Versiyonu | FikoYT Avantaji |
|---------|--------------|-----------------|
| MAGMASOFT | Yok | FikoYT web'de tek |
| ProCAST | Yok | |
| FLOW-3D CAST | Yok | |
| SOLIDCast | Yok | |
| SimScale | Genel FEM (dokum yok) | FikoYT ozel dokum modulleri |

**Kritik bulgu:** Hicbir buyuk dokum simulasyon yaziliminin web versiyonu yok. FikoYT benzersiz bir pazar pozisyonundadir.

**Mevcut FikoYT dokum altyapisi:**
- SPH motoru: 3 solver (PBF/PCISPH/DFSPH), termal, 41 dosya, 17 WGSL shader
- WASM CPU: LBM akis, termal simulasyon, Niyama analizi
- Maliyet hesaplama: `FikoCastingCost.ts`
- Malzeme kutuphanesi ve voksel/SDF GPU compute

### 3.5 Endustri CAD Viewer Benchmark

| Viewer | Mimari | FikoYT Icin Alinacak Ders |
|--------|--------|--------------------------|
| **Onshape** | Server-side Parasolid, WebGL client | Real-time collaboration pattern |
| **Autodesk Viewer** | SVF2 format, mesh deduplication (%86 azalma) | **Mesh hash + dedup tekniki** |
| **HOOPS Communicator** | 5 asamali progressive loading | **Progressive loading pipeline** |
| **web-ifc** | C++ -> WASM, 3 varyant, fragment rendering | Fragment-based rendering |
| **xBIM** | WexBIM ozel format, sifir framework | Ham WebGL performans referansi |
| **Shapr3D** | Parasolid WASM, client-side | Istemci-agirlikli mimari (FikoYT ile ayni) |

---

## 4. Performans Optimizasyon Firsatlari

### 4.1 Quick Wins (Hemen Uygulanabilir, 1-2 Hafta)

| # | Optimizasyon | Mevcut Durum | Hedef | Kazanim | Zorluk |
|---|-------------|-------------|-------|---------|--------|
| 1 | Frustum culling ON | Varsayilan KAPALI | Varsayilan ACIK | %15-20 FPS | Trivial |
| 2 | Material atlasing | Her renk ayri DC | Ayni material paylas | %30-50 DC azalma | Dusuk |
| 3 | Render state sorting | Yok | Front-to-back opaque | %10-15 overdraw | Dusuk |
| 4 | three-mesh-bvh SAH | Varsayilan build | SAH + serialization | %30 BVH hizi | Trivial |
| 5 | WASM SIMD intrinsics | Flag var, kod yok | glam/wide crate | 2-4x CPU hiz | Orta |
| 6 | LOD cross-fade | Anlik swap (popping) | Alpha blend gecis | Gorsel kalite | Dusuk |
| 7 | Shader warmup | Ilk render duraklama | Onceden derleme | -200ms ilk render | Dusuk |

**Toplam beklenen kazanim:** %40-60 performans iyilesmesi

### 4.2 Orta Vadeli Iyilestirmeler (1-3 Ay)

| # | Optimizasyon | Mevcut -> Hedef | Kazanim | Zorluk |
|---|-------------|-----------------|---------|--------|
| 1 | BatchedMesh entegrasyonu | InstancedMesh | Multi-material, %80 DC azalma | Orta |
| 2 | FikoSecililer modulerize | 7451 satir tek dosya | ~15 module ayirma | Orta |
| 3 | WASM Threads (Rayon) | Tek thread | 1.5-3x paralel | Orta (COOP/COEP) |
| 4 | Mesh deduplication | Her mesh ayri | Hash-based dedup | %30-80 GPU bellek | Orta |
| 5 | Progressive STEP loading | Tum -> goster | Parca parca gosterim | <2s ilk goruntuleme | Yuksek |
| 6 | Worker-to-Worker pipeline | Ana thread uzerinden | MessageChannel direkt | %30 kopya azalma | Orta |
| 7 | GPU frustum culling (compute) | CPU traversal | WGSL compute shader | Sifir CPU overhead | Orta |
| 8 | IndexedDB cache | Her seferinde parse | Import sonucu onbellek | Tekrar yukleme ~0 | Dusuk |
| 9 | WASM BVH construction | JS'de senkron | Rust paralel + SIMD | 10x hiz, async | Yuksek |
| 10 | WASM mesh simplification | Yok | QEM algoritmasi | LOD uretimi 10x hiz | Yuksek |

**Toplam beklenen kazanim:** Kumulatif %60-80 iyilesme

### 4.3 Uzun Vadeli Stratejik Yatirimlar (3-9 Ay)

| # | Yatirim | Kazanim | Risk |
|---|---------|---------|------|
| 1 | WebGPU renderer gecisi (TSL) | Compute + render birlesmesi | Yuksek (20+ shader port) |
| 2 | GPU-driven rendering (indirect draw) | CPU overhead sifir | Orta |
| 3 | Meshlet-based LOD | Nanite benzeri surekli LOD | Yuksek |
| 4 | Dokum simulasyonu GPU (LBM + termal) | 50-100x hizlanma | Orta |
| 5 | OffscreenCanvas rendering | Ana thread serbest | Yuksek (UI event yonetimi) |
| 6 | WASM CSG boolean operations | Web'de gercek zamanli boolean | Yuksek |
| 7 | SharedArrayBuffer entegrasyonu | Sifir-kopya worker iletisimi | Orta (COOP/COEP) |
| 8 | ML surrogat simulasyon modeli | Anlik dokum tahmini | Cok Yuksek (veri gerekli) |

---

## 5. Konsolide Yol Haritasi

### 5.1 Master Plan Ozeti (5 Faz, 9 Ay)

```
FAZ 1: QUICK WINS (2 Hafta)
├── Frustum culling ON
├── Material atlasing
├── Render state sorting
├── LOD cross-fade
├── Shader warmup
├── WASM SIMD aktiflestime
└── three-mesh-bvh SAH upgrade
    Hedef: 1M tri'de 20-30 FPS -> 45+ FPS

FAZ 2: CORE UPGRADES (1 Ay)
├── FikoSecililer modulerize (~15 dosya)
├── WASM genisleme: BVH, mesh simp, SIMD
├── BatchedMesh entegrasyonu
├── Worker pipeline birlestirme + SAB
├── Progressive STEP loading
├── Mesh deduplication
└── IndexedDB cache
    Hedef: <2s ilk goruntuleme, <5ms secim

FAZ 3: GPU PIPELINE (2 Ay)
├── WebGPU renderer pilot (feature-flag)
├── GPU frustum + occlusion culling
├── GPU-driven indirect draw
├── Compute shader genisleme
├── TSL migration baslangic
└── 0-stall GPU picking
    Hedef: 60 FPS @ 1M tri, sifir CPU render overhead

FAZ 4: SIMULASYON (3 Ay)
├── LBM akis -> WebGPU compute
├── Termal simulasyon -> GPU
├── SPH-termal coupling
├── Niyama post-processing
├── Katilasma modeli (Scheil)
└── Besleyici optimizasyonu
    Hedef: Gercek zamanli dokum simulasyonu

FAZ 5: CILALAMA (1 Ay)
├── Otomatik benchmark suite (CI)
├── Profiling dashboard
├── 4 tarayici uyumluluk testi
├── Progressive loading UX
└── Bellek budget izleme
    Hedef: Uretim kalitesi, regresyon-sifir
```

### 5.2 Timeline (ASCII Gantt)

```
Ay:      Mar      Nis      May      Haz      Tem      Agu      Eyl      Eki      Kas
         |--------|--------|--------|--------|--------|--------|--------|--------|
FAZ 1:   [==]
FAZ 2:        [========]
FAZ 3:                    [================]
FAZ 4:                                      [========================]
FAZ 5:                                                                [========]
         |--------|--------|--------|--------|--------|--------|--------|--------|
WASM:    [SIMD][BVH+Simp][CSG.....][Threads.........][Dokum..........][Test....]
GPU:          [FrCull][Picker][WebGPU Pilot........][GPU-Driven......][TSL....]
Worker:       [Pool Merge][SAB....][Pipeline.........][OffscreenCanvas]
```

### 5.3 Bagimlilik Grafigi

```
Frustum ON ─────────────────────────────> (bagimsiz, hemen)
Material Atlas ─────────────────────────> (bagimsiz, hemen)
WASM SIMD ──────────> WASM Threads ───> WASM BVH ──> WASM CSG
three-mesh-bvh ─────> BVH Incremental
BatchedMesh ────────> GPU-Driven Rendering
FikoSecililer Split > GPU Picking Upgrade > Box/Lasso GPU
WebGPU Pilot ───────> TSL Migration ──> Meshlet LOD
Progressive Load ───> IndexedDB Cache
SAB Headers ────────> Worker Pipeline ──> OffscreenCanvas
SPH Mevcut ─────────> LBM GPU ─────────> Termal GPU ──> Coupling
```

### 5.4 Risk Analizi

| Risk | Olasilik | Etki | Azaltma Stratejisi |
|------|----------|------|-------------------|
| WebGPU tarayici fragmantasyonu | Orta | Yuksek | WebGL2 fallback her zaman koru |
| COOP/COEP header degisikligi | Yuksek | Orta | CDN/iframe audit yap, asamali deploy |
| FikoSecililer refactor regression | Orta | Yuksek | Kapsamli test suite once yaz |
| Three.js WebGPU API degisikligi | Orta | Orta | Abstraction layer, pin version |
| WASM binary boyut artisi | Dusuk | Dusuk | Code splitting, lazy loading |
| Dokum simulasyonu dogruluk | Yuksek | Yuksek | Gercek dokumhane verileriyle validasyon |
| Performans regresyonu | Orta | Yuksek | CI benchmark suite (Faz 5) |

---

## 6. Performans Hedefleri Tablosu

### 6.1 Islem Bazinda Mevcut vs Hedef

| Islem | Mevcut (JS) | Mevcut (WASM) | Hedef (WASM+SIMD+GPU) |
|-------|-------------|---------------|----------------------|
| Edge Selection | 15-20ms | <5ms | **<1ms** |
| Face Selection (GPU Pick) | 3-5ms | - | **<0.5ms** |
| STEP Import 10MB | 15-20s | 8-10s | **<3s** |
| STEP Import 50MB | 60s+ | 30s+ | **<10s** |
| Ilk Render 1M tri | 5-8s | - | **<2s** |
| BVH Build 500K tri | 400ms | - | **<40ms** |
| Mesh Simplification 1M | 3s | - | **<300ms** |
| Thickness Analysis 100K vtx | 300ms | 30ms | **<5ms** |
| Frustum Cull 1M obj | 50ms | 5ms | **<1ms (GPU)** |
| Termal Sim 128^3 grid | - | ~100ms | **<2ms (GPU)** |
| LBM Akis 256^2 2D | - | ~50ms | **<1ms (GPU)** |

### 6.2 Hizlandirma Katmanlari Karsilastirma

| Katman | Tipik Kazanim | Kullanim Alani | FikoYT Durumu |
|--------|--------------|----------------|---------------|
| **CPU (JS)** | 1x (baseline) | Fallback | Mevcut |
| **WASM (Rust)** | 10-50x | Geometri, parse | Mevcut (134 fn) |
| **WASM + SIMD** | 20-100x | Batch math | Flag mevcut, kod yok |
| **WASM + Threads** | 30-150x | Paralel parse | Header gerekli |
| **GPU Compute (WebGL2)** | 50-200x | Selection, culling | Kismi (SPH) |
| **GPU Compute (WebGPU)** | 100-500x | Simulasyon, BVH | SPH mevcut, CAD eksik |
| **GPU Rendering** | DC %80-95 azalma | Indirect draw | Deneysel |

### 6.3 Genel Performans Hedefleri

| Metrik | Mevcut | Faz 1 Sonrasi | Faz 3 Sonrasi | Faz 5 Sonrasi |
|--------|--------|--------------|--------------|--------------|
| FPS (1M tri) | 20-30 | 45+ | 60 | 60 stabil |
| FPS (100K tri) | 50-60 | 60 | 60 | 60 stabil |
| Secim suresi | <5ms | <3ms | <1ms | <0.5ms |
| Ilk render | 5-8s | 3-4s | <2s | <1.5s |
| JS Heap | Kontrolsuz | Budget izleme | <1GB | <800MB |
| GPU Bellek | Kontrolsuz | Dedup %30 azalma | <2GB | Budget-tabanli |
| Draw Call (1000 parca) | 1000+ | 300-500 | <100 | <50 |

---

## 7. Sonuc ve Oneriler

### 7.1 Stratejik Pozisyon

FikoYT, web tabanli CAD + dokum simulasyonu alaninda **benzersiz bir pazar pozisyonuna** sahiptir:

- Hicbir buyuk dokum simulasyon yaziliminin (MAGMA, ProCAST, FLOW-3D) web versiyonu yoktur
- Mevcut SPH/LBM/termal altyapisi, web'deki en kapsamli dokum simulasyon sistemidir
- 3 katmanli secim sistemi (WASM -> GPU -> CPU) endustri en iyi uygulamalariyla uyumludur
- Istemci-agirlikli WASM mimarisi, Shapr3D ve IFC.js ile ayni kategoridedir

### 7.2 Oncelikli Yatirim Alanlari

**Yuksek Etki / Dusuk Efor (Hemen):**
1. Frustum culling ON + WASM SIMD = 1 hafta icerisinde %30+ hiz
2. Material atlasing + render sorting = 3 gunde %20+ DC azalma
3. three-mesh-bvh upgrade = 1 gunde %30 BVH iyilesmesi

**Yuksek Etki / Orta Efor (1-3 Ay):**
1. FikoSecililer modularizasyon -- sureklilik ve test edilebilirlik icin kritik
2. Mesh deduplication -- buyuk montajlarda %30-80 bellek tasarrufu
3. Progressive STEP loading -- kullanici deneyiminde dramatik iyilesme
4. WASM Threads -- STEP parsing ve BVH build'de 1.5-3x hizlanma

**Yuksek Etki / Yuksek Efor (3-9 Ay):**
1. WebGPU renderer gecisi -- gelecek icin zorunlu yatirim
2. Dokum simulasyonu GPU -- 50-100x hizlanma, pazar farklilastirici
3. GPU-driven rendering -- 1M+ parca montaj desteigi

### 7.3 Basari Kriterleri

| Faz | Olculebilir Hedef | Deadline |
|-----|-------------------|----------|
| 1 | 1M tri'de 45+ FPS, sifir config degisiklik | Mart sonu |
| 2 | <2s ilk goruntuleme, <5ms secim, WASM 25K+ satir | Nisan sonu |
| 3 | 60 FPS @ 1M tri, WebGPU pilot calisiyor | Haziran sonu |
| 4 | Gercek zamanli termal sim, LBM GPU | Eylul sonu |
| 5 | CI benchmark, 4 tarayici uyumlu, regresyon sifir | Ekim sonu |

### 7.4 Dikkat Edilmesi Gerekenler

1. **WebGL2 fallback her zaman korunmali** -- WebGPU henuz evrensel degil
2. **COOP/COEP header degisikligi dikkatle planlanmali** -- iframe/CDN entegrasyonlarini bozabilir
3. **FikoSecililer refactor oncesi test suite yazilmali** -- 7451 satirlik dosyada regression riski yuksek
4. **Dokum simulasyonu gercek verilerle dogrulanmali** -- dogruluk kritik
5. **Binary boyut izlenmeli** -- WASM genislerken lazy loading kullanilmali

---

## EK A: Ajan Takimi Gorev ve Bulgu Ozeti

### Grup A - Sistem Inceleme (5 Ajan)

| Ajan | Gorev | Ana Bulgu |
|------|-------|-----------|
| A1 | 3D motor dosya envanteri | 120+ dosya, 76.500+ satir, 5 mega dosya (2000+ satir) |
| A2 | Secim sistemi + GPU pipeline | 3 katmanli pipeline (WASM->GPU->CPU), 1M+ edge hedefi asilebilir |
| A3 | WASM + Worker altyapisi | 134 export, 6.584 satir Rust, 6 worker tipi, SIMD/threads eksik |
| A4 | STEP import pipeline | occt-import-js -> worker -> stream chunks -> instanced render |
| A5 | Optimizasyon katmanlari | 38.339 satir performans kodu, frustum culling OFF, 6 LOD sistemi |

### Grup B - Web Arastirma (4 Ajan, B7 eksik)

| Ajan | Gorev | Ana Bulgu |
|------|-------|-----------|
| B6 | WebGPU CAD/CAM | Chrome/Edge stabil, compute production-ready, TSL gelisiyor |
| B8 | Dokum simulasyonu | Pazar boslugu: hicbir rakibin web versiyonu yok, FikoYT SPH/LBM altyapisi mevcut |
| B9 | Three.js r177+ | BatchedMesh, WebGPURenderer, TSL, compute nodes -- asamali gecis onerisi |
| B10 | Endustri CAD viewer'lar | SVF2 mesh dedup %86, HOOPS progressive loading, fragment rendering |

### Grup C - Performans Arastirma (5 Ajan)

| Ajan | Gorev | Ana Bulgu |
|------|-------|-----------|
| C11 | WASM SIMD/Threading | SIMD %96 destek, 2-4x hiz; Threads COOP/COEP gerekli, 1.5-3x hiz |
| C12 | OffscreenCanvas/SAB | Worker rendering %30+ FPS artisi, SAB zero-copy, COOP/COEP zorunlu |
| C13 | GPU compute web'de | Compute shader 50-500x hiz, LBVH GPU build, meshlet rendering |
| C14 | Bellek yonetimi/GC | Object pooling, ResourceTracker, dispose audit, adaptive quality |
| C15 | Worker mimarileri | Comlink RPC, worker-to-worker pipeline, OffscreenCanvas en buyuk potansiyel |

### Grup D - Plan Olusturma (5 Ajan)

| Ajan | Gorev | Olusturulan Plan |
|------|-------|------------------|
| D16 | Rendering pipeline | 3 faz, 10 madde, %80-95 kumulatif iyilesme hedefi |
| D17 | Secim sistemi upgrade | 5 faz, FikoSecililer ~15 module ayirma, highlight pool |
| D18 | WASM hizlandirma | 6 faz, SIMD->Threads->BVH->CSG->Dokum->CI/CD, 21-33 hafta |
| D19 | GPU compute entegrasyon | 6 faz, WebGL2 quick wins -> WebGPU -> GPU-driven, 20+ hafta |
| D20 | Master mimari plan | 5 faz, 9 ay, 537 dosya analizi, 8 darbogazda tespit |

---

## EK B: Kritik Dosya Yollari

### Motor Cekirdegi
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/FikoSecililer.ts` (7451 satir)
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/FikoImporter.STP.ts` (2000+ satir)
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/FikoCizimYalin.ts` (2000+ satir)
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/FikoOlcumCizgisi.ts` (2000+ satir)

### Performans
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/fiko-performance/` (55+ dosya)
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/fiko-performance/FikoAdvancedLOD.ts`
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/fiko-performance/FikoGPUComputeUltra.ts`
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/fiko-performance/FikoWasmBridge.ts` (2833 satir)
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/fiko-performance/FikoMemoryPooling.ts`

### GPU Compute
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/fiko-performance/FikoGPUSelection.ts`
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/fiko-performance/FikoGPUPicker.ts`
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/fiko-performance/FikoRaycastBVH.ts`
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/fiko-performance/FikoWebGPURaycast.ts`

### WASM
- `fikoyt-wasm/src/lib.rs` (ana modul, 62K+ token)
- `fikoyt-wasm/src/dokum/` (LBM, termal, niyama)
- `fikoyt-wasm/Cargo.toml`

### SPH/Simulasyon
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/fiko-sph-sivi/` (41 dosya)
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/fiko-sph-sivi/gpu/FikoSPHGPUHesap.ts`

### Worker'lar
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/stp-occt.worker.ts`
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/stp-processor.worker.ts`
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/fiko-performance/bvh-builder.worker.ts`
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/fiko-geometry.comlink-worker.ts`
- `src/service/fikoyt-ui/src/lib/fiko-three-js/IFikoThreeJS/fiko-performance/FikoWorkerPool.ts`

---

## EK C: Teknoloji Karar Matrisi

| Karar | Secenekler | Oneri | Gerekce |
|-------|-----------|-------|---------|
| Renderer | WebGL2 / WebGPU / Hibrit | **Hibrit (feature-flag)** | WebGPU henuz evrensel degil |
| WASM Build | wasm-pack / wasm-bindgen-cli | **wasm-bindgen-cli** | Daha fazla kontrol, mevcut setup |
| Worker Pool | Ozel / Comlink / workerpool | **Mevcut ozel pool + MessageChannel** | Zaten optimize, Comlink overhead |
| LOD | Meshlet / Continuous / Discrete | **Discrete + cross-fade (simdilik)** | Meshlet uzun vadede |
| BVH | three-mesh-bvh / Ozel WASM | **three-mesh-bvh + WASM builder** | SAH + serialization, parallel build |
| Compression | Draco / meshopt / KTX2 | **meshopt (geometri) + KTX2 (texture)** | Three.js native destek |
| Simulasyon | CPU WASM / GPU Compute | **GPU Compute (WebGPU)** | 50-100x hizlanma, SPH altyapisi hazir |
| Cache | Memory / IndexedDB / Service Worker | **IndexedDB (import cache)** | Buyuk STEP dosyalari icin persist |

---

*Bu rapor, 20 ajan takiminin (5 sistem inceleme, 4 web arastirma, 5 performans arastirma, 5 plan olusturma + 1 eksik B7) bulgularinin sentezlenmesiyle hazirlanmistir. Detayli alt planlar icin ilgili plan dosyalarina bakiniz.*
