Jak przekształcić modele 3D w .NET
Aspose.3D dla .NET sprawia, że konwersja formatów jest dwustronne: ładowanie pliku źródłowego z Scene.Open(), a następnie przechowywać do celu formatu z Scene.Save().Format wyjścia jest wyciągnięty z rozszerzenia pliku.
Przewodnik krok po kroku
Krok 1: Instalacja pakietu
dotnet add package Aspose.3D.FOSSKrok 2: Importowanie przestrzeni nazwowych
using Aspose.ThreeD;
using Aspose.ThreeD.Formats;Krok 3: Pobierz plik źródłowy
var scene = new Scene();
scene.Open("input.fbx");Krok 4: Zapisz w formacie docelowym
scene.Save("output.glb");Biblioteka wykrywa format docelowy z rozszerzenia. obsługiwane formaty eksportu: OBJ, STL, glTF 2.0 / GLB, FBX, COLLADA i 3MF.
Krok 5: Użyj opcji Save specyficzne dla formatu
W przypadku kontrolowania zanieczyszczeń, przejdź do SaveOptions Podklasowe informacje:
// 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 });Wspólne przepisy konwersji
| Źródło | Celem | Kodeks |
|---|---|---|
| Wejdź do GLB | scene.Open("input.obj"); scene.Save("output.glb"); | Binary glTF dla przeglądarek internetowych |
| FBX do STL | scene.Open("input.fbx"); scene.Save("output.stl"); | Trójkątna maska do drukowania 3D |
| GST do kolady | scene.Open("input.gltf"); scene.Save("output.dae"); | Format wymiany |
| Złoty do OBJ | scene.Open("input.stl"); scene.Save("output.obj"); | Wavefront dla narzędzi modelowania |
Wspólne problemy i rozwiązania
Plik jest puste lub bardzo małe.
Upewnij się, że plik źródłowy został pomyślnie pobrany. sprawdź scene.RootNode.ChildNodes.Count Po Open().
Materiały utracone podczas konwersji
Nie wszystkie formaty posiadają te same właściwości materiałowe. materiały OBJ używają Lambert/Phong; glTF używa PBR. Materiał mapowania jest najlepszym wysiłkiem w granicach formatów.
Różnica między źródłem a produktem
Różne narzędzia wykorzystują różne systemy jednostkowe. ObjLoadOptions.Scale przywoz lub dostosowanie node.Transform.Scale Przed oszczędzaniem.
Często zadawane pytania (FAQ)
Czy mogę konwertować PLY do innego formatu?
Pobierz plik PLY i przechowywać go w dowolnym formacie eksportu (OBJ, STL, GLB, FBX, COLLADA).
Czy konwersja zachowuje animacje?
Informacje o animacji (AnimationClip) jest zachowany, gdy oba formaty go obsługują (np. FBX do glTF). STL i OBJ nie przynoszą danych animowanych.
Czy mogę zamienić wiele plików?
Stwórz nowy Scene dla każdego pliku w jednym kręgu. każdy Scene Jest niezależny i może być przetwarzany równolegle.