glTF ve GLB ile çalışmak

glTF ve GLB ile çalışmak

glTF ve GLB ile çalışmak

Aspose.3D for .NET, glTF 2.0 (.gltf with separate assets) ve GLB (tek dosyalı ikili glTF) okuma ve yazmayı destekler. Yükleme davranışını yapılandırmak için GltfLoadOptions ve dışa aktarım çıktısını kontrol etmek için GltfSaveOptions kullanın.


Bir glTF Dosyası Yükleme

Scene.Open ile bir .gltf veya .glb dosyasını doğrudan yükleyin. Daha ince kontrol için GltfLoadOptions sağlayın:

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 dosyaları, dış .bin tamponlarını ve dokuları göreceli yol ile referans gösterir. Yükleme sırasında tüm referans verilen varlıkları .gltf dosyasıyla aynı dizinde tutun.


glTF veya GLB olarak kaydetme

Herhangi bir sahneyi glTF veya sıkışık ikili GLB formatında kaydedin:

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);

Gömülü Görüntü Formatını Kontrol Etme

Dokular gömülü olduğunda, görüntü verisinin GltfEmbeddedImageFormat ile nasıl depolandığını kontrol edin:

var saveOpts = new GltfSaveOptions(FileFormat.GLTF2_Binary);
saveOpts.ImageFormat = GltfEmbeddedImageFormat.Jpeg;
scene.Save("output.glb", saveOpts);
GltfEmbeddedImageFormat değeriAçıklama
JpegGömülü dokuları JPEG olarak yeniden kodla (kayıplı, daha küçük)
PngGömülü dokuları PNG olarak yeniden kodla (kayıpsız)
NoChangeOrijinal kodlamayı koru (varsayılan)

API Quick Reference

MemberAçıklama
new GltfLoadOptions()Yapılandır glTF içe aktarma
new GltfSaveOptions(format)Yapılandır glTF/GLB dışa aktarım
saveOpts.EmbedAssetsGöm ikili tamponu .gltf JSON içinde
saveOpts.ImageFormatGömülü doku kodlaması (GltfEmbeddedImageFormat)
FileFormat.GLTF2Hedef format: ayrı .gltf + .bin
FileFormat.GLTF2_BinaryHedef format: tek .glb

Ayrıca Bakınız

 Türkçe