Come convertire modelli 3D in .NET

Come convertire modelli 3D in .NET

Aspose.3D per .NET rende la conversione di formato un’operazione a due passaggi: carica il file sorgente con Scene.Open(), quindi salva nel formato di destinazione con Scene.Save(). Il formato di output è dedotto dall’estensione del file.

Guida passo-passo

Passo 1: Installa il pacchetto

dotnet add package Aspose.3D --version 26.1.0

Passo 2: Importare i namespace

using Aspose.ThreeD;
using Aspose.ThreeD.Formats;

Passo 3: Carica il file di origine

var scene = new Scene();
scene.Open("input.fbx");

Passo 4: Salva nel formato di destinazione

scene.Save("output.glb");

La libreria rileva il formato di destinazione dall’estensione. Formati di esportazione supportati: OBJ, STL, glTF 2.0 / GLB, FBX, COLLADA e 3MF.


Passo 5: Usa le opzioni di salvataggio specifiche per il formato

Per un controllo più granulare, passa una sottoclasse 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 });

Ricette di conversione comuni

SourceTargetCode
OBJ in GLBscene.Open("input.obj"); scene.Save("output.glb");glTF binario per visualizzatori web
FBX in STLscene.Open("input.fbx"); scene.Save("output.stl");Mesh triangolato per stampa 3D
glTF in COLLADAscene.Open("input.gltf"); scene.Save("output.dae");Formato di scambio DAE
STL in OBJscene.Open("input.stl"); scene.Save("output.obj");Wavefront per strumenti di modellazione

Problemi comuni e soluzioni

Il file di output è vuoto o molto piccolo

Assicurati che il file di origine sia stato caricato correttamente. Controlla scene.RootNode.ChildNodes.Count dopo Open().

Materiali persi durante la conversione

Non tutti i formati trasportano le stesse proprietà dei materiali. I materiali OBJ usano Lambert/Phong; glTF utilizza PBR. La mappatura dei materiali è al meglio delle possibilità attraverso i confini dei formati.

Differenza di scala tra sorgente e output

Strumenti diversi usano sistemi di unità differenti. Applica ObjLoadOptions.Scale all’importazione o regola node.Transform.Scale prima di salvare.


Domande frequenti (FAQ)

Posso convertire PLY in un altro formato?

PLY è solo importazione. Carica un file PLY e salva in qualsiasi formato di esportazione (OBJ, STL, GLB, FBX, COLLADA).

La conversione conserva le animazioni?

I dati di animazione (AnimationClip) vengono conservati quando entrambi i formati li supportano (ad esempio, FBX a glTF). STL e OBJ non contengono dati di animazione.

Posso convertire più file in batch?

Crea un nuovo Scene per ogni file in un ciclo. Ogni Scene è indipendente e può essere elaborato in parallelo.

 Italiano