GLFW
GLFW, temelde ve ilk olarak OpenGL ile kullanılmak üzere geliştirilmiş hafif bir yardımcı kütüphanedir. Programcıya, üzerinde çalışılan işletim sisteminden bağımsız olarak OpenGL ve Vulkan için 'context' ve pencere yaratma, klavye, fare, oyun çubuğu girdi ve çıktılarını yönetme kolaylığı sağlar.
Geliştirici(ler) | GLFW geliştirici takımı |
---|---|
Güncel sürüm | 3.2.1 / 18 Ağustos 2016 |
Geliştirme durumu | Aktif |
İşletim sistemi | Windows, Mac OS X, Linux |
Tür | Yazılım Kütüphanesi |
Lisans | zlib/libpng |
Resmî sitesi | www.glfw.org |
Kod deposu |
Yazılım mimarisi
değiştirGLFW, küçük bir C kütüphanesidir ve programcının OpenGL, Vulkan kaynağına sahip pencereler yaratıp yönetebilmesine, tanımlı farklı monitör ve video modlarını kullanabilmesine, standart bilgisayar giriş çıkış aygıtlarıyla OpenGL'i ilişkilendirebilmesine yardımcı olur. GLFW, uygulamaların ilgili grafik API'sinin çıktılarına zemin olabilecek oldukça ince birçok-platform soyutlama katmanı sunar. GLFW, çok-platformlu uygulamalar geliştirmek için uygun olduğu gibi, tek platform üzerinde uygulama geliştirmek isteyen programcıların da üzerinde çalıştıkları işletim sisteminin özel API'leriyle cebelleşmesini önler.
GLFW türü kütüphaneler; OpenGL gibi API'lerin sunmadığı pencere yönetimi, kullanıcı girdi-çıktı işlemleri gibi olayları yönetmek için üretilirler. Etrafta bu işi yapan freeglut, SDL gibi daha pek çok kütüphane mevcuttur. freeglut, GLUT'un açık kaynak implementasyonudur. Ancak, freeglut'un yalnızca eski GLUT'a bire bir alternatif olması ve SDL'nin de çok büyük bir kütüphane olması yalnızca OpenGL'e odaklanmak isteyenler için yeni kütüphaneleri zorunlu kılmaktadır. İşte bu noktada hafifliği, modern tasarımı ve yalnızca OpenGL için araçlar sunması dolayısıyla GLFW öne çıkar.
GLFW,
- bir kullanıcı arabirimi kütüphanesi sunmaz. Programcı, GLFW'yi kullanarak OpenGL kaynağıyla (context) ilintilendirilmiş bir üst seviye pencereyi kolayca yaratabilir. Ancak menu, düğme gibi GUI elemanları sağlamaz.
- yalnızca Windows kütüphanesi değildir. Windows'a özgü karmaşık özellikler içermez.
- threading (çoklu iş parçacığı) kütüphanesi değildir. Bunu gerçekleştirebilmek için piyasadaki üçüncü parti kütüphaneler kullanılabilir. Üstelik C++11 gibi C++ sürümleriyle bunlar dile de eklenecekler.
- bir resim yükleme kütüphanesi değildir.
- bir render kütüphanesi değildir. OpenGL kullanarak bunu yapmak, programcının sorumluluğundadır.
- ses dosyaları çalamaz veya işleyemez.
- GLUT veya SDL değildir.
Kullanılabileceği programlama dilleri
değiştirGLFW, C ile yazılmıştır ancak diğer dillerle de çalışabilecek bağlayıcılara sahiptir Ada, C Sharp, Common Lisp, D (programlama dili), Go (programlama dili), Haskell (programlama dili), Java (programlama dili), Python, Rebol, Red (programlama dili), Ruby (programlama dili) ve Rust (programlama dili).[1]
Bağlantılar
değiştirGLFW Anasayfa 13 Aralık 2014 tarihinde Wayback Machine sitesinde arşivlendi.
Kaynakça
değiştir- ^ "GLFW Programlama Dili Bağlayıcıları". 17 Haziran 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 4 Mart 2014.