Files
game_engine/docs/DEFERRED.md
tolelom 622c91a954 docs: update STATUS.md and DEFERRED.md with all completed deferred items
Test count: 255 → 485. Major additions across all crates:
- Renderer: JPG, glTF, ORM/Emissive, CSM, Point/Spot Shadow, Frustum Culling, SH, GPU BRDF
- ECS: JSON/Binary scene, ComponentRegistry, query filters, scheduler
- Physics: Angular dynamics, Sequential Impulse, Sleep, CCD, BVH refit, ray/triangle
- Asset: Async loader, FileWatcher, hot reload
- Audio: OGG/Vorbis, 24/32-bit WAV, Doppler
- AI: NavMesh builder, Funnel, obstacle avoidance
- Net: Reliability, snapshots, interpolation
- Script: Table interop, coroutines, sandbox, hot reload
- Editor: Text input, scroll, drag & drop

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 07:38:37 +09:00

161 lines
6.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 미뤄진/간소화된 구현 항목
## Phase 2
- ~~**PNG 디코더 자체 구현**~~ ✅ 완료.
- ~~**JPG 디코더 자체 구현**~~ ✅ Baseline JPEG 완료.
- ~~**glTF 파서**~~ ✅ glTF 2.0 / GLB 완료.
- **JPG Progressive** — Baseline만 지원. Progressive JPEG 미구현.
- **glTF 애니메이션/스킨** — 메시+머티리얼만 지원.
## Phase 3a
- **Archetype 기반 스토리지** → SparseSet 사용 중. 대규모 씬에서 성능 이슈 시 전환.
- ~~**시스템 스케줄러**~~ ✅ 순서 기반 Scheduler 완료.
- ~~**쿼리 필터**~~ ✅ With/Without 완료.
- ~~**query3+**~~ ✅ query3, query4 완료.
- **Changed 필터** — 컴포넌트 변경 감지 미구현.
- **의존성 기반 스케줄러** — 읽기/쓰기 의존성 자동 정렬/병렬 실행 미구현.
## Phase 3b
- ~~**JSON 직렬화**~~ ✅ serialize_scene_json/deserialize_scene_json 완료.
- ~~**바이너리 씬 포맷**~~ ✅ VSCN 바이너리 포맷 완료.
- ~~**임의 컴포넌트 직렬화**~~ ✅ ComponentRegistry 등록 기반 완료.
## Phase 3c
- ~~**비동기 로딩**~~ ✅ AssetLoader (워커 스레드) 완료.
- ~~**핫 리로드**~~ ✅ FileWatcher (mtime 폴링) + replace_in_place 완료.
## Phase 4a
- ~~**Metallic/Roughness/AO 텍스처 맵**~~ ✅ ORM 텍스처 샘플링 완료.
- ~~**Emissive 맵**~~ ✅ Emissive 텍스처 + 셰이더 완료.
## Phase 4b
- ~~**CSM (Cascaded Shadow Maps)**~~ ✅ 2-캐스케이드 CSM 완료.
- ~~**Point Light Shadow (큐브맵)**~~ ✅ 큐브맵 depth + 6면 렌더링 완료.
- ~~**Spot Light Shadow**~~ ✅ Perspective shadow map 완료.
- ~~**라이트 컬링**~~ ✅ CPU 프러스텀 컬링 완료.
## Phase 4c
- ~~**HDR 큐브맵 환경맵**~~ → 프로시저럴 Hosek-Wilkie sky로 대체 완료.
- ~~**Irradiance/Prefiltered Map 컨볼루션**~~ ✅ SH Irradiance (L2, 9계수) 완료.
- ~~**GPU 컴퓨트 BRDF LUT**~~ ✅ 컴퓨트 셰이더 Rg16Float 완료.
## Phase 5-1
- ~~**Capsule, Convex Hull 콜라이더**~~ ✅ Capsule + GJK/EPA 완료. **Convex Hull 미구현.**
- ~~**OBB (회전된 박스) 충돌**~~ ✅ GJK/EPA로 대체 완료.
- ~~**Incremental BVH 업데이트**~~ ✅ refit() 완료.
- ~~**연속 충돌 감지 (CCD)**~~ ✅ swept_sphere_vs_aabb 완료.
## Phase 5-2
- ~~**각속도/회전 물리**~~ ✅ 관성 텐서 + angular velocity 적분 완료.
- ~~**마찰 (Coulomb)**~~ ✅ 완료.
- ~~**Sequential Impulse 솔버**~~ ✅ N회 반복 솔버 완료.
- ~~**Sleep/Island 시스템**~~ ✅ velocity threshold + timer 완료.
## Phase 5-3
- ~~**Ray vs Triangle**~~ ✅ MöllerTrumbore 완료.
- **Ray vs Plane, Mesh** — 삼각형 단위만 지원. 전체 메시 순회 레이캐스트 미구현.
- ~~**raycast_all (다중 hit)**~~ ✅ 거리순 정렬 완료.
- ~~**BVH 조기 종료 최적화**~~ ✅ 재귀 트리 순회 + query_ray 완료.
## Phase 6-1
- **macOS/Linux 백엔드** — WASAPI(Windows)만 구현.
- ~~**OGG/Vorbis 디코더**~~ ✅ OGG 컨테이너 + Vorbis 디코더 완료.
- ~~**24-bit/32-bit WAV**~~ ✅ 완료.
- **ECS 통합** — AudioSource 컴포넌트 미구현.
- **비동기 로딩** — 동기 로딩만.
## Phase 6-2
- ~~**도플러 효과**~~ ✅ doppler_shift 완료.
- **HRTF** — 미구현.
- **Reverb/Echo** — 미구현.
- **Occlusion** — 미구현.
## Phase 6-3
- **동적 그룹 생성** — 고정 4개만.
- **그룹 간 라우팅/버스** — 미구현.
- **이펙트 체인** — Reverb, EQ 등 미구현.
- **비선형 페이드 커브** — 선형 페이드만.
## Phase 7-1
- **투명 오브젝트** — 디퍼드에서 처리 불가. 별도 포워드 패스 필요.
- **G-Buffer 압축** — 미적용.
- **Light Volumes** — 풀스크린 라이팅만.
- **Stencil 최적화** — 미구현.
## Phase 7-2
- **Bilateral Blur** — SSGI 노이즈 제거 블러 미구현.
- **반해상도 렌더링** — 풀 해상도 SSGI.
- **Temporal Accumulation** — 미구현.
- **Light Probes** — 미구현.
## Phase 7-3
- **RT Reflections** — 미구현.
- **RT AO** — 미구현.
- **Point/Spot Light RT shadows** — Directional만 구현.
- **Soft RT shadows** — 단일 ray만.
- **BLAS 업데이트** — 정적 지오메트리만.
- **Fallback** — RT 미지원 GPU 폴백 미구현.
## Phase 7-4
- **TAA** — 미구현.
- **SSR** — 미구현.
- **Motion Blur, DOF** — 미구현.
- **Auto Exposure** — 고정 exposure만.
- **Bilateral Bloom Blur** — 단순 tent filter.
## Phase 8-1
- ~~**자동 내비메시 생성**~~ ✅ 복셀화 기반 NavMeshBuilder 완료.
- ~~**String Pulling (Funnel)**~~ ✅ SSF 알고리즘 완료.
- ~~**동적 장애물 회피**~~ ✅ velocity obstacle 기반 완료.
- **ECS 통합** — AI 컴포넌트 미구현.
- **내비메시 직렬화** — 미구현.
## Phase 8-2
- ~~**상태 동기화 (스냅샷)**~~ ✅ Snapshot + delta 압축 완료.
- ~~**보간 / 예측**~~ ✅ InterpolationBuffer 완료.
- **지연 보상** — 미구현.
- ~~**신뢰성 계층**~~ ✅ ReliableChannel + OrderedChannel 완료.
- **암호화 / 인증** — 미구현.
## Phase 8-3
- ~~**핫 리로드**~~ ✅ reload_file 완료.
- ~~**엔진 API 노출**~~ ✅ 기본 API (spawn, position, entity_count, velocity, rotation, scale, destroy, find_by_tag) 완료.
- ~~**Lua 테이블 ↔ Rust 구조체**~~ ✅ push_table/read_table/push_vec3/read_vec3 완료.
- ~~**코루틴**~~ ✅ LuaCoroutine (create/resume/is_finished) 완료.
- ~~**샌드박싱**~~ ✅ os/io/loadfile/dofile/require 차단 완료.
## Phase 8-4
- **씬 뷰포트** — 3D 렌더러 임베드 미구현.
- **엔티티 인스펙터** — ECS 컴포넌트 편집 미구현.
- **에셋 브라우저** — 파일 시스템 탐색 미구현.
- ~~**텍스트 입력**~~ ✅ text_input 위젯 완료.
- ~~**스크롤, 드래그앤드롭**~~ ✅ scroll_panel + drag/drop 완료.
- **도킹, 탭, 윈도우 드래그** — 미구현.
- **TTF 폰트** — 비트맵 고정폭만.
## 렌더링 한계
- **per-entity dynamic UBO** — 수천 개 이상은 인스턴싱 필요.
- **max_bind_groups=4** — 리소스 합치기로 해결 중.