[G1-Sync] Manual knowledge update
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-1189F7
|
||||
id: [[P-Reinforce]]-AUTO-1189F7
|
||||
category: "10_Wiki/💡 Topics/Graphics & Performance"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
@@ -10,7 +10,7 @@ github_commit: "[P-Reinforce] Continuous Worker - SkinnedMesh"
|
||||
# [[SkinnedMesh]]
|
||||
|
||||
## 📌 한 줄 통찰 (The Karpathy Summary)
|
||||
> SkinnedMesh는 뼈대(Bone) 계층 구조를 기반으로 한 애니메이션(예: 캐릭터의 얼굴 뼈대나 손가락 움직임 등)을 구현할 때 사용되는 3D 객체 타입입니다 [1-3]. 단일 객체로는 원활하게 동작하지만 대량으로 렌더링할 경우 심각한 CPU 병목 현상을 유발하며 [4], 정점이 다수의 본 행렬에 영향을 받는 특성상 대규모 렌더링 최적화 기법인 InstancedMesh와 기본적으로 호환되지 않는 물리적 한계를 지닙니다 [3].
|
||||
> SkinnedMesh는 뼈대(Bone) 계층 구조를 기반으로 한 애니메이션(예: 캐릭터의 얼굴 뼈대나 손가락 움직임 등)을 구현할 때 사용되는 3D 객체 타입입니다 [1-3]. 단일 객체로는 원활하게 동작하지만 대량으로 렌더링할 경우 심각한 CPU 병목 현상을 유발하며 [4], 정점이 다수의 본 행렬에 영향을 받는 특성상 대규모 렌더링 최적화 기법인 [[InstancedMesh]]와 기본적으로 호환되지 않는 물리적 한계를 지닙니다 [3].
|
||||
|
||||
## 📖 구조화된 지식 (Synthesized Content)
|
||||
- **동작 원리와 성능 병목:**
|
||||
@@ -25,7 +25,7 @@ github_commit: "[P-Reinforce] Continuous Worker - SkinnedMesh"
|
||||
- **스킨드 메쉬 렌더링 최적화 전략:**
|
||||
- **본 텍스처(Bone Texture) 도입:** GPU 전송 한계를 극복하기 위해 모든 애니메이션 변환 행렬 데이터를 '본 텍스처(Bone Texture)' 또는 텍스처 아틀라스에 구워 넣고, 커스텀 셰이더 단계에서 이를 샘플링해 애니메이션을 구현하는 우회 파이프라인이 사용됩니다 [1, 3, 5].
|
||||
- **애니메이션 LOD(Level of Detail):** 거리가 먼 SkinnedMesh 인스턴스의 경우 계산해야 할 본의 개수를 줄이거나(예: 손가락이나 발의 굽힘 뼈대 연산 생략), 애니메이션 업데이트 주기를 낮추어 본 텍스처의 크기와 연산량을 줄이는 방식이 필수적입니다 [6-9].
|
||||
- **커스텀 라이브러리 활용:** 커뮤니티에서는 기본 기능의 한계를 보완하기 위해, 개별 애니메이션 믹서 제어, LOD 시스템, 그리고 절두체 컬링(Frustum Culling) 기능을 포함하여 2만 개 이상의 스킨드 인스턴스 처리를 가능하게 하는 `InstancedMesh2`와 같은 확장 라이브러리를 활용하기도 합니다 [6, 10-13].
|
||||
- **커스텀 라이브러리 활용:** 커뮤니티에서는 기본 기능의 한계를 보완하기 위해, 개별 애니메이션 믹서 제어, LOD 시스템, 그리고 절두체 컬링([[Frustum Culling]]) 기능을 포함하여 2만 개 이상의 스킨드 인스턴스 처리를 가능하게 하는 `[[InstancedMesh2]]`와 같은 확장 라이브러리를 활용하기도 합니다 [6, 10-13].
|
||||
|
||||
## ⚠️ 모순 및 업데이트 (Contradictions & RL Update)
|
||||
- **과거 데이터와의 충돌:** 자동화 엔진에 의해 매핑된 지식으로, 추후 정밀 검증 필요.
|
||||
|
||||
Reference in New Issue
Block a user