Tavsiye, 2024

Editörün Seçimi

Vulkan API: Bilmeniz Gereken Her Şey

En son teknolojilerden haberdar olmak için Vulkan'ı duymuş olmalısın. Vulkan API, mevcut endüstri standardı OpenGL'in arkasındaki insanlar olan Khronos Group tarafından açıklanan en yeni ve en iyi grafik API'leridir. Proje adı Vulkan, 2015 yılında Oyun Geliştiricileri Konferansında resmen duyuruldu ve API'nin ilk sürümü Şubat 2016'da başlatıldı. Yeni API, oyun grafiklerini bir sonraki seviyeye çıkarmayı hedefliyor. detaylar, size vermek için buradayız.

Vulkan API'sinin ne olduğunu, öncül OpenGL'sinden ne kadar farklı olduğunu ve Vulkan API'nın yakın gelecekte oyunların ve diğer grafik yoğun uygulamaların geliştirilme şeklini nasıl değiştirebileceğini tartışıyoruz. Render ve grafik dünyasındaki bu heyecan verici gelişme hakkında bilgi edinmek için okumaya devam edin.

Vulkan API Nedir?

Birkaç yıl önce, AMD 3D oyunları hedefleyen API'yi savunan Mantle'yi gösterdi ve grafik oluşturmada daha hızlı bir çözüm olma vaadi gösterirken, AMD projeyi öldürdü. Daha sonra AMD, Mantle API bileşenlerini oluşturma için standart bir API geliştirmek için Khronos Grubuna verdi. Sonuç, yeni Vulcan API'sı.

Vulkan API, bugünlerde her yerde bulunan çok çekirdekli işlemcileri daha iyi kullanabilen ve aynı zamanda CPU ve sistemin GPU'suna daha doğrudan erişime sahip programlar sağlayacak olan düşük maliyetli bir API'dir. Aynı zamanda işletim sistemi agnostiğidir. Bu, Vulkan API'sini kullanan uygulamaların kolayca taşınabilir olacağı anlamına gelir.

Hevesli oyuncular ve oyun meraklıları olarak, oyunların yakında nasıl geliştirileceğinin geleceğine ve (eğer varsa) oyun deneyimimizi nasıl geliştireceğine bakmaya karar verdik.

Özellikler

Vulkan API, kendinden önceki OpenGL'den farklı ve daha iyi hale getiren birçok özelliğe sahiptir:

1. Vulkan API, çok çekirdekli bir ortamda her çekirdekte işlem yüklerini eşit olarak dengelemeye çalışır. Bu, işlemcideki her çekirdeğin kullanıma alındığı ve böylece verimliliği en üst düzeye çıkardığı anlamına gelir.

  • Bu, çok fazla arama gerektiren gerektiren grafik oluşturmada çok belirgin bir fark yaratacaktır.
  • Eski API'lerde, çoğu zaman, CPU'nun bir darboğazı var. Ancak Vulkan, çok çekirdekli işlemcileri böyle iyi bir kullanıma soktu, bunun yerine GPU'da bir darboğaz bulunması ihtimali daha fazla.

2. Vulcan API, GPU’ya doğrudan erişim sunacak ve bu sayede arama çağrıları ve diğer GPU tesisleri için GPU’ya erişimde gereksiz genel masrafların önlenmesini sağlayacaktır.

  • Bu, daha ağır oyunların şu anda olduğu kadar yoğun CPU olmayacağı anlamına geliyor. Ayrıca, sürücüler GPU'ya erişim sağlamada daha küçük bir rol oynayacak ve bu da bilgi aktarımını çok daha hızlı hale getirecektir.

3. API aynı zamanda tamamen platformlar arası olacak şekilde tasarlanmıştır.

  • Cep telefonları, masaüstleri ve konsollar için daha fazla dallanan API yok. Vulkan API, uyumlu bir GPU ile her cihazda aynı olacaktır.

4. OpenGL GPU belleği kullanımını ve senkronizasyonunu gizli tutarken, Vulkan bunu ortaya koyar ve geliştiricilere GPU'yu ve nasıl kullanıldığını daha iyi kontrol etmesini sağlar.

  • Vulkan, geliştiricilerin GPU'nun dokuları nasıl biçimlendirdiğini, belleği yönettiğini ve senkronizasyonu nasıl gerçekleştirdiğini kontrol etmelerini sağlar.
  • Bununla birlikte, platformlar arası uyumluluğu korumak için yeterli bilgiyi hala gizlemektedir.

5. Vulkan, paralel hesaplama ve grafikler için SPIR-V ara dilini kullanır. SPIR-V, önceki sürümleri gibi, SPIR1.2 ve SPIR2.0, SPIR-V'nin LLVM kullanmadığı farkıyla Khronos Grubu tarafından geliştirilmiştir. SPIR-V, Vulkan'ın her platformda ortak bir ön uç derleyicisine sahip olmasını sağlar. Geliştiricilerin ayrıca çekirdeği, gölgelendirici kodunu göndermesi gerekmez ve sürücü uygulaması kolaylaştırılmıştır.

Vulkan son kullanıcılar olarak bize nasıl yardımcı olabilir?

Vulkan API, geliştiriciler tarafından tam potansiyeline uygulandığında, son kullanıcının (bu siz ve ben!) Oyun deneyimini büyük ölçüde geliştirebilir. Mobil cihazlarda konsol düzeyinde grafikler, belki de yetkili işlemcilere sahip üst düzey bayrak gemileri için masaüstü kalitesinde grafikler düşünün!

1. Bugünlerde çoğu mobil SoC aynı zamanda çok çekirdekli olduğu için Vulkan , işlemcileri mümkün olan en yüksek ölçüde kullanacak ve oyunları daha yumuşak (daha yüksek FPS) yapacaktır.

2. Ayrıca, Vulkan, cihazın GPU'suna düşük bir erişim olanağı sağladığından, oyunların artık GPU kaynaklarına erişim için harcanan zamanı büyük ölçüde azaltabileceği anlamına geliyor. Bir kez daha, bu GPU'nun özelliklerinden azami faydalanarak saniyede daha yüksek karelerde daha iyi grafiklere dönüşür .

3. Çapraz platform yetenekleri, oyunlar için taşınabilirliği kolaylaştırmak sizi son kullanıcı olarak doğrudan etkilemeyebilir, bu da en sevdiğiniz oyunların ve yoğun grafikli uygulamaların hemen hemen her platformda mevcut olabileceği anlamına gelir. Olasılıklar sınırsız ve sadece hayal gücümüzle sınırlı.

4. Oyunlar, GPU'nun daha fazla dikkat etmesini sağlayarak (okuma: daha fazla bellek ayırır ve tercih verir), kullanıcının hemen görebildiği şeyleri oyunun gecikmelere ve kare düşmelerine karşı daha bağışıklık kazanmasını sağlayarak daha yumuşak bir performans sağlayabilir. .

Geliştiriciler için Seçenekler

Grafikler için düşük seviyeli, düşük masraflı bir API şüphesiz ki iyi bir fikir olsa da, her bir geliştirici, özellikle de yenileri için belirgin bir çekim değildir. Daha düşük bir seviyede, donanım seviyesine daha yakın olan bir programlama, daha yüksek bir seviyede programlamaya göre biraz daha fazla yetenek gerektirir, ki bu daha soyutlanmıştır. Bu hiçbir şekilde bir şok edici değildir. Bu oldukça açıktır ve geliştiricilerin Vulkan'ı geliştirme projeleri için nasıl kullanacaklarına dair üç farklı seçeneğe sahip olmalarının nedeni tam da budur.

1. Vulkan API'sini doğrudan kullanın

  • Bu donanıma en düşük düzeyde erişim sağlayacak ve açıkça herkes için bir seçim olmayacak. Ancak, bu seviye Vulkan kullanılarak geliştirilen diğer uygulamalar için kıyaslama araçları oluşturmak için kullanılabilir.

2. Kütüphaneleri Kullanın

  • OpenGL'den Vulkan'a geçiş yapan geliştiriciler için muhtemelen en uygun seçenek.
  • Çoğu kitaplık açık kaynak olacaktır, bu nedenle OpenGL kullanarak geliştirme deneyimi olan geliştiriciler, OpenGL uygulamalarını tam bir revizyon veya sıfırdan başlamak yerine nispeten kolay bir şekilde Vulkan API'sına deneyebilir ve taşıyabilir.

3. Vulkan ile Optimize Edilmiş Oyun Motorlarını Kullanın

  • Geliştiricilerin çoğunun gireceği yerin burası olduğundan eminiz. Oyun motorları iyi kurulmuş, deneyimli, ağır sanayi ağırlıkları tarafından tasarlanmış ve geliştirilmiştir ve geliştiriciler tarafından (hem deneyimli hem de yeni başlayanlar) avantajları kullanan oyunlar oluşturmak için kolayca kullanılabilir. Vulkan API tarafından sunulmaktadır.
  • Epic Games (Unreal Engine) ve Unity (Unity Engine) gibi geliştiriciler Vulkan'ı yaklaşmakta olan motorlarında desteklediklerini duyurdu ve daha birçokları takip etmeyi planladığını açıkladı.

Ayrıca bkz: APFS'yi anlamak : Apple'dan yeni dosya sistemi

Heyecanlanmak!

Makalenin sizi ikna etmemesi durumunda… heyecanlanın! Şimdi! Vulkan, oyun yaşamımızı iyileştirecek grafik API'lerde çığır açan bir gelişme olmayı vaat ediyor. Vulkan ve OpenGL performansı arasında bir karşılaştırma videosu var ve sonuçlar - oldukça basit - şaşırtıcı. Bu videolar herhangi bir gösterge ise, cep telefonları da dahil her yerde inanılmaz grafik kalitesi elde etmeye hazırlanın, tümü Vulcan API'sinin gelmesi sayesinde!

Peki, Vulkan hakkında ne düşünüyorsun? Mevcut OpenGL standardı üzerinde büyük bir gelişme olacağını düşünüyor musunuz? Aşağıdaki yorumlar bölümünde bize bildirin.

Top