Cara Menukar Model 3D dalam .NET
Aspose.3D for .NET menjadikan penukaran format sebagai operasi dua langkah: muatkan fail sumber dengan Scene.Open(), kemudian simpan ke format sasaran dengan Scene.Save(). Format output ditentukan daripada sambungan fail.
Panduan Langkah demi Langkah
Langkah 1: Pasang Pakej
dotnet add package Aspose.3D --version 26.1.0Langkah 2: Import Ruang Nama
using Aspose.ThreeD;
using Aspose.ThreeD.Formats;Langkah 3: Muat Fail Sumber
var scene = new Scene();
scene.Open("input.fbx");Langkah 4: Simpan dalam Format Sasaran
scene.Save("output.glb");Perpustakaan mengesan format sasaran daripada sambungan. Format eksport yang disokong: OBJ, STL, glTF 2.0 / GLB, FBX, COLLADA, dan 3MF.
Langkah 5: Gunakan Pilihan Simpan Mengikut Format
Untuk kawalan terperinci, lewati subkelas 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 });Resipi Penukaran Umum
| Sumber | Sasaran | Kod |
|---|---|---|
| OBJ to GLB | scene.Open("input.obj"); scene.Save("output.glb"); | glTF binari untuk penonton web |
| FBX to STL | scene.Open("input.fbx"); scene.Save("output.stl"); | Mesh segi tiga untuk pencetakan 3D |
| glTF to COLLADA | scene.Open("input.gltf"); scene.Save("output.dae"); | Format pertukaran DAE |
| STL to OBJ | scene.Open("input.stl"); scene.Save("output.obj"); | Wavefront untuk alat pemodelan |
Masalah Biasa dan Penyelesaian
Fail output kosong atau sangat kecil
Pastikan fail sumber dimuatkan dengan berjaya. Semak scene.RootNode.ChildNodes.Count selepas Open().
Bahan yang hilang semasa penukaran
Tidak semua format membawa sifat bahan yang sama. Bahan OBJ menggunakan Lambert/Phong; glTF menggunakan PBR. Pemetaan bahan adalah usaha terbaik merentasi sempadan format.
Perbezaan skala antara sumber dan output
Alat yang berbeza menggunakan sistem unit yang berbeza. Gunakan ObjLoadOptions.Scale semasa import atau sesuaikan node.Transform.Scale sebelum menyimpan.
Soalan Lazim (FAQ)
Bolehkah saya menukar PLY ke format lain?
PLY hanya import. Muatkan fail PLY dan simpan ke mana-mana format eksport (OBJ, STL, GLB, FBX, COLLADA).
Adakah penukaran mengekalkan animasi?
Data animasi (AnimationClip) dipelihara apabila kedua-dua format menyokongnya (contohnya, FBX ke glTF). STL dan OBJ tidak membawa data animasi.
Bolehkah saya menukar berbilang fail secara pukal?
Buat Scene baru untuk setiap fail dalam gelung. Setiap Scene adalah bebas dan boleh diproses secara selari.