- Mesaj
- 1.510
- Çözümler
- 55
- Beğeni
- 2.633
- Puan
- 1.839
- Ticaret Puanı
- 0
KaptanYosun'un Shader-Driven Grafik Günlüğü
Üzerinde çalıştığım grafik sistemlerini ve bu süreçte edindiğim deneyimleri bu konuda adım adım paylaşacağım.Şimdiye kadar yaptıklarım:
HLSL Shader Manager.cpp/h- Shader derleme, yükleme ve yönetim süreçleri tek bir merkezden kontrol edilebilecek.
- Shader'lar D3DDevice ile beraber oluşacak, cache edilecek, her map yüklemesinde yeniden derlenmeyecek, D3DDevice ile beraber yok edilecek.
- Kolayca ölçeklenebilir ve genişletilebilir olması için class'lara bölündü.
- Shader parametrelerinin dağınık yapılardan kurtarılması amacıyla, tüm ayarların merkezi olarak yönetilebildiği bir kontrol merkezidir.
- Kolayca ölçeklenebilir ve genişletilebilir olması amacıyla namespace'lere ve struct'lara bölündü.
- Shader'a gönderilen tüm parametreler bu merkezden gerçek zamanlı kontrol edilebilir.
- Farklı shaderlar kolay yönetim için yan yana sekmelere ayrıldı.
Gelecek hedefler:
Su verisine yükseklik (height) bilgisi eklenerek heightmap destekli bir su yüzeyi sistemi oluşturmak.Su patch’leri başına düşen vertex yoğunluğunu artırarak, daha yüksek detaylı ve daha doğal bir su yüzeyi elde etmek.
Merkezi bir rüzgar sistemi kurup, SpeedTree ve Water shaderlarını ortak rüzgar ile etkileşime sokmak.
Bu günlük ilerledikçe; karşılaşılan problemler, alınan tasarım kararları ve yapılan optimizasyonlar da mümkün olduğunca şeffaf şekilde paylaşılacak.
Son düzenleme: