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.

Yazılım mimarisi 
GLFW, 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
GLFW, 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).

Bağlantılar
GLFW Anasayfa

Kaynakça 

OpenGL
C ile programlanmış ücretsiz yazılımlar
Çapraz platform yazılımları
C kütüphaneleri
Uygulama programlama arayüzü