[G1-Sync] Manual knowledge update

This commit is contained in:
Antigravity Agent
2026-04-30 22:42:02 +09:00
parent 0bd4f19e38
commit c36c0644a1
4888 changed files with 18470 additions and 18602 deletions
@@ -1,5 +1,5 @@
---
id: P-REINFORCE-AUTO-EC4298
id: [[P-Reinforce]]-AUTO-EC4298
category: "10_Wiki/💡 Topics/Graphics & Performance"
confidence_score: 0.90
tags: [auto-reinforced]
@@ -15,8 +15,8 @@ github_commit: "[P-Reinforce] Continuous Worker - Revit 모델 렌더링"
## 📖 구조화된 지식 (Synthesized Content)
소스에 관련 정보가 부족합니다. 제공된 문서 내에서 확인할 수 있는 단편적인 Revit 모델 렌더링 시도 및 사례는 다음과 같습니다.
* **glTF 포맷 변환 및 데이터 구조화:** 한 사용자는 Revit에서 제작된 건물 모델을 glTF 형식으로 추출하고, Three.js 환경에서 가시성을 관리하기 위해 동일한 재질을 가진 메쉬들을 병합하는 방식을 사용했습니다 [1, 2]. 이 과정에서 객체의 배치를 구분하기 위해 `EXT_instance_features`, `EXT_mesh_features`, `EXT_mesh_gpu_instancing` 등의 확장을 추가하고, 각 정점에 `_FEATURE_ID_0` 속성을 할당하여 파싱하는 과정을 거쳤습니다 [3, 4].
* **고유 지오메트리에 따른 렌더링 방식의 제약:** Revit 건물 모델 내의 벽체들은 콘크리트라는 동일한 재질을 공유하지만, 각기 고유한 기하학적 형태(Geometry)를 가지고 있어 단일 형태를 복제하는 `InstancedMesh`를 적용하기 어려웠습니다 [5]. 따라서 개별 벽체를 선택(Picking)하거나 가시성 및 색상을 동적으로 변경하기 위한 목적으로, 다양한 지오메트리를 하나로 묶을 수 있는 `BatchedMesh`를 채택해야만 했습니다 [5].
* **glTF 포맷 변환 및 데이터 구조화:** 한 사용자는 Revit에서 제작된 건물 모델을 glTF 형식으로 추출하고, Three.js 환경에서 가시성을 관리하기 위해 동일한 재질을 가진 메쉬들을 병합하는 방식을 사용했습니다 [1, 2]. 이 과정에서 객체의 배치를 구분하기 위해 `EXT_instance_features`, `EXT_mesh_features`, `EXT_mesh_gpu_[[Instancing]]` 등의 확장을 추가하고, 각 정점에 `_FEATURE_ID_0` 속성을 할당하여 파싱하는 과정을 거쳤습니다 [3, 4].
* **고유 지오메트리에 따른 렌더링 방식의 제약:** Revit 건물 모델 내의 벽체들은 콘크리트라는 동일한 재질을 공유하지만, 각기 고유한 기하학적 형태(Geometry)를 가지고 있어 단일 형태를 복제하는 `[[InstancedMesh]]`를 적용하기 어려웠습니다 [5]. 따라서 개별 벽체를 선택(Picking)하거나 가시성 및 색상을 동적으로 변경하기 위한 목적으로, 다양한 지오메트리를 하나로 묶을 수 있는 `BatchedMesh`를 채택해야만 했습니다 [5].
* **대규모 모델에서의 성능 병목 문제:** 약 1,200만 개의 삼각형과 1,600만 개의 정점, 약 10만 개 이상의 지오메트리로 구성된 대규모 Revit 모델을 `BatchedMesh`를 활용해 렌더링할 경우 심각한 성능 저하가 보고되었습니다 [6, 7]. 일반적인 `Mesh`로 렌더링할 때는 60 FPS(CPU 15%, GPU 90%)가 유지되었으나, `BatchedMesh` 적용 시 CPU 사용량이 40% 이상으로 급증하며 프레임 레이트가 10~20 FPS 수준으로 크게 하락했습니다 [1, 8, 9].
## ⚠️ 모순 및 업데이트 (Contradictions & RL Update)