OpenGL Nedir ?

Rainbow

Kayıtlı Üye
Kayıtlı Üye
Katılım
29 Haz 2019
Mesajlar
42
Tepkime puanı
31
Puanları
18
OpenGL ( Open Graphics Library, Açık Grafik Kütüphanesi), gelişmiş donanım desteğini kullanarak hem iki hem deüç boyutlu grafikleri ekrana çizmek için kullanılan ücretsiz bir grafik uygulama geliştirme arabirimidir. Window,Linux, macOS, Solaris gibi birçok iletim sistemi yaygın olarak ve Playstation başta olmak üzere bazı oyun konsollarınca desteklenir. Donanım tarafında ise SGI, ATI, Nvidia veya Intel gibi büyük üreticiler her ekran kartında OpenGL desteği sunar.

1992 yılında ilk taslağı yaratılmış olan bu standart, günümüzde 4.1 sürümüne ulaşmıştır ve 700 üzerinde fonksiyona sahiptir. Çoklu platform desteği içeren uygulamalar ve özellikle de deneysel ve bilimsel araçlarda açık arayla önde ve standart olarak kullanılmakta olan platform OpenGL’dir.

Taşınabilir

Bu kitaplık işletim sisteminden ve işletim sisteminin çalıştığı platformdan bağımsızdır. Nasıl ki ekrana yazı yazmak kullanıcıdan veri almak ANSI C’de printf() ve scanf() gibi işlevlerle standartlaştırılmış ve hangi işletim sistemine giderseniz gidin bu iki işlev aynı işi yapıyorsa, OpenGL kitaplığı da ekrana grafik çizmeyi standartlaştırmıştır. OpenGL sayesinde grafik kartının modeli veya işlemcinin mimarisi gibi donanımsal etkenlerden bağımsız programlama yapılır. Ayrıca aynı zamanda işletim sisteminden de bağımsız programlama yapılır. Kolay kullanım ve bu “taşınabilirlik” özellikleri yüzünden OpenGL popüler bir araç olmuştur.


Platform Bağımsız

OpenGL kullanan bir programı işletim sisteminizde çalıştırmanız için öncelikle işletim sisteminizde programın çalışırken kullanacağı işlevleri içeren kitaplığın bulunması gerekir, bu kitaplıkların genel adı “runtime-library”, türkçesi çalışma anı kitaplığıdır.

OpenGL çalışma anı kitaplığı Linux, Unix, Mac OS, OS/2, Windows 95/98/NT/2000, OPENStep ve BeOS işletim sistemlerinde hali hazırda mevcuttur. Windows işletim sistemi ailesinde standart olarak gelir. Yani OpenGL kullanan bir programı çalıştırmak için bir çaba harcamazsınız.

OpenGL kullanılarak yazılmış programlar, Win32, MacOS ve X-Window pencere yöneticilerinde sorunsuz çalışırlar.
Bir çok programlama dilinde kullanılabilir.

Ada, C, C++, C# (SharpGL adı verilen sınıflar sayesinde), Fortran, Python, Perl ve Java programlama dilleri kullanılarak OpenGL kitaplığından faydalanılabilir.


Not:
Taşınabilirlikten bahsetmişken GLUT’danda söz etmek gerekir. OpenGL platformdan bağımsız olduğu için bazı işlemler bu kitaplık ile yapılamaz. Örneğin;

kullanıcıdan veri almak, bir pencere çizdirmek gibi işler hep kullanılan pencere yöneticisi ve işletim sistemine bağlıdir. Bu yüzden bir an için OpenGL’in bu durumlarda platforma bağımlı olduğunu düşünebiliriz. Çünkü penceresini her pencere yöneticisinde farklı çizdirecek bir canlandırma programı yazmak demek her bilgisayarda çalışacak ayrı pencere açma kodu yazmak demektir. Bu ise OpenGL’in doğasına aykırıdır. Neyse ki OpenGL Araç Kiti (GLUT – OpenGL Utility Toolkit) var da yazılım geliştiricileri bir platforma bağlılıktan tamamen kurtarıyor.GLUT, birçok işletim sistemine aktarılmış bir kitaplıktır. Amacı OpenGL programlarının pencerelerini oluşturmak, klavye ve fareden veri almak gibi ihtiyaçlarını karşılamaktır.GLUT olmadan da OpenGL programlama yapılabilir, örneğin Linux’ta kullanılan X-Window sistemin kendi işlevleri kullanılarak pencere çizdirilebilir fakat bu kod sadece X-Window’da çalışır. Kod Windows’a götürülüp derlendiğinde çalışmaz, çünkü Windows’da X-Window işlevleri yoktur!Bu yüzden bu belgede GLUT kitaplığı kullanılarak klavye ve fare için işletim sisteminden bağımsız giris/çıkış işlemleri yapılması sağlanmıştır.
 

EGEMENAKMAN

Kayıtlı Üye
Kayıtlı Üye
Katılım
29 Tem 2019
Mesajlar
88
Tepkime puanı
15
Puanları
8
Konum
phantom
173


openGL desteklemiyor mu? çünkü minecraft vb oyunlarda openGL hatası alıyorum
 

#MorpHeus

Kayıtlı Üye
Kayıtlı Üye
Katılım
25 Ağu 2019
Mesajlar
41
Tepkime puanı
4
Puanları
8
Konum
ᴺᴼᴿᴹ ᴱᴺᴰᴱᴿ
OpenGL ( Open Graphics Library, Açık Grafik Kütüphanesi), gelişmiş donanım desteğini kullanarak hem iki hem deüç boyutlu grafikleri ekrana çizmek için kullanılan ücretsiz bir grafik uygulama geliştirme arabirimidir. Window,Linux, macOS, Solaris gibi birçok iletim sistemi yaygın olarak ve Playstation başta olmak üzere bazı oyun konsollarınca desteklenir. Donanım tarafında ise SGI, ATI, Nvidia veya Intel gibi büyük üreticiler her ekran kartında OpenGL desteği sunar.

1992 yılında ilk taslağı yaratılmış olan bu standart, günümüzde 4.1 sürümüne ulaşmıştır ve 700 üzerinde fonksiyona sahiptir. Çoklu platform desteği içeren uygulamalar ve özellikle de deneysel ve bilimsel araçlarda açık arayla önde ve standart olarak kullanılmakta olan platform OpenGL’dir.

Taşınabilir

Bu kitaplık işletim sisteminden ve işletim sisteminin çalıştığı platformdan bağımsızdır. Nasıl ki ekrana yazı yazmak kullanıcıdan veri almak ANSI C’de printf() ve scanf() gibi işlevlerle standartlaştırılmış ve hangi işletim sistemine giderseniz gidin bu iki işlev aynı işi yapıyorsa, OpenGL kitaplığı da ekrana grafik çizmeyi standartlaştırmıştır. OpenGL sayesinde grafik kartının modeli veya işlemcinin mimarisi gibi donanımsal etkenlerden bağımsız programlama yapılır. Ayrıca aynı zamanda işletim sisteminden de bağımsız programlama yapılır. Kolay kullanım ve bu “taşınabilirlik” özellikleri yüzünden OpenGL popüler bir araç olmuştur.


Platform Bağımsız

OpenGL kullanan bir programı işletim sisteminizde çalıştırmanız için öncelikle işletim sisteminizde programın çalışırken kullanacağı işlevleri içeren kitaplığın bulunması gerekir, bu kitaplıkların genel adı “runtime-library”, türkçesi çalışma anı kitaplığıdır.

OpenGL çalışma anı kitaplığı Linux, Unix, Mac OS, OS/2, Windows 95/98/NT/2000, OPENStep ve BeOS işletim sistemlerinde hali hazırda mevcuttur. Windows işletim sistemi ailesinde standart olarak gelir. Yani OpenGL kullanan bir programı çalıştırmak için bir çaba harcamazsınız.

OpenGL kullanılarak yazılmış programlar, Win32, MacOS ve X-Window pencere yöneticilerinde sorunsuz çalışırlar.
Bir çok programlama dilinde kullanılabilir.

Ada, C, C++, C# (SharpGL adı verilen sınıflar sayesinde), Fortran, Python, Perl ve Java programlama dilleri kullanılarak OpenGL kitaplığından faydalanılabilir.


Not:
Taşınabilirlikten bahsetmişken GLUT’danda söz etmek gerekir. OpenGL platformdan bağımsız olduğu için bazı işlemler bu kitaplık ile yapılamaz. Örneğin;

kullanıcıdan veri almak, bir pencere çizdirmek gibi işler hep kullanılan pencere yöneticisi ve işletim sistemine bağlıdir. Bu yüzden bir an için OpenGL’in bu durumlarda platforma bağımlı olduğunu düşünebiliriz. Çünkü penceresini her pencere yöneticisinde farklı çizdirecek bir canlandırma programı yazmak demek her bilgisayarda çalışacak ayrı pencere açma kodu yazmak demektir. Bu ise OpenGL’in doğasına aykırıdır. Neyse ki OpenGL Araç Kiti (GLUT – OpenGL Utility Toolkit) var da yazılım geliştiricileri bir platforma bağlılıktan tamamen kurtarıyor.GLUT, birçok işletim sistemine aktarılmış bir kitaplıktır. Amacı OpenGL programlarının pencerelerini oluşturmak, klavye ve fareden veri almak gibi ihtiyaçlarını karşılamaktır.GLUT olmadan da OpenGL programlama yapılabilir, örneğin Linux’ta kullanılan X-Window sistemin kendi işlevleri kullanılarak pencere çizdirilebilir fakat bu kod sadece X-Window’da çalışır. Kod Windows’a götürülüp derlendiğinde çalışmaz, çünkü Windows’da X-Window işlevleri yoktur!Bu yüzden bu belgede GLUT kitaplığı kullanılarak klavye ve fare için işletim sisteminden bağımsız giris/çıkış işlemleri yapılması sağlanmıştır.
##Güncel
 

Bu içeriği görüntüleyen kullanıcılar (Kullanıcı: 0, Ziyaretçi: 1)

Üst