Apa yang harus ditulis oleh setiap programmer grafis [ditutup]


18

Saya telah melihat pertanyaan ini pada SO, tetapi di sini saya ingin fokus pada GFX.

Jadi menurut Anda aplikasi / fitur apa yang harus ditulis / diubah oleh setiap programmer GFX yang ingin menjadi lebih baik?

Komunitas wiki karena tidak ada "jawaban yang benar".

LE: Tidak mengacu pada gim yang sebenarnya, tetapi pada fitur grafis misalnya mengubah sesuatu di mesin (misalnya cara memuat objek), membuat komposer, seterusnya, dan sebagainya.


Jawaban:


22

Jawaban saya selalu sama: jika Anda belum pernah menulis sebelumnya, tulislah raytracer.

Anda harus berurusan dengan struktur pengoptimalan, ketepatan angka, dan segala macam masalah lainnya, tetapi Anda juga akan bekerja secara langsung dengan matematika cahaya dengan cara yang jarang Anda lakukan ketika berurusan dengan semua peretasan dan perkiraan yang membentuk penyaji waktu nyata produksi.

Lepaskan semua bangunan sistem pemuatan, kata kunci-of-the-the week, ditangguhkan-ini atau maju-itu, dan Anda akhirnya, dengan cahaya bepergian melalui media. Pada akhirnya, itu semua ada untuk grafis.


Menarik, saya sedang merenungkan menyarankan raytracer juga, latihan matematika yang sangat bagus. Saya tidak setuju dengan ditangguhkan menjadi kata kunci dalam seminggu, itu, seperti raytracing, perubahan yang cukup besar dalam cara Anda mendekati rendering Anda, yang, untuk seorang programmer grafis tampaknya menjadi sesuatu yang harus Anda ketahui.
Kaj

Saya akan mengatakan bahwa optimasi tidak sepenting berurusan dengan jerat yang sewenang-wenang, yang merupakan langkah banyak orang tidak pernah sampai dengan raytracer.
Jonathan Fischoff

Saya akan kedua (ketiga?) Saran ini, dengan peringatan bahwa (sebagaimana disebutkan) perlu mendukung jerat, dan tidak hanya berhenti di shiny-spheres-on-a-chequerboard. Poin bonus untuk setiap upaya penerangan global. Bahkan jika Anda tidak mengoptimalkannya menjadi sesuatu yang benar-benar bisa digunakan , Anda harus berusaha memahami bit mana yang lambat dan mengapa.
JasonD

Dan satu peringatan dengan saran ini - sementara perjalanan ringan melalui media adalah semua yang ada untuk grafis, itu akan memberi Anda sedikit pelatihan dalam apa yang Anda butuhkan dalam lingkungan produksi aktual (saat ini).
Kaj

1
+1 menulis pelacak sinar adalah hal paling berguna yang saya pelajari di kelas grafik kuliah saya
Bryan Denny

7

Ini mungkin sedikit praktis digunakan hari ini, tetapi menulis di renderer perangkat lunak, setidaknya yang dasar (mungkin hanya beberapa kubus bertekstur berputar), adalah latihan yang bermanfaat.

Memahami cara mentransformasikan, memproyeksikan, memproyeksikan, memilah-milah, merasterisasi, dan poligon peta tekstur sendiri akan memberi Anda pemahaman yang lebih baik tentang apa yang dilakukan perangkat keras 3D dan rendering API.


cukup banyak ini. kecuali ini, sprite blitter dengan dukungan alpha. ..atau setidaknya sesuatu, APA SAJA, di mana Anda memanipulasi piksel dengan nilai bitnya.
Lassi Kinnunen

6

Meskipun tidak merender kode, saya pikir menulis kompiler BSP dan menyertai kode traversal adalah latihan yang bagus dalam matematika vektor.
Kedua, penyaji tangguhan. Bukan karena ini adalah jawaban akhir semua untuk rendering, tetapi itu akan memberi Anda wawasan dalam pendekatan lain untuk rendering.


2

Pelajari mekanika dan keterampilan menulis shader yang bagus. Meskipun tidak 100% diperlukan dalam semua kasus, itu adalah keterampilan yang berharga untuk diketahui.


Saya setuju dengan jawaban Anda namun itu terlalu luas dan beberapa sumber daya dan tautan ke mereka tidak ada salahnya untuk jawaban yang lengkap :).
lukas.pukenis
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.