Cara Mengonversi Model 3D di .NET
Aspose.3D for .NET membuat konversi format menjadi operasi dua langkah: muat file sumber dengan Scene.Open(), lalu simpan ke format target dengan Scene.Save(). Format output diambil dari ekstensi file.
Panduan Langkah-demi-Langkah
Langkah 1: Instal Paket
dotnet add package Aspose.3D --version 26.1.0Langkah 2: Impor Namespace
using Aspose.ThreeD;
using Aspose.ThreeD.Formats;Langkah 3: Muat File Sumber
var scene = new Scene();
scene.Open("input.fbx");Langkah 4: Simpan dalam Format Target
scene.Save("output.glb");Perpustakaan mendeteksi format target dari ekstensi. Format ekspor yang didukung: OBJ, STL, glTF 2.0 / GLB, FBX, COLLADA, dan 3MF.
Langkah 5: Gunakan Opsi Penyimpanan Spesifik Format
Untuk kontrol yang lebih halus, berikan subclass 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 });Resep Konversi Umum
| Source | Target | Code |
|---|---|---|
| OBJ ke GLB | scene.Open("input.obj"); scene.Save("output.glb"); | Binary glTF untuk penampil web |
| FBX ke STL | scene.Open("input.fbx"); scene.Save("output.stl"); | Mesh segitiga untuk pencetakan 3D |
| glTF ke COLLADA | scene.Open("input.gltf"); scene.Save("output.dae"); | Format pertukaran DAE |
| STL ke OBJ | scene.Open("input.stl"); scene.Save("output.obj"); | Wavefront untuk alat pemodelan |
Masalah Umum dan Solusi
File output kosong atau sangat kecil
Pastikan file sumber berhasil dimuat. Periksa scene.RootNode.ChildNodes.Count setelah Open().
Materi yang hilang selama konversi
Tidak semua format membawa properti material yang sama. Material OBJ menggunakan Lambert/Phong; glTF menggunakan PBR. Pemetaan material adalah upaya terbaik di seluruh batas format.
Perbedaan skala antara sumber dan output
Berbagai alat menggunakan sistem satuan yang berbeda. Terapkan ObjLoadOptions.Scale saat mengimpor atau sesuaikan node.Transform.Scale sebelum menyimpan.
Pertanyaan yang Sering Diajukan (FAQ)
Bisakah saya mengonversi PLY ke format lain?
PLY hanya dapat diimpor. Muat file PLY dan simpan ke format ekspor apa pun (OBJ, STL, GLB, FBX, COLLADA).
Apakah konversi mempertahankan animasi?
Data animasi (AnimationClip) dipertahankan ketika kedua format mendukungnya (mis., FBX to glTF). STL dan OBJ tidak membawa data animasi.
Apakah saya dapat mengonversi beberapa file secara batch?
Buat Scene baru untuk setiap file dalam sebuah loop. Setiap Scene bersifat independen dan dapat diproses secara paralel.