Робота з glTF та GLB

Робота з glTF та GLB

Aspose.3D для .NET підтримує читання та запис glTF 2.0 (.gltf з окремими ресурсами) та GLB (однофайловий бінарний glTF). Використовуйте GltfLoadOptions для налаштування поведінки завантаження і GltfSaveOptions для керування вихідним експортом.


Завантаження файлу glTF

Завантажте файл .gltf або .glb безпосередньо за допомогою Scene.Open. Надайте GltfLoadOptions для більш точного керування:

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

// Basic load
var scene = Scene.FromFile("model.gltf");

// Load with options
var opts = new GltfLoadOptions();
var sceneWithOpts = new Scene();
sceneWithOpts.Open("model.gltf", opts);

Файли glTF посилаються на зовнішні буфери .bin та текстури за відносним шляхом. Тримайте всі посилані активи в тому самому каталозі, що й файл .gltf, під час завантаження.


Збереження як glTF або GLB

Збережіть будь-яку сцену як glTF або у компактному бінарному форматі GLB:

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

var scene = new Scene();
scene.RootNode.CreateChildNode("box", new Aspose.ThreeD.Entities.Box());

// Save as glTF (separate JSON + .bin buffer)
scene.Save("output.gltf", FileFormat.GLTF2);

// Save as GLB (single binary file)
scene.Save("output.glb", FileFormat.GLTF2_Binary);

// Save with custom options — embed the binary buffer inside the JSON
var saveOpts = new GltfSaveOptions(FileFormat.GLTF2);
saveOpts.EmbedAssets = true;
scene.Save("output_embedded.gltf", saveOpts);

Керування вбудованим форматом зображення

Коли текстури вбудовано, керуйте тим, як дані зображення зберігаються за допомогою GltfEmbeddedImageFormat:

var saveOpts = new GltfSaveOptions(FileFormat.GLTF2_Binary);
saveOpts.ImageFormat = GltfEmbeddedImageFormat.Jpeg;
scene.Save("output.glb", saveOpts);
значення GltfEmbeddedImageFormatОпис
JpegПерекодувати вбудовані текстури у JPEG (з втратами, менші)
PngПерекодувати вбудовані текстури у PNG (без втрат)
NoChangeЗберегти оригінальне кодування (за замовчуванням)

API Quick Reference

MemberОпис
new GltfLoadOptions()Налаштувати glTF import
new GltfSaveOptions(format)Налаштувати glTF/GLB export
saveOpts.EmbedAssetsВбудувати бінарний буфер у .gltf JSON
saveOpts.ImageFormatКодування вбудованої текстури (GltfEmbeddedImageFormat)
FileFormat.GLTF2Цільовий формат: окремі .gltf + .bin
FileFormat.GLTF2_BinaryЦільовий формат: один .glb

Дивіться також

 Українська