tr-demoscene

the scene => coding => pc => Konuyu başlatan: Ragnor - 24.09.2009 19:44:00

Başlık: Shaderlar ve nedir benim bu çektiğim?
Gönderen: Ragnor - 24.09.2009 19:44:00
Merhabalar!

7D9'un tarihi açıklandı ve bende birşeyler yapayım dedim ama son demolara baktıkça görüyorum ki shader kullanmadığım sürece eli yüzü düzgün birşey yapma şansım yok.

Çünkü elimde ne grafiker var ne de müzisyen (gerçi müzisyen var). Programlama açısından da beceriksiz bendeniz var. Yani demonun ağırlığı kod kısmı olacak orada da çok aşmış birşeyler yapamayacağım için göze güzel gözükecek trickler uygulamam lazım. Bu noktada da shader programlama zorunluluğum doğuyor.

Okul, hayat, vs. ve diğer proje ve sorumluluklarımda olduğu için partiye kadar olan bütün vaktimi ayırmam mümkün değil bu demo için, ama shader programlamayı da öğrenmem lazım ve 3d programlama işi hala zor geliyor. Kısacası sizden istediğim shader programlama konusunda beni hızla bilgilendirecek, kolayca öğrenebileceğim bir kaynak var mı?

Opengl ve linux kullanıyorum, mümkünse glsl'i tercih edeceğim ve ati ekran kartım var. Önerilerinizde bunlarıda göz önünde bulundurursanız sevinirim.
Başlık: Shaderlar ve nedir benim bu çektiğim?
Gönderen: odayibasi - 25.09.2009 09:55:21
7d8 için yaptığım XenDemo oyununda GLSL shader kullanarak bir takım sahneler yapmaya çalıştım.

http://www.cocukveoyun.com/SWEngineSDK/webhelp/  Games/XenDemo08-09 PostProcessing ve Shockwave FX shader efectleri yer almakta.  Bunun için ekranı RenderingTarget dediğim FBO(FrameBufferObject) içerisine renderledikten sonra bunun üzerinde bir takım post processing effectleri uyguladım.

Yararlanabileceğin kaynaklar:  RenderMonkey (ATI'nin kendi shader editörü, içerisinde bir çok GLSL örneği ile birlikte geliyor.)

Birde facewound için pixel shader
http://www.facewound.com/tutorials/shader1/

Not: Yazdığım shader'lar Nvidia da problemsiz çalışırken. ATI'de problem çıkardı. O yüzden ATI üzerinde GLSL kodu yazacaksan şimdiden kendini problem çözmeye hazırla. standartların dışına çıkmadan birşeyler yazmaya çalış. Hata standartlarda yazsan bile ATI'de çalışmayabilir :(
Başlık: Shaderlar ve nedir benim bu çektiğim?
Gönderen: scg - 25.09.2009 14:33:35
Alıntı
Not: Yazdığım shader'lar Nvidia da problemsiz çalışırken. ATI'de problem çıkardı. O yüzden ATI üzerinde GLSL kodu yazacaksan şimdiden kendini problem çözmeye hazırla. standartların dışına çıkmadan birşeyler yazmaya çalış. Hata standartlarda yazsan bile ATI'de çalışmayabilir


Esasında durum tamda öyle değil. ış GLSL e gelince ATI GLSL spec e sıkı sıkıya uyuyor. Nvidia CG compiler ı üzerinden GLSL desteği verdiği için standart a uymayan kodlara izin verebiliyor. Bu yüzden Nvidia da çalıştı , ATI de çalışmadı gibi şeyler duyuluyor.  

@Ragnor : OpenGL in yeni versiyonlarında  (3.1 ve üzeri ) fixed pipeline kalktı tamamen. Herşey shader lar ile yapılıyor. glBegin(...).. glEnd() yok (immidiate mode) .. sonra eski OpenGL e gömülü matrix stackleri bile yok. Tabii illaki HW accelerated demo yapmana , yapsan bile son versiyon OpenGL i kullanmana gerek yok. Opengl 1.1 ve 1.2 ile de shader sız klas demolar yapılabilir.