Video oyunlarında LUT kullanma yöntemi ve sizin de nasıl kullanabileceğiniz
- Video oyunlarında LUT'ler (Look-up tables) yaratıcı tekniklerden yararlanmak için kullanılır.
- WebGL kullanılan bir örnek üzerinden video verisinin gerçek zamanlı olarak nasıl manipüle edileceği açıklanır.
- Kullanıcılar kendi videolarını veya web kameralarını kullanarak bunu uygulayabilir.
Kurulum
- Başlangıç noktası olarak termal kamerayla çekilmiş siyah-beyaz bir video kullanılır.
- Video, WebGL aracılığıyla GPU'ya yüklenir ve shader kullanılarak orijinaliyle aynı şekilde görüntülenir.
Renklendirme
- Videoya renk vermek için piksel başına rengi belirleyen
Fragment Shader kullanılır.
- Turuncu renk ekleyen basit bir örnekle renk manipülasyonunun nasıl yapıldığı anlatılır.
Performans maliyeti: sıfır
- Renklendirmenin performans üzerindeki etkisi yok denecek kadar azdır ve GPU'nun
latency hiding özelliği sayesinde ihmal edilebilir düzeydedir.
Valve Software'in renklendirme kullanımı
- Valve Software'in
Left 4 Dead oyununda araç modellerine renklendirme uygulanarak çeşitli varyasyonlar üretilir.
LUT - basit ama güçlü
- LUT kullanarak renk aralıklarının nasıl tanımlanıp değiştirilebileceği açıklanır.
Mütevazı 1D LUT
- 1D LUT, gri tonlamalı videoyu RGB'ye dönüştürmek için kullanılan bir renk dizisidir.
- Farklı boyutlardaki 1D LUT'lerle renk dönüşümü gösterilir.
Bir sürü renk
- matplotlib'in desteklediği tüm renk haritaları 1D LUT olarak sunulur.
Perceptually Uniform renk haritalarının kullanılması önerilir.
Hâlâ performans maliyeti yok mu?
- Küçük 1D LUT'ler performansı önemli ölçüde etkilemez ve GPU önbelleğini verimli kullanır.
Zombiler için çeşitlilik
Left 4 Dead 2 oyununda LUT kullanılarak zombiler için farklı renk varyasyonları üretilir.
Hesaplamayı önceden hesaplama
- 1D LUT, maliyetli hesaplamaları önbelleğe almak için kullanılabilir; örneğin gamma düzeltmesi hızlı biçimde uygulanabilir.
Güçlü 3D LUT
- 3D LUT, tüm RGB uzayını tek bir küp olarak temsil ederek renkleri yeniden eşler.
Kurulum
- Panasonic GH6 ile çekilmiş log profile video kullanılarak 3D LUT işlemesi açıklanır.
Basit düzeltme
- DaVinci Resolve kullanılarak renk düzeltmesi uygulanması ve LUT'un yeniden dışa aktarılması süreci anlatılır.
Left 4 Dead'de 3D LUT kullanımı
- Bu, oyun endüstrisinde yaygın olarak bilinen bir iş akışıdır; oyun renklerini dış araçlarla stilize etmek için kullanılır.
İleri seviye macera
- DaVinci Resolve gibi color grading araçlarıyla karmaşık renk dönüşümlerinin LUT olarak nasıl dışa aktarılacağı açıklanır.
Diğer kullanım biçimleri
- LUT'un başka kullanım örnekleri arasında, Game Boy Advanced için Tomb Raider portunda kullanılan LUT de tanıtılır.
GN⁺ görüşü
- LUT, video oyunları ve grafik programlamada renk manipülasyonu ve optimizasyon için güçlü bir araçtır. Bu teknik, gerçek zamanlı render sırasında performans kaybı olmadan çeşitli görsel efektler sunabildiği için hem geliştiriciler hem de sanatçılar açısından faydalıdır.
- LUT kullanırken renk doğruluğu ve verinin görsel temsili dikkate alınmalıdır. Özellikle renk körlüğünü hesaba katan
Perceptually Uniform renk haritalarının önemini anlamak önemlidir.
- Bu teknik; renk düzeltme, görsel stil verme ve veri görselleştirme gibi birçok alanda uygulanabilir. Örneğin film endüstrisinde color grading için kullanılan LUT benzeri teknikler oyun geliştirmeye uygulanabilir.
- LUT'un boyutu ve hassasiyeti kullanım amacına ve platforma göre değişebilir; bunun anlaşılması gerekir. Örneğin film endüstrisinde 33³px boyutundaki LUT'ler standarttır, ancak oyunlarda veya diğer grafik uygulamalarında farklı boyutlara ihtiyaç duyulabilir.
- Bu tekniği kullanırken renklerin doğru temsili ile performans optimizasyonu arasında denge kurmak önemlidir. LUT'leri etkili kullanmak için renk teorisi ve grafik programlama konusunda derin bir anlayış gerekir.
1 yorum
Hacker News görüşleri
LUT (lookup table) kullanarak efektlerin nasıl uygulandığına dair açıklama
Doku tüneli efekti için lookup table kullanma deneyimi paylaşılıyor
"The Legend of Zelda: Wind Waker" oyununun lookup table kullanarak kendine özgü görselleri nasıl oluşturduğunu anlatan bir video bağlantısı paylaşılıyor
Lookup table hakkında yazıyı gönderen yazarın soruları yanıtlamaya hazır olduğu belirtiliyor.
Retro oyun geliştirmede lookup table’ların önemine dair açıklama
NES homebrew topluluğunda lookup table kullanarak şaşırtıcı fizik efektleri uygulayan "Bobl" oyunu hakkında deneyim paylaşılıyor
SNES sürümü "Doom" portunun trigonometrik hesaplamaları lookup table kullanarak nasıl yaptığına dair bir podcast bölümü paylaşılıyor
Dinamik programlama bilgisi olan kişilerin caching ile memoization’ı karıştırmasına yönelik rahatsızlık dile getiriliyor
Lookup table’larla çalışan Mac uygulaması "Lattice" hakkında bilgi paylaşılıyor
Lookup table kullanılarak elde edilen çeşitli efektlere örnekler listeleniyor