Python’da bulut tabanlı hafif bir FBX-GLB dönüştürücü geliştirin.

GLB'den FBX'e

GLB’den FBX’e Python Kütüphanesi

Genel bakış

GLB formatı, 3B sahneler ve modeller için popüler 3B dosya formatları arasındadır. GLTF 2.0 dosya formatının ikili sürümüdür. Genellikle harici görüntüler olarak referans vermek yerine dokuları içerir ve GLTF’ye bir uzantı olarak tanıtılmıştır. Oysa FBX dosyası, 3B geometri ve animasyon verilerini değiştirmek için kullanılır. Film, oyun ve artırılmış gerçeklik ve sanal gerçeklik (AR/VR) geliştirmede yaygın olarak kullanılır. Ayrıca, FBX dosya formatı ikili bir format kullanır ve oldukça verimlidir. Bu nedenle, bu gerçek nedeniyle, GLB formatını FBX formatına dönüştürme gereksinimimiz olabilir, bu nedenle bu makalede, GLB’yi Python’da programlı olarak FBX’e nasıl dönüştüreceğinize ilişkin adımları ve ilgili ayrıntıları tartışacağız.

3D Dosya İşleme API’si

Aspose.3D Cloud, 3B dosya biçimlerini programlı olarak işlemek için REST tabanlı çözümümüzdür. Masaüstü, web ve bulut tabanlı uygulamalarda 3B nesneleri, modelleri ve varlıkları (Kutu, Silindir, Küre, Torus, Düzlem) oluşturmanızı, değiştirmenizi ve dönüştürmenizi sağlar. API, üçgenleme ağlarıyla çalışmanızı sağlar ve tüm dosyayı üçgenlemenize veya 3B sahnenin yalnızca bir kısmını (OAP tarafından belirtilen) üçgenlemenize ve diğer desteklenen dosya biçimlerine kaydetmenize olanak tanır.

Müşterilerimize daha fazla kolaylık sağlamak için, Aspose.3D Cloud’un üstünde bir sarmalayıcı olan Aspose.3D Cloud SDK for Python‘yı oluşturduk. Bu nedenle ilk adım, PIP ve GitHub‘da indirilebilen GLB to FBX Python kütüphanesini kurmaktır. Şimdi SDK’yi kurmak için komut satırı terminalinde şu komutu çalıştırın:

pip install aspose3dcloud

Ancak, Microsoft Visual Studio’da Aspose.3D Cloud’u doğrudan yüklemek için Python Environments penceresindeki Packages alanına aspose3dcloud girin. Ardından Install aspose3dcloud bağlantısına tıklayın. Aşağıdaki görsele bakın.

GLB'den FBX'e

Resim 1:- Visual Studio içerisinde Python paketinin kurulumu.

Aspose.Cloud Kontrol Paneli

Cloud API’leri kullanmaya başlamak için Aspose.Cloud panosunda bir hesap oluşturmamız gerekiyor. GitHub veya Google hesabınız varsa, sadece Kaydolun veya Yeni Hesap Oluştur düğmesine tıklayın ve gerekli bilgileri sağlayın. Şimdi kimlik bilgilerini kullanarak panoya giriş yapın ve panodan Uygulamalar bölümünü genişletin ve İstemci Kimliği ve İstemci Gizli Bilgisi ayrıntılarını görmek için İstemci Kimlik Bilgileri bölümüne doğru aşağı kaydırın.

GLB'den FBX'e

Resim 2:- Aspose.Cloud Pano’da İstemci Kimlik Bilgileri önizlemesi.

Python kullanarak GLB’den FBX’e

Bu bölümde, Cloud depolamada halihazırda mevcut olan GLB dosyalarının Python kod parçacığı kullanılarak FBX formatına dönüştürülmesini ele alacağız. Bu gereksinimi karşılamak için lütfen aşağıda verilen adımları izleyin.

  • İlk olarak, Client ID ve Client gizli ayrıntılarını argüman olarak geçirerek ThreeDCloudApi’nin bir örneğini oluşturmamız gerekiyor.
  • İkinci olarak, giriş GLB adını, çıkış formatını FBX olarak ve sonuç dosyanın adını tanımlayın.
  • Son olarak, dönüştürme işlemini gerçekleştirmek için ThreeDCloudApi sınıfının postconvertbyformat(…) metodunu çağırın.
import aspose3dcloud
from aspose3dcloud import ThreeDCloudApi
from aspose3dcloud.rest import ApiException

def main():
	try:
		# Aspose.3D Cloud'un bir örneğini oluşturun
		threeDCloudApi  = aspose3dcloud.ThreeDCloudApi("client_credentials", "6185429e-17ce-468d-bb81-a51ac9d96c16","73a07e2fb010f559e482d854fe5a8f49")
		
		# GLB dosyasını girin
		name = "Wolf-Blender-2.82a.glb"
		# sonuçtaki FBX dosya biçimi
		newformat = "fbx7200binary"
		# sonuçtaki FBX dosyasının adı
		newfilename = "Converted.fbx"
		# mevcut dosyanın üzerine yazmak için bir bayrak ayarla
		isOverwrite = "true"
		
		# dosya dönüştürme işlemini başlat
		result = threeDCloudApi.post_convert_by_format(name, newformat, newfilename, folder = None, is_overwrite = isOverwrite)
        
		# konsolda mesajı yazdır (isteğe bağlı)
		print('Conversion process completed successfully !')
	except ApiException as e:
		print("Exception while calling WordsApi: {0}".format(e))   
	
		main()

cURL Komutunu kullanarak GLB’yi FBX’e dönüştürün

cURL komutları, komut istemi aracılığıyla REST API’lerine erişmenin kolay yollarından biridir. Bu nedenle, cURL komutu aracılığıyla Aspose.3D Cloud’a da erişebiliriz. Ancak önce, bu GLB’den FBX’e Python kütüphanesini kullanmak için istemci kimlik bilgilerine dayalı bir JWT erişim belirteci oluşturmamız gerekir. Lütfen bir tane oluşturmak için aşağıdaki komutu çalıştırın:

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=6185429e-17ce-468d-bb81-a51ac9d96c16&client_secret=73a07e2fb010f559e482d854fe5a8f49" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

Lütfen GLB dosyasını FBX formatına dönüştürmek ve çıktıyı Cloud depolama alanına kaydetmek için aşağıdaki komutu kullanın.

curl -v -X POST "https://api.aspose.cloud/v3.0/3d/saveas/newformat?name=Wolf-Blender-2.82a.glb&newformat=fbx7200binary&newfilename=Wolf-Blender-Converted.fbx&IsOverwrite=false" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

Yukarıdaki örnekte kullanılan örnek dosyalar Wolf-Blender-2.82a.glb ve Wolf-Blender-Converted.fbx adreslerinden indirilebilir.

Çözüm

Bu makalede, GLB’yi FBX Python kütüphanesini ve cURL komutunu kullanarak GLB’yi FBX formatına nasıl dönüştürebileceğimizin ayrıntılarını ele aldık. SDK’larımızın bir MIT lisansına göre geliştirildiğini ve bu nedenle tam kaynak kodlarının GitHub üzerinden indirilebileceğini lütfen unutmayın. Python projenizde bir FBX’ten GLB’ye dönüştürücü seçmeyi düşünüyorsanız bu blog yazısı size kesinlikle yardımcı olacaktır. Ayrıca, aşağıdaki ‘Keşfet’ bölümünde inceleyebileceğiniz daha fazla ilgili makale listelenmiştir.

API’lerimizle ilgili son güncellemelerden haberdar olmak için Facebook, LinkedIn ve Twitter üzerinden sosyal medya hesaplarımızı takip edebilirsiniz.

Bir soru sor

Sorularınıza, taleplerinize/tartışmalarınıza yanıt vermek için oldukça aktif olan forumumuzu ziyaret etmekten çekinmeyin.

Keşfetmek

Daha fazla bilgi edinmek için aşağıdaki bağlantıyı ziyaret etmenizi de öneririz