Cómo convertir modelos 3D en .NET

Cómo convertir modelos 3D en .NET

Aspose.3D for .NET hace que la conversión de formatos sea una operación de dos pasos: cargue el archivo fuente con Scene.Open(), luego guárdelo en el formato de destino con Scene.Save(). El formato de salida se infiere de la extensión del archivo.

Guía paso a paso

Paso 1: Instalar el paquete

dotnet add package Aspose.3D --version 26.1.0

Paso 2: Importar espacios de nombres

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

Paso 3: Cargar el archivo de origen

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

Paso 4: Guardar en el formato de destino

scene.Save("output.glb");

La biblioteca detecta el formato de destino a partir de la extensión. Formatos de exportación compatibles: OBJ, STL, glTF 2.0 / GLB, FBX, COLLADA y 3MF.


Paso 5: Usar opciones de guardado específicas del formato

Para un control granular, pase una subclase 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 });

Recetas de Conversión Comunes

OrigenDestinoCódigo
OBJ a GLBscene.Open("input.obj"); scene.Save("output.glb");glTF binario para visores web
FBX a STLscene.Open("input.fbx"); scene.Save("output.stl");Malla triangulada para impresión 3D
glTF a COLLADAscene.Open("input.gltf"); scene.Save("output.dae");Formato de intercambio DAE
STL a OBJscene.Open("input.stl"); scene.Save("output.obj");Wavefront para herramientas de modelado

Problemas comunes y soluciones

El archivo de salida está vacío o es muy pequeño

Asegúrese de que el archivo fuente se haya cargado correctamente. Verifique scene.RootNode.ChildNodes.Count después de Open().

Materiales perdidos durante la conversión

No todos los formatos llevan las mismas propiedades de material. Los materiales OBJ usan Lambert/Phong; glTF usa PBR. El mapeo de materiales es de mejor esfuerzo a través de los límites de formato.

Diferencia de escala entre la fuente y la salida

Diferentes herramientas utilizan diferentes sistemas de unidades. Aplica ObjLoadOptions.Scale al importar o ajusta node.Transform.Scale antes de guardar.


Preguntas Frecuentes (FAQ)

¿Puedo convertir PLY a otro formato?

PLY es solo de importación. Carga un archivo PLY y guárdalo en cualquier formato de exportación (OBJ, STL, GLB, FBX, COLLADA).

¿La conversión conserva animaciones?

Los datos de animación (AnimationClip) se conservan cuando ambos formatos lo admiten (p. ej., FBX a glTF). STL y OBJ no transportan datos de animación.

¿Puedo convertir varios archivos por lotes?

Cree un nuevo Scene para cada archivo en un bucle. Cada Scene es independiente y puede procesarse en paralelo.

 Español