.NET'te 3D Modelleri Nasıl Dönüştürülür
Aspose.3D for .NET format dönüşümünü iki adımlı bir işlem haline getirir: kaynak dosyayı Scene.Open() ile yükleyin, ardından hedef formata Scene.Save() ile kaydedin. Çıktı formatı dosya uzantısından çıkarılır.
Adım Adım Kılavuz
Adım 1: Paketi Yükleyin
dotnet add package Aspose.3D --version 26.1.0Adım 2: Ad Alanlarını İçe Aktar
using Aspose.ThreeD;
using Aspose.ThreeD.Formats;Adım 3: Kaynak Dosyayı Yükle
var scene = new Scene();
scene.Open("input.fbx");Adım 4: Hedef Biçimde Kaydet
scene.Save("output.glb");Kütüphane, hedef formatı uzantıdan algılar. Desteklenen dışa aktarma formatları: OBJ, STL, glTF 2.0 / GLB, FBX, COLLADA ve 3MF.
Adım 5: Biçim‑Özel Kaydetme Seçeneklerini Kullanın
İnce ayarlı kontrol için, bir SaveOptions alt sınıfı geçirin:
// 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 });Ortak Dönüştürme Tarifleri
| Kaynak | Hedef | Kod |
|---|---|---|
| OBJ’den GLB’ye | scene.Open("input.obj"); scene.Save("output.glb"); | Web görüntüleyicileri için ikili glTF |
| FBX’den STL’ye | scene.Open("input.fbx"); scene.Save("output.stl"); | 3D baskı için üçgenleştirilmiş ağ |
| glTF’den COLLADA’ya | scene.Open("input.gltf"); scene.Save("output.dae"); | DAE değişim formatı |
| STL’den OBJ’ye | scene.Open("input.stl"); scene.Save("output.obj"); | Modelleme araçları için Wavefront |
Yaygın Sorunlar ve Çözümler
Çıktı dosyası boş veya çok küçük
Kaynak dosyanın başarıyla yüklendiğinden emin olun. Open()‘den sonra scene.RootNode.ChildNodes.Count‘yi kontrol edin.
Dönüşüm sırasında kaybolan materyaller
Tüm formatlar aynı malzeme özelliklerini taşımaz. OBJ malzemeleri Lambert/Phong kullanır; glTF PBR kullanır. Malzeme eşlemesi format sınırları arasında en iyi çaba ile yapılır.
Kaynak ve çıktı arasındaki ölçek farkı
Farklı araçlar farklı birim sistemleri kullanır. İçe aktarırken ObjLoadOptions.Scale uygulayın veya kaydetmeden önce node.Transform.Scale ayarlayın.
Sıkça Sorulan Sorular (SSS)
PLY’yi başka bir formata dönüştürebilir miyim?
PLY yalnızca içe aktarım içindir. Bir PLY dosyası yükleyin ve herhangi bir dışa aktarma formatına (OBJ, STL, GLB, FBX, COLLADA) kaydedin.
Dönüştürme animasyonları korur mu?
Animasyon verileri (AnimationClip), her iki format da desteklediğinde korunur (ör. FBX’ten glTF’ye). STL ve OBJ animasyon verisi taşımaz.
Birden fazla dosyayı toplu dönüştürebilir miyim?
Her dosya için bir döngüde yeni bir Scene oluşturun. Her Scene bağımsızdır ve paralel olarak işlenebilir.