"매 three.js mesh 의 BVH (Bounding Volume Hierarchy) 가속 구조". 매 raycasting / intersection / nearest-point query 를 O(N) → O(log N) 으로 — 매 100k+ triangle scene 에서 60fps raycast 가능. 2026 v0.7+ 가 GPU BVH (MeshBVHUniformStruct) 와 WebGPU 지원.
매 핵심
매 동작 원리
Mesh geometry 의 triangle 들을 spatial 계층 (AABB 또는 OBB) 으로 분할.
Built-in Mesh.raycast 를 BVH-aware version 으로 monkey-patch (acceleratedRaycast).
Build 옵션: CENTER (fast), AVERAGE (balanced), SAH (Surface Area Heuristic, best query).
언제: 매 large mesh raycast / proximity query 가 hot path 일 때 — 특히 VR / CAD / gen AI scene.
언제 X: 매 simple sphere/box collision — manual primitive check 가 빠름.
❌ 안티패턴
매 frame full rebuild: refit() 사용.
CENTER strategy 로 build 시간 절약: query 가 2-3x 느려짐. SAH 의 build cost 는 1회.
BVH dispose 안 함: geometry 교체 시 leak — geometry.disposeBoundsTree().
shapecast 의 intersectsBounds false positive 무시: triangle 까지 끝까지 traverse — feedback 손실.