Files
2nd/10_Wiki/Topics/Revit glTF Export.md
T
2026-05-02 23:33:34 +09:00

3.1 KiB


id: P-Reinforce-AUTO-E2D208 category: Unified confidence_score: 0.90 tags: [auto-reinforced] last_reinforced: 2026-04-20 github_commit: "[P-Reinforce] Continuous Worker - Revit glTF Export"

Revit glTF Export

📌 한 줄 통찰 (The Karpathy Summary)

Revit glTF Export는 Revit에서 작성된 건축 및 건물 모델을 웹 3D 환경에서 효율적으로 렌더링하기 위해 glTF 형식으로 내보내는 과정입니다 [1, 2]. 이 과정에서는 성능 최적화를 위해 동일한 재질을 가진 메쉬를 병합하는 동시에, 병합된 모델 내에서도 개별 객체를 식별하고 제어하기 위해 특수한 glTF 확장 기능과 정점 데이터 속성을 함께 활용합니다 [3, 4].

📖 구조화된 지식 (Synthesized Content)

  • 재질 기반의 메쉬 병합: Revit 모델(예: 콘크리트 벽체 등)을 glTF로 내보낼 때, 드로우 콜을 줄이고 렌더링을 최적화하기 위해 동일한 재질을 공유하는 메쉬들을 그룹화합니다 [1, 3]. 건물의 벽체들은 재질은 같지만 기하학적 형태가 대부분 고유하기 때문에 일반적인 [[InstancedMesh|InstancedMesh]]로는 처리할 수 없어 데이터를 병합(Merge)하거나 BatchedMesh를 통해 관리하게 됩니다 [4].
  • glTF 확장 기능(Extensions)의 적용: 기하학적 데이터를 하나로 병합한 후에도, 사용자가 특정 벽체를 개별적으로 선택(Pick)하거나 가시성(Visibility) 및 색상을 동적으로 변경할 수 있어야 합니다 [4]. 이를 구현하기 위해 모델을 내보낼 때 EXT_instance_features, EXT_mesh_features, EXT_mesh_gpu_[[Instancing|Instancing]]과 같은 glTF 확장 기능을 추가하여 데이터를 구성합니다 [3].
  • 정점 식별 속성(Feature ID) 할당: 병합된 모델 내에서 서로 다른 배치를 구분하기 위해 각 정점(Vertex)에 _FEATURE_ID_0과 같은 특수 속성을 할당합니다. 렌더러(Three.js 등)는 모델을 로드할 때 이 속성을 파싱하여, 단일 객체로 병합된 상태에서도 내부의 서로 다른 기하학적 파트를 식별하고 개별적인 제어를 수행할 수 있습니다 [3, 5].

⚠️ 모순 및 업데이트 (Contradictions & RL Update)

  • 과거 데이터와의 충돌: 자동화 엔진에 의해 매핑된 지식으로, 추후 정밀 검증 필요.
  • 정책 변화: Graphics & Performance 분야의 자동 자산화 수행.

🔗 지식 연결 (Graph)

  • Related Topics: BatchedMesh, glTF Extensions, Three.js
  • Projects/Contexts: 건축 및 BIM(Building Information Modeling) 3D 뷰어 구현
  • Contradictions/Notes: Revit에서 내보낸 1,200만 개 이상의 삼각형과 1,600만 개 이상의 정점을 포함하는 거대한 glTF 모델을 다룰 때, 개별 객체 제어를 위해 BatchedMesh를 사용하면 단순히 병합된 일반 Mesh로 렌더링할 때보다 오히려 CPU 사용량이 40~60%까지 급증하고 프레임 속도(FPS)가 급격히 떨어지는 성능 저하 현상이 보고되고 있습니다 [1, 2, 6, 7].

Last updated: 2026-04-19