3D 모델을 .NET로 변환하는 방법
.NET을 위한 Aspose.3D는 형식 변환이 2단계 작업으로 이루어집니다: 원본 파일을 충전하여 Scene.Open(),그 다음에 목표 형식으로 저장합니다. Scene.Save(). 출력 형식은 파일 확장에서 추출됩니다.
단계별 가이드
단계 1 : 패키지를 설치합니다.
dotnet add package Aspose.3D.FOSS단계 2 : 이름 공간 수입
using Aspose.ThreeD;
using Aspose.ThreeD.Formats;단계 3: 소스 파일을 다운로드합니다.
var scene = new Scene();
scene.Open("input.fbx");단계 4 : 목표 형식으로 저장
scene.Save("output.glb");도서관은 확장에서 대상 형식을 감지합니다. 지원되는 수출 형식 : OBJ, STL, glTF 2.0 / GLB, FBX, COLLADA 및 3MF.
5단계: 포맷 특정 저장 옵션을 사용하십시오.
녹색 통제, 통과 A SaveOptions 하위 클래스 :
// FBX output — always produces binary FBX
// FbxSaveOptions exists but has no format-specific properties in this version
scene.Save("output.fbx");
// OBJ with flipped coordinate system
scene.Save("output.obj", new ObjSaveOptions { FlipCoordinateSystem = true });
// COLLADA with indented XML
scene.Save("output.dae", new ColladaSaveOptions { Indented = true });일반적인 변환 요리법
| 출처 | 목표 | 코드 |
|---|---|---|
| GLB에 대한 정보 | scene.Open("input.obj"); scene.Save("output.glb"); | 웹 시청자를 위한 바이너리 glTF |
| FBX 에서 STL | scene.Open("input.fbx"); scene.Save("output.stl"); | 3D 인쇄를 위한 삼각형 메시지 |
| 콜라다에 대한 GTTF | scene.Open("input.gltf"); scene.Save("output.dae"); | DAE 교환 형식 |
| 오브에 대 한 STL | scene.Open("input.stl"); scene.Save("output.obj"); | 모델링 도구를 위한 Wavefront |
일반적인 문제와 해결책
출력 파일은 빈 또는 매우 작은
원본 파일이 성공적으로 충전되도록 보장합니다. 확인 scene.RootNode.ChildNodes.Count 후에 Open().
변환 중에 잃어버린 물질
모든 형식이 동일한 재료 속성을 가지고 있지 않습니다.OBJ 재질은 Lambert/Phong을 사용합니다; glTF는 PBR를 사용 합니다.재료 지도는 형식을 통해 최선의 노력을 기울입니다.
출처와 생산 사이의 크기 차이점
다양한 도구는 다른 단위 시스템을 사용합니다. ObjLoadOptions.Scale 수입 또는 조정에 대 한 node.Transform.Scale 저축하기 전에.
자주 묻는 질문 (FAQ)
PLY를 다른 형식으로 변환할 수 있습니까?
PLY 파일을 업로드하고 모든 수출 형식으로 저장 (OBJ, STL, GLB, FBX, COLLADA).
변환은 애니메이션을 보존합니까?
동영상 데이터 (AnimationClip2) 두 형식 모두 지원할 때 보존됩니다 (예: FBX에서 glTF까지). STL 및 OBJ는 애니메이션 데이터를 가지고 있지 않습니다.
여러 파일을 배치할 수 있나요?
새로운 것을 만들기 Scene 각 파일에 대한 한 롤.모든 Scene 독립적이고 동시에 처리할 수 있습니다.