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는 WebGL 및 WebGPU를 사용하여 웹 브라우저에서 애니메이션 3D 컴퓨터 그래픽스를 생성하고 표시할 수 있도록 지원하는 크로스 브라우저 자바스크립트 라이브러리이자 API이다 [1, 2]. 브라우저, GPU, 자바스크립트 간의 복잡한 상호작용을 추상화하여 개발자가 고성능의 3D 환경을 쉽게 구축할 수 있도록 돕는다 [3]. 2026년을 기점으로 프로덕션 수준의 WebGPU 렌더러와 TSL(Three Shader Language)이 도입되면서, 단순한 시각화를 넘어 수백만 개의 파티클 연산이나 대규모 CAD 모델 처리까지 가능한 고성능 플랫폼으로 진화했다 [4-7].
|
||||
@@ -17,8 +17,8 @@ Three.js는 WebGL 및 WebGPU를 사용하여 웹 브라우저에서 애니메이
|
||||
사용자의 마우스나 터치 입력을 통한 화면 상의 3D 객체 선택(피킹)은 `Raycaster` 객체를 통해 수행된다 [35, 36]. 하지만 `InstancedMesh`에서 개별 인스턴스의 행렬(위치/회전/축척)을 동적으로 변경할 경우, 레이캐스팅이 정상 작동하려면 변경 직후 반드시 `.computeBoundingSphere()` 및 `.computeBoundingBox()`를 호출하여 바운딩 볼륨을 갱신해야 한다 [37, 38]. 다량의 인스턴스가 존재하는 환경에서 충돌 및 선택의 속도를 높이려면 `three-mesh-bvh` 같은 공간 분할(Spatial Indexing) 라이브러리를 활용하는 것이 권장된다 [39, 40].
|
||||
|
||||
## 🔗 Knowledge Connections
|
||||
- **Related Topics:** [[WebGPU]], [[InstancedMesh]], [[BatchedMesh]], [[TSL (Three Shader Language)]], [[Raycaster]], [[LOD (Level of Detail)]]
|
||||
- **Projects/Contexts:** [[React Three Fiber (R3F)]], [[IFC.js]], [[InstancedMesh2]]
|
||||
- **Related Topics:** [[WebGPU|WebGPU]], [[InstancedMesh|InstancedMesh]], [[BatchedMesh|BatchedMesh]], [[TSL (Three Shader Language)|TSL (Three Shader Language)]], [[Raycaster|Raycaster]], [[가변적 LOD(Level of Detail) 시스템|LOD (Level of Detail)]]
|
||||
- **Projects/Contexts:** [[React Three Fiber (R3F)|React Three Fiber (R3F)]], [[IFC.js|IFC.js]], [[InstancedMesh2|InstancedMesh2]]
|
||||
- **Contradictions/Notes:** 일반적으로 `InstancedMesh`는 드로우 콜을 1회로 줄여 렌더링 성능을 획기적으로 높인다고 알려져 있으나, 인스턴스의 자동 정렬 기능이 없어 오버드로우(Overdraw)가 빈번하게 발생할 경우 단일 메쉬를 분할하여 그릴 때보다 오히려 프레임 속도(FPS)가 급락할 수 있습니다 [4, 31-33]. 또한 여러 다른 지오메트리를 하나의 렌더 호출로 묶어주는 `BatchedMesh` 역시, 지나치게 많은 수의 정점과 데이터를 렌더링할 경우 패킹 및 컬링 연산 때문에 극심한 CPU 과부하와 성능 저하를 야기할 수 있다는 한계가 보고되고 있습니다 [41, 42].
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user