Android Q, 2D oyun geliştirmeyi kolaylaştırmak için ANGLE'ın Vulkan arka ucunu destekleyecek

Artık Android Q'nun, 2D oyun geliştirmeyi kolaylaştırmak için ANGLE'ın Vulkan arka ucunu destekleyeceğini biliyoruz. Bunun ne anlama geldiği hakkında daha fazla bilgi edinmek için okumaya devam edin.

Vulkan API'si Android desteği Android Nougat ile duyuruldu Google I/O 2016'ya geri dönüyoruz. Fikrinizi tazelemek için bu API, geliştiricilerin düşük seviyeli donanım üzerinde daha fazla kontrol sahibi olmasına yardımcı olur. Bu tür bir erişim, ilgili birimlerin işlem ve grafik gücünden daha iyi yararlanmalarına ve oyunların mümkün olduğunca sorunsuz çalışacak şekilde optimize edilmesine yardımcı olur. Oyun çalıştırmak gibi güç gerektiren her türlü görevde doğru bellek tahsisi ve iş parçacığı yönetiminin önemli olması şaşırtıcı değildir. Bu, Xbox One ve PlayStation 4 gibi popüler konsolların uzun süredir yaptığı şeydi; geliştiricilere cihazların içindeki donanım üzerinde düşük düzeyde kontrol sağlıyordu.

İlginç olan, Vulkan'ın platformlar arası grafik uygulamalarını hedefleyen, platformlar arası bir açık standart olmasıdır. Bu senenin başlarında,

bir ipucu bulduk Android Q'nun kullanıcı arayüzü öğelerini Vulkan API aracılığıyla oluşturabileceğini. Bu, sistemin düzgünlüğünü daha da geliştirmek için atılacak bir adım olacaktır. Artık Android Q'nun 2D oyun geliştirmeyi kolaylaştırmak için kesinlikle ANGLE'ı destekleyeceği bilgisini aldık.

ANGLE nedir?

ANGLE bir kısaltmadır ve "Neredeyse Yerel Grafik Katman Motoru" anlamına gelir. WebGL'nin yükselişi, oluşturucuyu desteklemeye yönelik standartlaştırılmış bir çözüm ihtiyacını ortaya çıkardı. OpenGL sürücüleri Windows platformunda uzun süredir pek kararlı değildi. Böylece ANGLE, OpenGL kodunu Windows'ta yerel olarak desteklenen bir API olan Direct3D'ye çevirerek her şeyi tamamen yeni bir seviyeye taşıdı. ANGLE'ın ana hedefi, WebGL ve OpenGL ES içeriğini platformda bulunan donanım destekli bir API'ye çevirerek OpenGL'i herkes için taşınabilir ve erişilebilir hale getirmektir. Aynı prensibi kullanarak ANGLE, OpenGL kodunu Android'deki Vulkan koduna çevirecek; zira ilki, işletim sisteminde resmi olarak desteklenen bir donanım API'si. Muhtemelen ANGLE'ı her gün farkında olmadan kullanıyorsunuz. ANGLE, masaüstü için Google Chrome ve Mozilla Firefox web tarayıcılarına yerleşiktir. Windows'ta bu tarayıcıların içindeki herhangi bir grafik içeriği oluşturmak için kullanılır.

OpenGL ES vs Vulkan

Khronos Grubu, ANGLE'ı Vulkan'da OpenGL'nin ana oluşturucusu yapmak için çok çalışıyor. Birçoğunuz OpenGL'den kurtulmanın gerekliliğini Vulkan'ın lehine görmeyebilir, ancak kesinlikle geliştirilecek noktalar var. Bu noktada OpenGL API antika bir teknoloji olarak değerlendirilmektedir. İlk olarak 1992'de, yani 26 yıl önce piyasaya sürüldü. 26 yıl bazılarınız için pek bir şey ifade etmeyebilir ama konu teknoloji gelişimi olunca astronomik bir rakam. 2016 yılında dünya, bir sonraki seviye grafik API'si olan Vulkan'la tanıştı. Ancak daha yeni, otomatik olarak daha iyi anlamına gelmez, değil mi? Vulkan'ın neden OpenGL/OpenGL ES'den çok daha iyi olduğunu açıklayayım.

Eğer OpenGL ES ile daha önce ilgilendiyseniz, bunun büyük. API'nin 300'den fazla uzantısı var ve kullanımı hiç de kolay değil. Vulkan, çok daha küçük bir API ve grafiklerin doğrudan kontrolünü sunarak her şeyi tamamen yeni bir seviyeye taşıyor. Uygulanması da daha kolaydır. Vulkan, OpenGL ES'den daha düşük bir seviyede çalışsa da bu, kontrol için daha fazla güç anlamına gelir. Vulkan'da iş parçacığı ve bellek yönetimi tamamen oyunun geliştiricisine bırakılmıştır, böylece kaynakları yeterince kullanabilirsiniz. Ayrıca Vulkan'ın mobil ve masaüstü versiyonları arasında çok küçük bir fark var ve bu da oyunların taşınmasını çok kolaylaştırıyor. Kısaca söylemek gerekirse Vulkan, belirli bir cihazda bulunan grafik kartının tüm potansiyelini açığa çıkarmanıza olanak tanıyan düşük seviyeli bir sürücüdür.

Neden ANGLE?

ANGLE'ın ilk avantajı açık standartlı bir platform olmasıdır. Projeye katkıda bulunmanın tonlarca yolu var. Sürücüyü cihazlarınızda test edebilir, hataları bildirebilir, hataları düzeltebilir, geliştiricilerin çözüm bulmasına yardımcı olabilir, öneriler gönderebilir, geliştirmeye biraz para bağışlayabilirsiniz vb. Bütün bunlar gelişme hızını artıracak. OpenGL ES ile karşılaştırıldığında bir sonraki büyük artı taşınabilirlik ve platformlar arası destektir. ANGLE'ın doğası hem platform hem de oyun geliştiricilerin işini kolaylaştırıyor. ANGLE'ı sürdürmek ve uygulamak, önceki uygulamalara göre çok daha kolaydır. OpenGL o kadar parçalı ki, hataları takip etmek ve bunları farklı cihazlarda düzeltmek geliştiriciler için büyük bir sıkıntı. Gerekli tüm sürücüleri ANGLE'da merkezileştirmek, geliştiricilerin bunları uygulamada daha kolay zaman geçireceği anlamına gelir. ANGLE geliştiricisi Jamie Madill, ANGLE'ın Android platformunda Google Play Store aracılığıyla düzenli güncellemeler alacağını bizimle doğruladı. Sürücüleri yerleşik birinci taraf pazarı aracılığıyla güncellemek iyi bir fikirdir çünkü sürücü her güncellendiğinde kullanıcının tüm sistemi güncellemesi gerekmeyecektir. Ayrıca geliştiricilerin, ANGLE'ın bir şeyi her değiştirişinde kod üzerinde oynama yapmasına gerek kalmayacak. ANGLE'ın Android oyun geliştirmeye nasıl fayda sağlayabileceğini anlatan bir videoyu burada bulabilirsiniz.

Gördüğünüz gibi ANGLE, eski OpenGL ES'ye göre çok sayıda iyileştirmeye sahip. Android Q'nun ilk geliştirici önizleme sürümü o kadar da ileride değil, bu yüzden bekleyip ANGLE'ın pratikte nasıl çalıştığını görebiliriz. Buna göre bu taahhüt, kullanıcılar geliştirici seçeneklerinden tüm uygulamaları ANGLE ile çalışmaya zorlayabilecek. Oluşturucu desteği zaten birleştirildi OEM'lerin test etmesi için Android Pie şubesine. ANGLE'ın gelişimini aşağıdaki web sitesinden ve GitHub deposundan takip edebilirsiniz.

XDA Kıdemli Üyesine teşekkürler XxPixX ipucu için!

ANGLE web sitesiGitHub deposu