Skip to content
Go back

(Vulkan Serisi) 1 - İçerik Dizaynı

Başlarken Vulkan’ın genel özelliklerine ve nasıl çalıştığına değinecek; başlangıçta beraber ekrana bir üçgen çizeceğiz. Bu aşamada gerçekleştireceğiniz küçük adımlar, ilerleyen bölümlerde daha anlamlı hale gelecek ve tüm yapbozu birleştirmemize yardımcı olacaktır.

Daha sonra, lineer cebir işlemleri için GLM kütüphanesini, pencere oluşturma için GLFW’yi ve gerekli geliştirme araçları için Vulkan SDK’yı kullanarak geliştirme ortamını kuracağız. Yazıda, bu araçların Windows’ta Visual Studio veya Ubuntu Linux’ta GCC ile nasıl kurulacağı ele alınmamaktadır. İlgili kurulum aşamalarını bu link üzerinden takip ederek tamamlayabilirsiniz. Çoğunlukla Vulkan Tutorial üzerindenki pratikler ve anlatımlar üzerinden ileryeceğiz.

Uygulama Aşamaları

Ekrana üçgen çizdirmek için gerekli tüm temel bileşenler, Vulkan programımıza aşağıdaki adımlarla entegre edilecektir:

Her bölüm, kendisinden önceki aşamayı takip edecek şekilde tasarlanmıştır. Bununla birlikte, her bir bölümü bağımsız olarak da okuyabilirsiniz; böylece belirli bir konuda bilgi sahibi olmak isteyenler için referans niteliği taşır.

Vulkan API Dokümantasyonu

Yazıda geçen tüm Vulkan türleri (types) ve fonksiyonları ilgili API dokümantasyonuna bağlantılarla yönlendirilmiştir. Vulkan nispeten yeni bir API olduğu için dokümantasyonda sık güncellemeler yaşanabilir. Geri bildirimlerinizi Khronos Group’un resmi deposu üzerinden iletebilirsiniz.

Vulkan, diğer grafik API’lerine kıyasla donanım üzerinde daha fazla düşük seviye kontrol sağlamaktadır. Bunun sonucu olarak, basit işlemler bile çok sayıda parametre yönetimi gerektirir ve tekrarlayan kod parçalarına yol açar. Bu nedenle, soyutlama için helper fonksiyonlar kullanılacaktır.

Kod Yapısı ve İlerleme

Her bölümde, o ana kadar tamamlanmış kodun bağlantısı paylaşılacaktır. Kod yapısı hakkında emin olunmadığında veya hata alındığında, referans kodlar incelenerek karşılaştırma yapılabilir. Kodlar farklı marka ve modeldeki grafik kartlarında test edilmiştir.

Vulkan hâlâ gelişmekte olan bir API’dir; bu nedenle burada açıklanan yöntemler zamanla evrilebilir. En iyi uygulamalar henüz tam olarak standartlaşmamıştır.


Share this post on:

Previous Post
(Vulkan Serisi) 2 - Giriş
Next Post
Legendre Polinomlarının Ortogonalite İntegrali