Как да конвертирате 3D модели в .NET

Как да конвертирате 3D модели в .NET

Aspose.3D for .NET извършва конвертиране на формати в две стъпки: заредете изходния файл с Scene.Open(), след което запишете в целевия формат с Scene.Save(). Форматът на изхода се определя от разширението на файла.

Ръководство стъпка по стъпка

Стъпка 1: Инсталирайте пакета

dotnet add package Aspose.3D --version 26.1.0

Стъпка 2: Импортиране на пространства от имена

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

Стъпка 3: Зареждане на изходния файл

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

Стъпка 4: Запазване в целевия формат

scene.Save("output.glb");

Библиотеката открива целевия формат от разширението. Поддържани формати за експортиране: OBJ, STL, glTF 2.0 / GLB, FBX, COLLADA и 3MF.


Стъпка 5: Използване на специфични за формата опции за запазване

За прецизен контрол предайте подклас на 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 });

Общи рецепти за конвертиране

ИзточникЦелКод
OBJ to GLBscene.Open("input.obj"); scene.Save("output.glb");Бинарен glTF за уеб прегледачи
FBX to STLscene.Open("input.fbx"); scene.Save("output.stl");Триангулирана мрежа за 3D печат
glTF to COLLADAscene.Open("input.gltf"); scene.Save("output.dae");DAE формат за обмен
STL to OBJscene.Open("input.stl"); scene.Save("output.obj");Wavefront за инструменти за моделиране

Чести проблеми и решения

Изходният файл е празен или много малък

Уверете се, че изходният файл е зареден успешно. Проверете scene.RootNode.ChildNodes.Count след Open().

Материали, загубени при конвертиране

Не всички формати носят еднакви свойства на материалите. Материалите в OBJ използват Lambert/Phong; в glTF се използва PBR. Съответстването на материалите е направено с най‑добри усилия при преминаване между формати.

Разлика в мащаба между източника и изхода

Различните инструменти използват различни системи за единици. Приложете ObjLoadOptions.Scale при импортиране или коригирайте node.Transform.Scale преди запазване.


Често задавани въпроси (FAQ)

Мога ли да конвертирам PLY в друг формат?

PLY е само за импортиране. Заредете PLY файл и запазете във всеки експортен формат (OBJ, STL, GLB, FBX, COLLADA).

Запазва ли конверсията анимациите?

Анимационните данни (AnimationClip) се запазват, когато и двата формата ги поддържат (например FBX към glTF). STL и OBJ не съдържат анимационни данни.

Мога ли да конвертирам няколко файла наведнъж?

Създайте нов Scene за всеки файл в цикъл. Всеки Scene е независим и може да се обработва паралелно.

 Български