제 경험상 AI로 생성된 3D 모델을 게임 엔진으로 성공적으로 임포트하는 것은 생성 자체보다 내보내기 전의 엄격한 유효성 검사와 형식 선택에 달려 있습니다. 저는 체계적인 체크리스트를 내보내기 전에 적용하면 Unity와 Unreal Engine에서 발생하는 임포트 문제의 대부분을 예방할 수 있다는 것을 알게 되었습니다. 이 가이드는 AI 생성부터 엔진 준비된 애셋까지 신뢰할 수 있는 파이프라인을 구축하여 잠재적으로 혼란스러운 프로세스를 예측 가능한 프로세스로 바꾸고자 하는 3D 아티스트, 기술 아티스트 및 인디 개발자를 위한 것입니다.
주요 내용:
저는 이 핵심 체크리스트를 거치지 않고는 모델을 내보내지 않습니다. 이 체크리스트는 엔진 임포트를 방해할 수 있는 문제의 90%를 포착합니다.
가장 먼저 하는 일은 항상 메쉬에 대한 시각적 및 분석적 검사입니다. AI 생성기는 비다양체 지오메트리(non-manifold geometry), 내부 면, 떠다니는 정점(stray vertices)을 생성하여 셰이딩 오류나 임포트 실패를 유발할 수 있습니다. 저는 구멍, 뒤집힌 노멀, 평평한 영역의 불균형적으로 밀도가 높거나 지저분한 토폴로지를 확인합니다.
제 워크플로우에서는 뷰포트 셰이딩을 사용하여 면 노멀을 확인하고, 가능한 경우 "3D 프린트" 또는 "솔리디파이" 검사를 실행합니다. 애니메이션 준비된 모델의 경우, 조인트와 같은 변형 영역 주변의 엣지 흐름에 특별히 주의를 기울입니다. AI 도구에서 생성된 깨끗한 베이스 메쉬는 필수적입니다.
빠른 토폴로지 확인:
AI가 생성한 UV는 혼란스러울 수 있습니다. 겹치는 쉘, 과도한 텍셀 밀도 변화, 메쉬의 특정 부분에 대한 누락된 UV가 흔합니다. 저는 항상 UV 에디터를 열어 모든 쉘이 0-1 공간 내에 겹치지 않도록 배치되었는지 확인합니다. 이는 텍스처 손상을 방지하는 데 매우 중요합니다.
그런 다음 재질 할당을 검토합니다. 모델이 여러 재질을 올바르게 사용하는가? Tripo AI와 같은 도구에서는 자동 세그먼트화 및 재질 할당이 텍스처링 워크플로우에 논리적으로 적합한지 확인한 후 진행합니다. 간단한 소품의 경우 단일 통합 재질이 관리하기 더 쉬운 경우가 많습니다.
이것은 "내 모델이 어디 있지?" 문제의 가장 빈번한 원인입니다. AI 모델은 종종 임의의 실제 스케일로 내보내집니다. 저는 항상 모델을 내보내기 전에 알려진 단위(예: 1 단위 = 1미터)로 기본 휴머노이드 또는 큐브 참조와 비교하여 스케일을 조정합니다.
마찬가지로 중요한 것은 피벗 포인트(또는 원점)입니다. 저는 항상 환경 애셋의 경우 바닥 평면, 캐릭터의 경우 목 아래, 기계 개체의 경우 기하학적 중심과 같이 논리적인 위치에 설정합니다. 중심에서 벗어난 피벗은 엔진 내 배치에 악몽을 안겨줍니다.
올바른 형식을 선택하는 것은 사소한 세부 사항이 아닙니다. 이는 어떤 데이터가 전송을 통해 살아남고 엔진 내에서 얼마나 많은 작업을 해야 하는지를 결정합니다.
제 경험상 규칙은 다음과 같습니다: Unity 또는 Unreal의 복잡하고 고품질 프로젝트에는 FBX를 사용하고, 웹, 모바일 또는 실시간 3D 컨텍스트에는 glTF를 사용합니다. FBX는 메쉬, UV, 재질, 스켈레톤 및 애니메이션을 데스크톱 엔진으로 안정적으로 전달하는 견고한 산업 표준 컨테이너입니다. glTF(.glb)는 "3D의 JPEG"입니다. 매우 효율적이고 웹 표준이며 PlayCanvas 또는 Three.js와 같은 플랫폼에 완벽하게 적합하지만, 재질 시스템(PBR Metallic-Roughness)은 Unity/Unreal에서 변환이 필요할 수 있습니다.
저는 FBX가 DCC 도구의 복잡한 재질 그래프에 더 관대하다는 것을 발견했으며, glTF는 처음부터 더 엄격한 물리 기반 재질 설정을 요구합니다. 웹으로 직접 이동하는 빠르고 텍스처링된 애셋의 경우 glTF를 기본으로 사용합니다.
텍스처는 올바르게 패킹되고 참조되어야 합니다. 저는 이식성을 위해 FBX 내보내기에서 항상 "Embed Textures" 옵션을 선택하지만, 이로 인해 파일 크기가 증가합니다. glTF의 경우 텍스처는 일반적으로 바이너리 .glb 파일에 패킹됩니다. 핵심은 내보낸 재질 그래프가 가능한 한 간단한지 확인하는 것입니다. 복잡하고 도구별 셰이더 네트워크는 거의 변환되지 않습니다. 저는 내보내기 전에 모든 것을 표준 PBR 텍스처 맵(Albedo, Normal, Metallic, Roughness)으로 베이킹합니다.
Tripo AI로 작업할 때, 저는 엔진 준비된 애셋을 위한 특정 파이프라인을 표준화했습니다. 모델을 생성한 다음, 내장된 리토폴로지 및 UV 언랩핑 도구를 즉시 사용하여 깨끗한 지오메트리와 레이아웃을 보장합니다. 내보내기 전에 스케일을 확인하고 플랫폼의 원클릭 텍스처 베이킹을 사용하여 표준 PBR 맵 세트를 생성합니다. 그런 다음 Unity/Unreal 프로젝트를 위해 **FBX (텍스처 포함)**로 내보냅니다. 이 워크플로우는 최소한의 후처리로 깨끗하고 임포트 준비된 파일을 일관되게 제공합니다.
완벽하게 내보냈더라도 엔진 임포트 설정은 중요합니다. 제가 테스트하는 내용은 다음과 같습니다.
Unity의 FBX 임포터는 일반적으로 좋지만 특이한 점이 있습니다. 가장 흔한 문제는 스케일입니다. 저는 거의 항상 임포트 시 소스에 따라 Scale Factor를 0.01 또는 0.1로 설정합니다. 또한 "Generate Colliders"는 필요한 경우에만 확인합니다. 복잡한 장면에 대한 임포트 속도를 늦출 수 있기 때문입니다.
재질이 분홍색으로 나타나면 Unity가 임포트된 데이터에서 재질을 생성하지 못한 것입니다. 제 해결책은 임포트된 모델의 Materials 탭으로 이동하여 "Location"을 "Use Embedded Materials"에서 **"Use External Materials (Legacy)"**로 변경한 다음 추출하는 것입니다. 이렇게 하면 일반적으로 셰이더 문제가 해결됩니다.
Unreal의 Datasmith FBX 임포트는 강력합니다. 제 첫 단계는 간단한 애셋에 대해서만 "Auto Generate Collision" 상자를 확인하는 것입니다. 재질의 경우 Unreal은 임포트된 텍스처에서 기본 재질 인스턴스를 생성합니다. 저는 즉시 노멀 맵을 확인합니다. UE5는 종종 노멀 맵을 잘못 임포트하므로, 텍스처 애셋을 열어 "sRGB"를 선택 해제하고 "Compression Settings"를 **"Normalmap"**으로 설정해야 합니다.
그런 다음 조명된 장면에 애셋을 배치하여 조명 아티팩트 또는 AI 생성기의 재질 매개변수가 Unreal의 PBR 모델에 완벽하게 매핑되지 않을 때 흔히 발생하는 잘못된 러프니스/메탈릭 값을 확인합니다.
Three.js 또는 Spline과 같은 웹 플랫폼의 경우 glTF가 최고입니다. 제 유효성 검사 테스트는 간단합니다. .glb 파일을 Babylon.js Sandbox 또는 Three.js Editor와 같은 브라우저 기반 뷰어에 드래그합니다. 올바른 텍스처로 로드되고 콘솔 오류가 없으면 사용할 수 있습니다. 여기서는 성능이 중요하므로, 실시간 웹 경험에 적합한 폴리곤 수도 확인합니다.
단일 애셋에서 전체 라이브러리로 이동할 때 수동 확인은 확장되지 않습니다.
저는 지루한 작업을 자동화하기 위해 간단한 Python 스크립트(Blender용) 또는 C# 유틸리티(Unity용)를 작성합니다. 스크립트는 모델의 스케일 범위, 폴리곤 수 제한, 누락된 UV 또는 필요한 텍스처 맵의 존재 여부를 일괄적으로 확인할 수 있습니다. 이는 내보내기 폴더에서 자동으로 실행되어 프로젝트의 기술 사양을 벗어나는 모든 애셋에 플래그를 지정합니다.
제 파이프라인은 다음과 같은 정의된 순서입니다: 생성 (AI 도구) -> 유효성 검사/정리 (DCC) -> 내보내기 (FBX/glTF) -> 임포트 (엔진) -> 최종 재질 조정. 저는 각 단계의 모든 설정을 문서화합니다. Tripo AI의 경우 내보내기 프리셋이 저장됩니다. Unity/Unreal에서는 전체 애셋 폴더에 적용할 수 있는 전용 임포트 프리셋 파일을 생성하고 저장합니다.
실패한 모든 임포트는 교훈을 줍니다. 가장 큰 비용이 드는 교훈은 스케일/피벗 확인을 절대 건너뛰지 않는 것과 복잡한 재질은 항상 텍스처로 베이킹하는 것이었습니다. AI가 생성한 "금속" 재질이 Unity가 파싱할 수 없는 복잡한 셰이더 네트워크로 내보내져 반나절을 낭비한 적이 있습니다. 이제는 먼저 베이킹합니다. 또 다른 때는 50개의 캐릭터 모델이 피벗이 모델의 중심에 있어 100단위 지하에 임포트되었습니다. 이제는 피벗 배치가 가장 먼저 수정하는 것입니다. 이러한 실패는 이제 제 사전 비행 점검 목록의 핵심이 되었습니다.
moving at the speed of creativity, achieving the depths of imagination.
텍스트·이미지를 3D 모델로 변환
매월 무료 크레딧 제공
압도적인 디테일 복원력