Kako pretvoriti 3D modele u .NET-u
Aspose.3D za .NET čini pretvorbu formata dvostupanjskom operacijom: učitajte izvornu datoteku pomoću Scene.Open(), zatim je spremite u odredišni format pomoću Scene.Save(). Izlazni format se zaključuje iz ekstenzije datoteke.
Vodič korak po korak
Korak 1: Instalirajte paket
dotnet add package Aspose.3D --version 26.1.0Korak 2: Uvoz prostora imena
using Aspose.ThreeD;
using Aspose.ThreeD.Formats;Korak 3: Učitaj izvornu datoteku
var scene = new Scene();
scene.Open("input.fbx");Korak 4: Spremi u ciljani format
scene.Save("output.glb");Biblioteka otkriva ciljani format iz ekstenzije. Podržani formati izvoza: OBJ, STL, glTF 2.0 / GLB, FBX, COLLADA i 3MF.
Korak 5: Koristite opcije spremanja specifične za format
Za finu kontrolu, proslijedite podklasu 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 });Uobičajeni recepti za konverziju
| Source | Target | Code |
|---|---|---|
| OBJ to GLB | scene.Open("input.obj"); scene.Save("output.glb"); | Binarni glTF za web preglednike |
| FBX to STL | scene.Open("input.fbx"); scene.Save("output.stl"); | Triangulirana mreža za 3D ispis |
| glTF to COLLADA | scene.Open("input.gltf"); scene.Save("output.dae"); | DAE format razmjene |
| STL to OBJ | scene.Open("input.stl"); scene.Save("output.obj"); | Wavefront za alate za modeliranje |
Uobičajeni problemi i rješenja
Izlazna datoteka je prazna ili vrlo mala
Provjerite je li izvorna datoteka uspješno učitana. Provjerite scene.RootNode.ChildNodes.Count nakon Open().
Materijali izgubljeni tijekom konverzije
Nisu svi formati nositelji istih svojstava materijala. OBJ materijali koriste Lambert/Phong; glTF koristi PBR. Mapiranje materijala je najbolji mogući napor preko granica formata.
Razlika u skali između izvora i izlaza
Različiti alati koriste različite sustave jedinica. Primijenite ObjLoadOptions.Scale pri uvozu ili prilagodite node.Transform.Scale prije spremanja.
Često postavljana pitanja (FAQ)
Mogu li pretvoriti PLY u drugi format?
PLY je samo za uvoz. Učitajte PLY datoteku i spremite u bilo koji format izvoza (OBJ, STL, GLB, FBX, COLLADA).
Preservira li konverzija animacije?
Podaci o animaciji (AnimationClip) se očuvaju kada oba formata to podržavaju (npr., FBX u glTF). STL i OBJ ne nose podatke o animaciji.
Mogu li grupno pretvoriti više datoteka?
Stvorite novi Scene za svaku datoteku u petlji. Svaki Scene je neovisan i može se obrađivati paralelno.