GLFW Nedir? - Mustafa Sabri OĞUZ

Duyurular

9 Şubat 2014 Pazar

GLFW Nedir?

GLFW, çoklu platformlarda pencere oluşturmakla birlikle OpenGL içeriği, olay ve girdileri yöneten bir açık kaynak kütüphanesidir. Mevcut uygulamalarınızı rahatça entegre edebilir, ayrıca mainloop (ana döngü) olması zorunluluğu yoktur.

GLFW, C dili ile yazılmış ve Windows, OS X ve Linux ve FreeBSD gibi X Pencere Sistemini kullanarak birçok Unix benzeri sistemler için yerel destek sağlamıştır.

GLFW, zlib / libpng'nin lisansı altında lisanslanmıştır. Yani sahibine bağlı kalarak, ticari maksatla da kullanabilirsiniz. (Yanlış biliyorsam, lütfen düzeltin...)


Neden GLFW kullanmalıyım?

En başta ki özellik yapacağımız uygulamalar için basit, taşınabilir ve güncel olması. Normalde bir OpenGL uygulaması geliştireceğimiz zaman bulunduğumuz platformun (işletim sisteminin) uzun ve sıkıcı Api'leriyle boğuşmamız gerekiyor. Ayrıca ikinci bir platformda uygulamanın çalışması için o platformunda Api'lerini öğrenmemiz gerekirdi.

Fakat GLFW kütüphanesi sayesinde, uygulamanın kodları diğer platformlara taşınabilir olacak, böylece sıkıcı Api'leri öğrenmek veya yazmak zorunda kalmamış olacağız.

GLFW kütüphanesinin diğer kütüphanelerinden farkı nedir?

Bilmeyenler için yazayım, günümüzde GLFW'e benzer başka kütüphanelerde mevcuttur.
  • FreeGlut
  • SDL
  • Allegro
  • SFML
  • Aklıma şimdilik bu kütüphaneler geldi, isteyen eksikleri yorum olarak ekleyebilir.
GLFW, bu kütüphanelerle kıyaslandığında çok basit kalır. Çünkü sağladıkları özellikler bakımından daha yalındır. Misal SDL, Allegro ve SFML kütüphaneleri birbirine benzerdir. Bu kütüphanlerin resim, ses, yazı tipi (font) vb. yükleme kütüphaneleri içinde barındırır. GLFW'in şuan için böyle kütüphaneleri bulunmuyor, belki ileri ki zamanlarda eklenir.

FreeGlut'dan farkı ise projenin halen devam etmesi ve bu nedenle güncel olması. FreeGlut hakkında ek özellikler, örnek shape (şekil, küp, slidir, küre, çaydanlık) modellerinin bulunması, arayüz(gui) ve font desteği bulunmaktadır.

Eğer GLFW, programlama seviyenizin ihtiyaçlarını karşılayamıyorsa, üsteki kütüphanelerden birini kullanabilirsiniz.

Özetle
GLFW, farklı işletim sistemlerinde basit bir şekilde OpenGL pencere oluşturmamızı ve girdileri (input) kontrol etmemize olanak sağlar. İleri ki günlerde GLFW3 kullanımı hakkında yazı ve videolar yayınlamayı düşünüyorum. Umarım yazı ve videolarımı beğenerek takip edersiniz...

Referans:
http://www.glfw.org

2 yorum:

  1. 3 boyutlu geniş kapsamlı, çok platformlu bir oyun yazacak geliştiriciye hangi kütüphaneyi önerirsiniz?

    YanıtlayınSil
    Yanıtlar
    1. 3 Boyutlu Grafik tasarımında OpenGL'i, Pencere Kütüphanesi olarak, programlamada henüz kendinizi geliştirme aşamasında iseniz, SDL yada Allegro kütüphanelerini önerebilirim. Lakin yeterince deneyiminiz olduğunu düşünüyorsanız: GLFW

      Sil