Kaip konvertuoti 3D modelius naudojant .NET
Aspose.3D for .NET formatų konvertavimą paverčia dviejų žingsnių operacija: įkelkite šaltinio failą naudodami Scene.Open(), tada išsaugokite į tikslinį formatą naudodami Scene.Save(). Išvesties formatas nustatomas pagal failo plėtinį.
Žingsnis po žingsnio vadovas
Žingsnis 1: Įdiekite paketą
dotnet add package Aspose.3D --version 26.1.02 žingsnis: importuoti vardų sritis
using Aspose.ThreeD;
using Aspose.ThreeD.Formats;Žingsnis 3: Įkelti šaltinio failą
var scene = new Scene();
scene.Open("input.fbx");Žingsnis 4: Išsaugoti tiksliniame formate
scene.Save("output.glb");Biblioteka nustato tikslinį formatą iš plėtinio. Palaikomi eksporto formatai: OBJ, STL, glTF 2.0 / GLB, FBX, COLLADA ir 3MF.
Žingsnis 5: Naudokite formatui specifines išsaugojimo parinktis
Norint gauti smulkią kontrolę, perduokite SaveOptions subklasę:
// 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 });Bendri konvertavimo receptai
| Source | Target | Code |
|---|---|---|
| OBJ į GLB | scene.Open("input.obj"); scene.Save("output.glb"); | Dvejetainis glTF žiniatinklio peržiūros programoms |
| FBX į STL | scene.Open("input.fbx"); scene.Save("output.stl"); | Triangulių tinklelis 3D spausdinimui |
| glTF į COLLADA | scene.Open("input.gltf"); scene.Save("output.dae"); | DAE keitimo formatas |
| STL į OBJ | scene.Open("input.stl"); scene.Save("output.obj"); | Wavefront modeliavimo įrankiams |
Dažnos problemos ir sprendimai
Išvesties failas yra tuščias arba labai mažas
Įsitikinkite, kad šaltinio failas sėkmingai įkeltas. Patikrinkite scene.RootNode.ChildNodes.Count po Open().
Konvertavimo metu prarastos medžiagos
Nė visi formatai turi tas pačias medžiagų savybes. OBJ medžiagos naudoja Lambert/Phong; glTF naudoja PBR. Medžiagų susiejimas yra geriausiai įmanomas per formatų ribas.
Mastelio skirtumas tarp šaltinio ir išvesties
Skirtingi įrankiai naudoja skirtingas matavimo sistemas. Pritaikykite ObjLoadOptions.Scale importuojant arba pakoreguokite node.Transform.Scale prieš išsaugant.
Dažnai užduodami klausimai (DUK)
Ar galiu konvertuoti PLY į kitą formatą?
PLY yra tik importavimui. Įkelkite PLY failą ir išsaugokite bet kuriuo eksporto formatu (OBJ, STL, GLB, FBX, COLLADA).
Ar konvertavimas išsaugo animacijas?
Animacijos duomenys (AnimationClip) išsaugomi, kai abu formatai juos palaiko (pvz., FBX į glTF). STL ir OBJ neperduoda animacijos duomenų.
Ar galiu masiškai konvertuoti kelis failus?
Sukurkite naują Scene kiekvienam failui cikle. Kiekvienas Scene yra nepriklausomas ir gali būti apdorojamas lygiagrečiai.