GLSL, (OpenGL Tarayıcı Dili,GLsLang diye de bilinir) C tabanlı yüksek seviye bir programlama dilidir.OpenGL ARB tarafından,geliştiricilerin grafik işhattına assembly veya donanım-bağımlı bir dil bilmeden direkt erişim sağlaması için yaratılmıştır.
Geçmişi
Grafik kartlarındaki son gelişmelerle,yaratım işhattında tepe noktası ve parçalama seviyesinde kolaylık sağlamak için birçok özellik eklendi.Bu seviyede programlama parçalama ve tepe noktası tarayıcılarını kullanılarak gerçekleştirilir. Aslında bu başarım tarayıcıları assembly dilinde yazarak sağlandı.OpenGL daha GPU yu daha kolay anlaşılır bir dille programlamak için eski açık standartlarını devam ettirerek OpenGL Tarayıcı Dilini yaratmıştır.
İlk önce OpenGL 1.4 ün bir uzantısı olarak ortaya çıkmış,daha sonra resmi olarak GLSL OpenGL 2.0 ın içine dahil edilmiştir.OpenGL 2.0, 1992 de çıkan OpenGL 1.0 den bu yana ilk büyük revizyondur.
GLSL kullanımının bazı faydaları
- Değişik işletim sistemleri üzerinde platformlar arası uyumluluk(MacOS,Linux,Microsoft Windows)
- OpenGL Tarayıcı dilini destekleyen her grafik kartı üzerinde çalışabilecek kod yazabilmek.
- Her bir grafik kartı üreticisi kendi sürücüsüne GLSL derleyici dahil eder.
Operatörler
GLSL daha önce C diline aşina olanlara tanıdık operatörler sunarak tarayıcı programlamada rahatlık sunar.İşaretçiler ve Bit operatörleri dışında C ve C++ daki operatörleri içerir.
Fonksiyonlar ve Kontrol Yapıları
GLSL C dilinde olduğu gibi döngü ve dallanmayı destekler ve if, else, if/else, for, do-while, break, continue gibi yapıları içerir. Kullanıcı tanımlı fonksiyonlar desteklenir ve birçok bilindik fonksiyon hazır olarak gelir.Böylece kart üreticileri bu fonksiyonları donanım seviyesinde optimize edebilirler.Bunlardan bazıları Math kütüphanesindeki exp() fonksiyonu gibi veya daha grafik programlamaya yönelik texture2D() gibidir.
Derleme ve Çalıştırma
GLSL tarayıcılar tek başlarına çalışabilen uygulamalar değillerdir ve OpenGL API lerini işleten progamlara ihtiyaç duyarlar. API uygulamaları değişik sistemlerde ve değişik dil bağlamları ile mevcuttur.
GLSL tarayıcılar,kart sürücüsüne, OpenGL API lerini kullanan bir program tarafından derlenmesi için geçirilen basit katar kümeleridir.Tarayıcılar bir programdan çıkabilir veya bir yazı dosyasından okunabilir ancak sürücüye mutlacak katar halinde gönderilmelidir. GLSL programlarını derlemek bağlamak ve parametre göndermek için kullanılan API ler 3 OpenGL uzantısı içinde belirlenmiş ve OpenGL nin çekidek parçası haline gelmiştir.Bu API ler şu uzantılar içinde bulunabilir.
Araçlar
GLSL tarayıcılar onu kullancak uygulamaya enjekte edilmeden önce test edilmelidir.Bu amaç için birçok program mevcuttur.
- RenderMonkey4 Ekim 2006 tarihinde Wayback Machine sitesinde . - ATI tarafından yaratldı.GLSL programlarını yaratmak test ve debug etmek için arayüz sunar.DirectX destekler.Sadec Microsoft Windows üzerinde çalışır]].
- GLSLEditorSample - MacOS üzerinde çalışır.Tarayıcı yaratma ve derlemeye yarar.Debug etmez.Xcode 2.3 ve üzerinin bir arçasıdır.
- - MacOS üzerinde çalışan sanal programlama ortamıdır.Oluşturma,derleme ve diğer Quartz yamaları ile sanal programlama modeli altında entegrasyonu sağlar.Debug etmez.Ücretsiz dağıtılan Xcode un bir parçasıdır.
- Lumina 9 Mayıs 2008 tarihinde Wayback Machine sitesinde . - Platformdan bağımsız GLSL geliştirme Aracı.Arayüz olarak Qt kullanır.
- Shader Designer22 Ekim 2019 tarihinde Wayback Machine sitesinde . - Kullanımı kolay GLSL IDE si TyphoonLabs ın ürünüdür.Buna rağmen ücretsiz olarak indrilip kullanılabilir.Ayrıca tarayıcı örnekleri ve yeni başlayanlar için dokümanlar içermektedir.
- Demoniak3D 24 Temmuz 2008 tarihinde Wayback Machine sitesinde . - GLSL tarayıcıları çabuk yazıp derleyebileceğiniz bir araç. Demoniak3D XML ve karışımı bir dil kullanır.Gerçek 3B sahneler için oluşturmak için GLSL kullanır.
- - Shader Maker basit ve platformlar arası bir araçtır. Windows, Linux ve Mac OS X üzerinde çalışır.
Kaynakça
- OpenGL Shading Language. 1st ed. Pearson Education, Inc, 2004.
- Kessenich, John, & Baldwin, David, & Rost, Randi. The OpenGL Shading Language. Version 1.10.59. 3Dlabs, Inc. Ltd.
Dış bağlantılar
- Shader Programlama 5 Ağustos 2009 tarihinde Wayback Machine sitesinde .
- Shader Programlama Dilleri 16 Aralık 2009 tarihinde Wayback Machine sitesinde .
- OpenGL Resmi Sayfası26 Şubat 2011 tarihinde Wayback Machine sitesinde .
- Lighthouse3D Ders ve Örnekleri20 Mart 2007 tarihinde Wayback Machine sitesinde .
- oZone3D.Net GLSL Dersleri 28 Ağustos 2008 tarihinde Wayback Machine sitesinde .
wikipedia, wiki, viki, vikipedia, oku, kitap, kütüphane, kütübhane, ara, ara bul, bul, herşey, ne arasanız burada,hikayeler, makale, kitaplar, öğren, wiki, bilgi, tarih, yukle, izle, telefon için, turk, türk, türkçe, turkce, nasıl yapılır, ne demek, nasıl, yapmak, yapılır, indir, ücretsiz, ücretsiz indir, bedava, bedava indir, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, resim, müzik, şarkı, film, film, oyun, oyunlar, mobil, cep telefonu, telefon, android, ios, apple, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, pc, web, computer, bilgisayar
GLSL OpenGL Tarayici Dili GLsLang diye de bilinir C tabanli yuksek seviye bir programlama dilidir OpenGL ARB tarafindan gelistiricilerin grafik ishattina assembly veya donanim bagimli bir dil bilmeden direkt erisim saglamasi icin yaratilmistir GecmisiGrafik kartlarindaki son gelismelerle yaratim ishattinda tepe noktasi ve parcalama seviyesinde kolaylik saglamak icin bircok ozellik eklendi Bu seviyede programlama parcalama ve tepe noktasi tarayicilarini kullanilarak gerceklestirilir Aslinda bu basarim tarayicilari assembly dilinde yazarak saglandi OpenGL daha GPU yu daha kolay anlasilir bir dille programlamak icin eski acik standartlarini devam ettirerek OpenGL Tarayici Dilini yaratmistir Ilk once OpenGL 1 4 un bir uzantisi olarak ortaya cikmis daha sonra resmi olarak GLSL OpenGL 2 0 in icine dahil edilmistir OpenGL 2 0 1992 de cikan OpenGL 1 0 den bu yana ilk buyuk revizyondur GLSL kullaniminin bazi faydalari Degisik isletim sistemleri uzerinde platformlar arasi uyumluluk MacOS Linux Microsoft Windows OpenGL Tarayici dilini destekleyen her grafik karti uzerinde calisabilecek kod yazabilmek Her bir grafik karti ureticisi kendi surucusune GLSL derleyici dahil eder OperatorlerGLSL daha once C diline asina olanlara tanidik operatorler sunarak tarayici programlamada rahatlik sunar Isaretciler ve Bit operatorleri disinda C ve C daki operatorleri icerir Fonksiyonlar ve Kontrol YapilariGLSL C dilinde oldugu gibi dongu ve dallanmayi destekler ve if else if else for do while break continue gibi yapilari icerir Kullanici tanimli fonksiyonlar desteklenir ve bircok bilindik fonksiyon hazir olarak gelir Boylece kart ureticileri bu fonksiyonlari donanim seviyesinde optimize edebilirler Bunlardan bazilari Math kutuphanesindeki exp fonksiyonu gibi veya daha grafik programlamaya yonelik texture2D gibidir Derleme ve Calistirma GLSL tarayicilar tek baslarina calisabilen uygulamalar degillerdir ve OpenGL API lerini isleten progamlara ihtiyac duyarlar API uygulamalari degisik sistemlerde ve degisik dil baglamlari ile mevcuttur GLSL tarayicilar kart surucusune OpenGL API lerini kullanan bir program tarafindan derlenmesi icin gecirilen basit katar kumeleridir Tarayicilar bir programdan cikabilir veya bir yazi dosyasindan okunabilir ancak surucuye mutlacak katar halinde gonderilmelidir GLSL programlarini derlemek baglamak ve parametre gondermek icin kullanilan API ler 3 OpenGL uzantisi icinde belirlenmis ve OpenGL nin cekidek parcasi haline gelmistir Bu API ler su uzantilar icinde bulunabilir Araclar GLSL tarayicilar onu kullancak uygulamaya enjekte edilmeden once test edilmelidir Bu amac icin bircok program mevcuttur RenderMonkey4 Ekim 2006 tarihinde Wayback Machine sitesinde ATI tarafindan yaratldi GLSL programlarini yaratmak test ve debug etmek icin arayuz sunar DirectX destekler Sadec Microsoft Windows uzerinde calisir GLSLEditorSample MacOS uzerinde calisir Tarayici yaratma ve derlemeye yarar Debug etmez Xcode 2 3 ve uzerinin bir arcasidir MacOS uzerinde calisan sanal programlama ortamidir Olusturma derleme ve diger Quartz yamalari ile sanal programlama modeli altinda entegrasyonu saglar Debug etmez Ucretsiz dagitilan Xcode un bir parcasidir Lumina 9 Mayis 2008 tarihinde Wayback Machine sitesinde Platformdan bagimsiz GLSL gelistirme Araci Arayuz olarak Qt kullanir Shader Designer22 Ekim 2019 tarihinde Wayback Machine sitesinde Kullanimi kolay GLSL IDE si TyphoonLabs in urunudur Buna ragmen ucretsiz olarak indrilip kullanilabilir Ayrica tarayici ornekleri ve yeni baslayanlar icin dokumanlar icermektedir Demoniak3D 24 Temmuz 2008 tarihinde Wayback Machine sitesinde GLSL tarayicilari cabuk yazip derleyebileceginiz bir arac Demoniak3D XML ve karisimi bir dil kullanir Gercek 3B sahneler icin olusturmak icin GLSL kullanir Shader Maker basit ve platformlar arasi bir aractir Windows Linux ve Mac OS X uzerinde calisir KaynakcaOpenGL Shading Language 1st ed Pearson Education Inc 2004 ISBN 0 321 19789 5 Kessenich John amp Baldwin David amp Rost Randi The OpenGL Shading Language Version 1 10 59 3Dlabs Inc Ltd Dis baglantilarShader Programlama 5 Agustos 2009 tarihinde Wayback Machine sitesinde Shader Programlama Dilleri 16 Aralik 2009 tarihinde Wayback Machine sitesinde OpenGL Resmi Sayfasi26 Subat 2011 tarihinde Wayback Machine sitesinde Lighthouse3D Ders ve Ornekleri20 Mart 2007 tarihinde Wayback Machine sitesinde oZone3D Net GLSL Dersleri 28 Agustos 2008 tarihinde Wayback Machine sitesinde