Metaverse'ün HTML'i: Universal Scene Description
Universal Scene Description Metaverse'ün HTML'i olarak tanımlanmaya başladı. Biz de neden metaverse kavramının mimari tabanı olarak USD formatının kabul edildiğini anlattık.
USD, büyük ölçekli film ve görsel efekt üretiminin ihtiyaçlarını karşılamak üzere tasarlanmış, animasyon barındıran 3D sahnelerin işbirliği içinde oluşturulmasına yönelik yüksek performanslı çözümler sunan, genişletilebilir bir yazılım platformudur. NVIDIA Omniverse™'ün yaygılaşması ile birlikte, yazılım ve donanım devleri, USD'yi "Metaverse'ün" HTML'i olarak tanımlamaya başladı. Bu makalede USD'yi daha iyi tanıtmayı ve neden metaverse kavramının mimari tabanı olarak kabul edildiğini anlatmayı amaçladık. Okuyan ve paylaşan herkese şimdiden teşekkür ederiz.
Universel Scene Description | Evrensel Sahne Tanımı Nedir?
Evrensel Sahne Tanımı (USD), üç boyutlu dijital grafik verilerinin birlikte kullanılabilirliği ve değiştirilebilirliği için, ortak zemin oluşturan bir çerçevedir. USD, geometri (üç boyutlu model), gölgelendirme (kaplama ve materyal), ışıklandırma ve fizik gibi alanları kapsayan şemalar ile (malzemeler, dosya tipleri, standartlar, vb.) dijital içerik oluşturma araçları arasında (üç boyutlu modelleme programları, plugin'ler, dönüştürücüler vb.) güvenilir bir iş birliği imkanı sağlar. USD'nin benzersiz özelliklerinin eşsiz ve kapsamlı faydaları vardır. Örneğin, genel bir sahne kompozisyonu oluştururken, farklı programlara meydana getirilen tekil varlıkları (model, doku, materyal vb.) zengin ve çeşitli yollarla bir araya getirme imkanı sunar. Birçok kullanıcının herhangi bir çakışma ya da dönüştürme problemi olmadan, aynı anda, hatasız biçimde iş birliği yapmasına olanak tanıyan iş akışları sunar. Tüm bu özellikleri nedeniyle USD, herkesin peşinden koştuğu "kutsal kase" haline gelen "Metaverse" kavramı için, günümüzün "HTML" formatı haline gelecek şekilde benimsenmiştir denebilir. (Neden HTML ile özdeşleştirildiğini yazının son bölümünde anlatacağım.)
Pixar ve USD'nin Geçmişi Nedir?
USD, Pixar tarafından geliştirildi ve 2016'da açık kaynaklı olarak yayınlandı. O günden bu yana görsel efekt, mimari, tasarım, robotik ve CAD dahil olmak üzere birçok sektörde -giderek daha fazla şekilde- kullanılıyor. Günümüzde, USD'nin metaverse kavramının HTML'i haline gelmesini sağlayan ve işleri daha da hızlandıran NVIDIA Omniverse™ iş birliğine değinmeden önce, bu teknolojinin Pixar'daki kadim mirasını ele almak istiyorum.
Marionette (v1.0)
USD, Pixar'da geliştirilen ilk halinin kabaca dördüncü nesil versiyonudur denebilir. Pixar Ar-Ge ekibi, her sahnenin tek bir dosya formatı çıktısıyla tanımlandığı Toy Story'yi tamamladıktan sonra, A Bug's Life ile başlayan -ve sonraki on uzun metrajlı film boyunca devam eden- animasyon sistemi Marionette'e (sektörde Menv olarak bilinir) referanslama, katmanlama, düzenleme ve varyasyon kavramlarını eklemeye ve ihtiyaçlar doğrultusunda geliştirmeye başladı.
Presto(v2.0)
2004 yılına gelindiğinde, Marionette oldukça gelişmişti, ama Pixar mühendislerine göre, ihtiyaç doğrultusunda yapılan eklemelerle evrimleşmiş kökeni, istikrarlı gelişimin sürdürülme ihtimalini zayıflatıyor; çok çekirdekli sistemler gibi önemli araçlardan yararlanma olanağını kısıtlıyordu. Stüdyo, günümüzde Presto olarak bilinen ve ilk olarak Brave filminde kullanılan, ikinci nesil bir animasyon sisteminin tasarımına ve geliştirilmesine odaklandı.
TidScene(v3.0)
Nihayetinde önce, ikili bir veritabanı (Berkeley DB) tarafından desteklenen bir geometri şeması olan TidScene'i oluşturdular. (2009) Sonra önizlemeyi sağlayan yüksek performanslı bir OpenGL eklentisi, gelişmiş katmanlama özelliği, scenegraph izolasyonu (yani sahnenin yalnızca bir bölümünü yükleme), varlık referanslama ve varyasyon desteğini getirdiler. TidScene'in önbellek hızı, ölçeklenebilirliği ve evrensel pipeline (iş akış modeli) erişimi bir başarıydı, ancak Pixar'ı, farklı semantikleri, API'leri ve iş akışlarını kullanan rakip sistemlerle hem iş birliği hem de rekabet mecburiyetine soktu.
Ve Nihayet USD
2012'de başlatılan USD projesinin amacı, Presto'nun (yakın zamanda yeniden tasarlanan ve iyileştirilen) kompozisyon motoru ve düşük seviyeli veri modelini TidScene'in zaman örneklemeli veri modeli ve senaryo grafiğiyle birleştirmekti. USD, Presto'nun kullandığı kompozisyon motorunun üzerine oturan, tamamen yeni bir senaryo grafiği sunuyordu ve sahne tanımlama ve kompozisyon çekirdeğinin tüm seviyelerine paralel hesaplama özelliğini getirmişti. USD projesinin önemli bir bileşeni, Hydra olarak adlandırılan ölçeklenebilir bir veri işleme mimarisiydi. Hydra, şu anda stand alone olarak Presto, Maya, Katana ve Houdini eklentileri dahil pek çok araçla çalışıyor; OpenGL'den ilham alan mimarinin de ötesine geçerek çok güçlü bir platform sunuyor. Gerekirse buna başka bir yazıda ayrıca değiniriz.
Metaverse Neden USD'ye İhtiyaç Duysun ki?
Filmleri ve oyunları ortaya çıkaran, bilgisayar tabalı grafiklerden oluşan iş akış şemaları (sektörde bu şemalara pipeline denir) tipik olarak "sahne tanımı" dediğimiz büyük miktarlarda üç boyutlu veri üretir, bunları depolar ve gerektiğinde iletir. Pipeline'da işbirliği yapan birçok uygulamanın (modelleme, gölgelendirme, animasyon, ışıklandırma, efekt, render vb.) her biri, uygulamanın kendi ihtiyaçlarına ve iş akışlarına göre özelleştirilmiş, başka hiçbir uygulama tarafından okunamayan veya düzenlenemeyen özel sahne tanımlama biçimine (dosya formatına) sahiptir. (Örn: MA dosya formatını sadece Autodesk Maya kullanabilir.)
Evrensel Sahne Tanımı (USD), birçok temel varlıktan (model, doku, materyal, ışık, FX, rig, animasyon vb.) oluşabilecek 3B sahneleri sağlam ve ölçeklenebilir bir şekilde değiştirme, paylaşma ve büyütme ihtiyacını karşılayan ilk açık kaynaklı yazılım platformudur. Hızlı ve kapsamlı şekilde benimsenmiş, sektör devleri tarafından kullanılmaya ve geliştirmeye başlanmıştır. Bu nedenle farklı paydaşlara sahip, yaşayan, değişen, gelişen bir "Metaverse" ideali için, sağlam bir temel oluşturacağı öngörülmektedir.
USD, temel varlıkların (örn. modeller) veya animasyonların sorunsuz biçimde aktarılmasını ve dönüştürülebilmesini sağlar. (Dönüşüm derken, convert yerine exhange sözcüğünü akla getirirseniz, daha doğru bir kavramsal karşılık olur.) Ancak benzerlerinden (Örn: Collada - FBX) farklı olarak USD, istenen sayıda varlığın sanal setler, sahneler ve dünyalar halinde bir araya getirilmesine, bunların uygulamadan uygulamaya aktarılmasına ve tek bir scenegraph'ta tekil, tutarlı bir API ile bozulmadan düzenlenmesine olanak tanır. USD, 3B geometri, gölgelendirme, aydınlatma, fizik ve grafikle ilgili diğer verilerin okunması, yazılması, düzenlenmesi ve hızla önizlenmesi için zengin bir araç seti sağlar. Buna ek olarak, USD'nin çekirdek senaryo grafiği ve kompozisyon motoru herhangi bir özel uygulamadan bağımsız olduğundan, diğer uygulamalardaki verileri kodlamak ve oluşturmak için sürdürülebilir bir şekilde genişletilebilir. Bu özellikler, çok katmanlı, çok paydaşlı, açık ve özgür bir metaverse için gereken her şeyi sunmaktadır.
Metaverse İçin USD'nin Hangi Özellikleri Kullanılacak?
Metaverse'ün Ortak Dili
USD, üç boyutlu verilerin tanımlanması, paketlenmesi, bir araya getirilmesi ve düzenlenmesi için zengin ve ortak bir dil sağlayarak, birden fazla dijital içerik oluşturma uygulamasının kullanımını kolaylaştırıyor.
Diğer birçok evrensel paket gibi USD de "dosya formatı düzeyinde", verilerin nasıl kodlanacağını ve düzenleneceğini belirleyen, low-level bir veri modeli olduğu için, ağ veya dönüştürme gibi kavramlara yönelik API'ler aracılığıyla, düzen sağlayan (genişletilebilir) bir dizi üst düzey şema sunuyor. Bu temel şema üzerine geometri, malzeme, ışıklandırma ve diğer özelliklere sahip varlık tanımları oluşturulabiliyor. Ancak USD, benzerlerinden daha da ileri giderek, primitif öğeleri ve varlıkları bir araya getirmek, çeşitlendirmek ve geçersiz kılmak için kullanılabilen, yüksek performanslı bir motor da sağlıyor. Böylece sahnede özgürce hareket edebiliyor, değişiklik yapabiliyor, iterasyonlar üretebiliyor, veri çıkarabiliyor, ekleyebiliyorsunuz.
Metaverse'teki Ortak Çalışma Alanı
USD, birden fazla sanatçının aynı varlıklar ve sahneler üzerinde iş birliği yapmasına izin veriyor. USD'nin kompozisyon temeli olan "katmanlar operatörü", farklı departmanlardan veya aynı departman içinde birden fazla sanatçının, aynı varlık veya sahne üzerinde eş zamanlı olarak çalışmasını kolaylaştırıyor. Her sanatçının kendi dosyası üzerinde (bunlar katman olarak adlandırılıyor) çalışmasına izin veriyor. Tüm katmanlar, USD dosyalarında açıkça belirtilen bir hiyerarşi ile birleştiriliyor veya açılıyor. Bu hiyerarşi, verileri her anlamda otomatik olarak ayarlayabilen sihirli bir prosedürel node değil, ancak her sanatçının, diğer çalışmaları silmeden veya bozmadan, bağımsız olarak çalışmasına olanak tanıyor. Böylece, net bir denetim / değiştirme izninin sağlanmasıyla, yanlışlıkla bozulan topoloji ya da animasyon vb. sorunlar yaşanmıyor.
Gecikmesiz, Beklemesiz Çalışma
Yüksek kaliteli dijital sanata ulaşmanın en önemli bileşenlerinden biri, bir tasarım, bir varlık, bir animasyon üzerinde hızlı ve sık sık iterasyon yapabilme becerisidir. 3B sanatta iterasyonun önündeki en önemli engellerden biri, bir sanatçının düzenlemelerinin sonuçları hakkında "yeterince iyi" bir görsel geri bildirim alma hızının düşüklüğüdür. Hız, USD projesinin hala çok öncelikli ve devam eden bir hedefi. Bu nedenle algoritmik iyileştirmeleri, modern çok çekirekli sistemlerden ve GPU'lardan yararlanmanın daha iyi yollarını ve uzaktan depolanan verilere erişimde gecikmeyi en aza indirmek için sıkıştırma tekniklerini keşfetmeye hali hazırda devam ediyorlar. Keşiflerin en önemlilerinden biri de USD'yi kullanan NVIDIA Omniverse™ platformuyla gerçekleştirilen iş birliği.
NVIDIA Omniverse Nedir?
NVIDIA Omniverse™, metaverse uygulamaları oluşturmak ve çalıştırmak için Pixar'ın Evrensel Sahne Tanımı ve NVIDIA RTX™ teknolojisini temel alan ölçeklenebilir, çok GPU'lu gerçek zamanlı bir referans geliştirme platformudur. Omniverse araçları ile gelen modüler ve esnek platform, monolitik geliştirmenin yerini alıyor. Çok az kodlama gerektiren veya no-code Python tabanlı geliştirme imkanları sayesinde ekipler; hızlı, verimli ve sürdürülebilir bir şekilde üretim yapabiliyorlar. NVIDIA Omniverse™ üzerinde geliştirme yapmak için daha fazla bilgiyi buradan alabilirsiniz.
USD açık kaynakla dağıtıldığı için pek çok farklı grup ve geliştirici, kendi USD tabanlı iş birliği platformları üzerinde çalışıyor. Omniverse ile NVIDIA'nın da yaptığı bazı özel geliştirmeler var. Bunlar, yapay zeka destekli donanımsal hesaplama kapasitesi, DLSS ve RTX gibi teknolojilerle birleştiği için, Metaverse'ün inşa edilmesinde, yazılım ve donanımın tam anlamıyla bütünleşik hareket edebileceği özel bir fırsat penceresini aralıyor. Örneğin, NVIDIA'nın GPU mimarisindeki geliştirmelerine bağlı olarak USD üzerine eklediği bazı şeyler var. Coğrafi koordinatlar, glTF dosya formatının tanınması, gerçek zamanlı prosedürellik, web tarayıcılarında çalışabilme ve IoT verilerinin gerçek zamanlı akışı gibi gelecekteki birçok özelliği dahil etmek için, USD formatını geliştirmek üzere çalışıyorlar.
Neden NVIDIA Omniverse Örneği Üzerinden Gidiyoruz?
Çünkü, tasarımcılar için -belirli koşullar altında ticari bir lisansla özelleştirilse dahi- en kolay biçimde ulaşılabilir, geliştirilebilir, zengin öğrenme kaynaklarına sahip ve GPU donanımları ile uyumlu USD tabanlı geliştirme/görselleştirme platformunu sunan ilk şirket, tahmin edebileceğiniz üzere NVIDIA oldu. USD'nin VFX'in ötesindeki kullanım senaryoları için de performanslı hale gelmesini hızlandırmak amacıyla, bu ekosistemin sınırlarını endüstriyel, robotik ve yapay zeka uygulamalarıyla test etmeye devam ediyorlar. Bu da "kutsal kase" haline gelen bu ideali, hali hazırda bildiğimiz, denediğimiz interaktif oyun motorlarının ötesine taşıyarak, farklı endüstrileri bir araya getirebilecek gerçek zamanlı bir Metaverse'ün inşasını, ciddi anlamda uygulanabilir hale getiriyor.
Neden USD'ye Metaverse'ün HTML'i Deniyor?
Çünkü USD, kavramsal ve işlevsel olarak HTML'e çok benziyor. Basit ve esnek bir yapı, güvenli, kolay anlaşılır, kolay uygulanabilir bir düzende, referans düzenleyici ve işaretleyici olarak çalışıyor. Tıpkı HTML'in farklı kaynaklardaki farklı dosya türlerini bir araya getirip, bir tarayıcıda -CSS desteğiyle- görsel ve interaktif bir çıktıya dönüştürmesi gibi, USD de üç boyutlu verileri içeren dosya formatlarını, farklı kaynaklardan alıp bir araya getirerek, bir görsel etkileşim arayüzü aracılığıyla kullanıcıların hizmetine sunuyor. Üstelik, tıpkı kendi CSS ve JS eklemelerinizi yaparak HTML'inizi geliştirebileceğiniz gibi, USD üzerinde de Python vb. dillerle geliştirme yaparak değişiklikler sağlayabiliyorsunuz. Dün gerçekleşen NVIDIA GTC 2022'de Unity, Pixar, Adobe ve NVIDIA, USD formatına dayanan NVIDIA Omniverse™ dünyasında işlenen görsel verilerin pek çok evrensel formatta çıktı olarak alınabilmesi için de birlikte çalıştıklarını duyurdu. O nedenle USD'ye "Metaverse'ün HTML'i" benzetmesi yapılıyor. Bu durumda NVIDIA Omniverse™'e de "Metaverse'ün Google Chrome'u" hatta "Visual Studio Code'u" diyebiliriz.
USD ve NVIDIA Omniverse™ Hakkında Daha Fazla Bilgiyi Nereden Öğrenebilirim?
USD'nin tutorial'ları için ilk kaynak Pixar. Sonra NVIDIA'nın web sitesini ziyaret edip, önce NVIDIA Omniverse™ hakkında bilgi edinmeniz ve uygun şartları haizseniz bilgisayarınıza kurmanız gerekiyor.
Benim takip ettiğim başlıca kaynaklar NVIDIA Omniverse™'in YouTube kanalı ve NVIDIA Studio'nun YouTube kanalı. NVIDIA'nın kanalında da çok güzel kavramsal tutorial'lar oluyor. Bu kaynakları taradıktan sonra, YouTube'taki pek çok ücretsiz tutorial'a da göz atabilirsiniz. Henüz ücretli kaynakları deneme fırsatım olmadı; ama bu alanda geliştirme yaptıkça yeni tutorial ve kaynaklar önermeye elbette devam edeceğim.
Bu Konu Hakkında Kendisini Kimler Geliştirmeli?
Bence herhangi bir sınırlama yok. Birlikte çalışma ve üç boyutlu devasa dünyalar geliştirme ihtiyacı duyan herkes, bu teknolojileri kayıtsız-şartsız öğrenmeli. Lakin, Troy perspektifinden bakarsak, web3 ekosisteminde, gerçek ve uygulanabilir metaverse'ler inşa etmek isteyen herkesin, bu teknoloji ve standartları öğrenmesi gerektiğini düşünüyorum. Çünkü NVIDIA Omniverse™ ve USD, kendi kapalı ekosisteminde, para verdiğiniz müddetçe kullanabildiğiniz kapalı devre uygulamalar olmayacak. Yapay zeka, mimari görselleştirme, grafik, VFX, oyun, sağlık, veri, tedarik zinciri, robotik vb. farklı alanlarda hemen hemen tüm devler, hali hazırda bu çözümleri ve uygulamaları kullanmaya başladı bile. Gelecekte, kendinize yer bulabilmek için mutlaka öğrenmeniz gereken teknolojilerin başında bunlar geliyor. Bu konuda referans olabilecek içerikler ve rehberler hazırlamaya devam edeceğiz.
Bize destek olmak isterseniz, bu içeriği sosyal medya kanallarında paylaşabilirsiniz. Zaman ayırdığınız için tekrar teşekkürler.
Troy Hakkında
Troy, Türkiye'nin ilk ve en büyük Gaming DAO'su olarak, web3 oyunlarını, NFT'leri, GameFi dünyasındaki proje ve fırsatları, Türkiye'deki her yaştan, cinsiyetten ve bölgeden oyuncu ile tanıştırmak üzere çalışıyor. Amacımız, geleneksel web2 oyunlarını oynayarak eğlenen, öğrenen, kendini geliştiren tüm oyuncuları, aynı zamanda gelir elde edebilecekleri ve hızla büyüyen bir endüstride üretim yapabilecekleri şekilde web3'le tanıştırmak, onları en iyi projelerle bir araya getirmek ve yollarındaki taşları temizleyerek, her şeyi sadeleştirip kolaylaştırmak. Bize katıldığın için teşekkür ederiz.
Web Sitesi | Discord | Twitter | Instagram | Facebook | TikTok | YouTube