Her grafik programcısı ne yazmalı [kapalı]


18

Bu soruyu SO ile ilgili olarak gördüm, ancak burada GFX'e odaklanmasını istiyorum.

Peki sizce her hevesli GFX programcısı daha iyi olmak için hangi uygulamaları / özellikleri yazmalı / değiştirmelidir?

"Doğru cevap" olmadığı için topluluk wiki.

LE: Gerçek oyunlara atıfta bulunmak değil, örneğin motordaki bir şeyi değiştirmek (örneğin nesneleri nasıl yüklediği), bir besteci yapmak vb. Gibi grafiksel özelliklere atıfta bulunmak.


Yanıtlar:


22

Cevabım hep aynı: daha önce yazmamışsanız, bir ışın izleyici yazın.

Optimizasyon yapıları, sayısal hassasiyet ve diğer her türlü sorunla uğraşmak zorunda kalacaksınız, ancak aynı zamanda oluşturan tüm kesmek ve yaklaşımlarla uğraşırken nadiren yaptığınız şekilde doğrudan ışık matematiğiyle de çalışacaksınız. üretim gerçek zamanlı oluşturucu.

Tüm yükleme sistemleri, haftanın buzzwords, ertelenmiş-bu veya ileri-tüm yapılarını soyun ve sonunda, bir ortamdan ışık geçirerek ayrıldınız. Sonunda, grafikler için hepsi bu kadar.


İlginç bir şekilde, bir ışın izleyici de, çok güzel bir matematik egzersizi önermeyi düşünüyordum. Ertelenmiş bir haftanın vızıltısı olmasına katılmıyorum, raytracing gibi, bir grafik programcısı için bilmeniz gereken bir şey gibi görünen renderınıza yaklaşımınızda oldukça büyük bir değişim.
Kaj

Optimizasyonun keyfi ağlarla uğraşmak kadar önemli olmadığını söyleyebilirim;
Jonathan Fischoff

Bu öneriyi ikinci (üçüncü olarak?) Global aydınlatma girişimi için bonus puan. Gerçekten kullanılabilir bir şeye büyük ölçüde optimize etmeseniz bile , hangi bitlerin yavaş ve neden olduğunu anlamaya çalışmalısınız.
JasonD

Ve bu öneriyle bir uyarı - bir araçla hafif seyahat, grafiklerin yanında olsa da, gerçek (mevcut) üretim ortamlarında ihtiyacınız olan şey hakkında çok az eğitim verecektir.
Kaj

1
Bir ışın izleyici yazmak +1, üniversite grafiğimin sınıfında öğrendiğim en yararlı şeydi
Bryan Denny

7

Bu günlerde çok pratik bir kullanım olabilir, ancak bir yazılım oluşturucuya yazmak, en azından temel olanı (belki de sadece bazı dokulu dokulu küpler), faydalı bir egzersizdir.

Harita çokgenlerini kendiniz nasıl dönüştüreceğinizi, yansıtacağınızı, kırpabileceğinizi, derinleştirebildiğinizi, rasterleştireceğinizi ve dokulandıracağınızı anlamak, 3D donanım ve oluşturma API'lerinin ne yaptığını daha iyi anlamanıza yardımcı olur.


hemen hemen bu. bunu engellediğinde, alfa destekli bir sprite blitter. ..veya en azından bir şey, HERHANGİ BİRİ, pikselleri bit değerlerine göre değiştirdiğiniz.
Lassi Kinnunen

6

Kod oluşturma değil, ben bir BSP derleyici yazma ve eşlik çapraz geçiş kodu vektör matematik güzel bir egzersiz olduğunu düşünüyorum.
İkincisi, ertelenmiş bir oluşturucu. Oluşturmanın en son cevabı olduğu için değil, ancak başka bir oluşturma yaklaşımıyla ilgili fikir verecektir.


2

İyi gölgelendiriciler yazma mekaniği ve becerilerini öğrenin. Her durumda% 100 gerekli olmasa da, bilmek değerli bir beceridir.


Cevabınıza katılıyorum, ancak çok geniş ve bazı kaynaklar ve bunlara bağlantılar tam bir cevap için incitmez :).
lukas.pukenis
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.