docs: finalized wiki integrity maintenance (v3.0 standard) - pruned 1400+ stubs and fixed 11k+ ghost links
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
# [[Three.js 성능 최적화]]
|
||||
# [[Three.js 성능 최적화|Three.js 성능 최적화]]
|
||||
|
||||
## 📌 Brief Summary
|
||||
Three.js 성능 최적화는 CPU와 GPU 간의 통신 병목 현상을 유발하는 드로우 콜(Draw Call)을 줄이고 렌더링 파이프라인의 효율을 극대화하여 높은 프레임 속도를 유지하는 과정이다 [1-3]. 주로 `InstancedMesh` 및 `BatchedMesh`를 활용한 인스턴싱/배칭 기법, 텍스처와 지오메트리 압축, 프러스텀 컬링(Frustum Culling) 및 LOD(Level of Detail) 기법이 핵심적으로 사용된다 [4-9]. 최근에는 WebGL의 구조적 한계를 극복하기 위해 WebGPU와 컴퓨트 셰이더를 기반으로 한 GPU 주도 렌더링(GPU-driven Rendering) 기술로 발전하고 있다 [10, 11].
|
||||
@@ -27,8 +27,8 @@ Three.js 성능 최적화는 CPU와 GPU 간의 통신 병목 현상을 유발하
|
||||
* 컴퓨트 셰이더를 활용하면 CPU에서 처리하던 충돌 감지, 지형 생성, 수백만 개의 파티클 업데이트 및 컬링을 GPU에서 병렬로 직접 수행할 수 있어 극적인 성능 향상을 이룰 수 있다 [35-37].
|
||||
|
||||
## 🔗 Knowledge Connections
|
||||
- **Related Topics:** [[InstancedMesh]], [[BatchedMesh]], [[WebGPU]], [[드로우 콜 (Draw Call)]], [[LOD (Level of Detail)]]
|
||||
- **Projects/Contexts:** [[Utsubo의 WebGPU 도입 (Segments.ai 등)]], [[InstancedMesh2 라이브러리]], [[Three.js r171 WebGPURenderer]]
|
||||
- **Related Topics:** [[InstancedMesh|InstancedMesh]], [[BatchedMesh|BatchedMesh]], [[WebGPU|WebGPU]], 드로우 콜 (Draw Call), [[가변적 LOD(Level of Detail) 시스템|LOD (Level of Detail)]]
|
||||
- **Projects/Contexts:** Utsubo의 WebGPU 도입 (Segments.ai 등), InstancedMesh2 라이브러리, Three.js r171 WebGPURenderer
|
||||
- **Contradictions/Notes:** 드로우 콜을 줄이기 위해 `InstancedMesh`나 `BatchedMesh`를 도입하더라도 항상 성능이 향상되는 것은 아니다. `InstancedMesh`는 개별 컬링의 부재와 오버드로우로 인해 오히려 개별 렌더링보다 GPU FPS를 떨어뜨릴 수 있다는 점이 지적된다 [27, 30, 38]. 또한 `BatchedMesh`의 경우에도 천만 개 이상의 많은 폴리곤과 지오메트리를 처리할 때는 내부적인 다중 그리기(multi-draw) 버퍼 업로드 및 패킹 오버헤드로 인해 CPU 점유율이 40~60%까지 치솟고 프레임이 급감하는 현상이 보고되어, 상황에 따른 벤치마킹이 필수적이다 [39-43].
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user