Pilih satu dari masing-masing dan tingkatkan cara Anda.
1. Fundamental CG
† ini bukan buku OpenGL, mereka hanya menggunakan OpenGL untuk mengajarkan konsep CG yang belum sempurna
Dari jumlah tersebut, favorit pribadi saya adalah dua yang terakhir. Lebih praktis dan karenanya mengasyikkan bagi pemula; penjelasannya tidak terlalu samar, tidak seperti yang lain, lebih banyak buku akademis dalam daftar.
Alasan Rendering Real-Time dihilangkan karena ini bukan buku kotor tangan Anda ; ini adalah survei luas teknik yang digunakan dalam industri daripada pada fundamental CG; teori-berat daripada latihan-berat: sesuatu pemula perlu memahami dasar-dasar dengan baik. Bahkan teori yang dibahas cukup tinggi di banyak titik.
2. Dasar-Dasar Matematika
Agar mahir dalam grafis komputer atau bahkan untuk memahami dasar-dasarnya, sejumlah konsep matematika yang layak perlu dipahami; itu mengharuskan seseorang untuk merasa nyaman dalam menggunakan trigonometri dan aljabar linier. Untuk ini saya rekomendasikan
- Vektor Matematika untuk Grafik Komputer 3D sejauh ini merupakan tutorial pemula terbaik untuk vektor dan matriks. Ini juga interaktif karena pada akhir setiap bagian ada pertanyaan uji untuk memverifikasi dan menyegel pemahaman tentang topik itu.
Buku
Dari buku-buku matematika ini, yang paling intuitif adalah yang pertama dengan banyak anekdot lucu di antaranya, yang terakhir adalah untuk fanatik matematika hard core (jika Anda takut simbol muntah, jauhi itu), meskipun itu buku yang bagus untuk programmer CG berpengalaman yang membutuhkan referensi. Satu di antaranya benar-benar bagus karena merinci sesuatu yang dihilangkan oleh dua (atau banyak buku lainnya), dan dalam spektrum intuitif dan matematika hard-core ada di antaranya.
3. Tutorial
Hanya membaca tidak menyegel konsep sehingga berolahraga sangat dianjurkan. Untuk itu saya menemukan tutorial ini sangat bagus; sebagian besar memberikan penjelasan teori yang layak juga.
Jangan terlalu terikat pada pustaka atau alat tertentu (mis. OpenGL, Direct3D, Metal, Vulkan, WebGL, SDL, Quartz, dll.) Setelah Anda memahami konsep dasar (matematika di belakangnya), menerapkannya dalam bahasa apa saja, kerangka kerja atau perpustakaan tidak akan menjadi masalah besar. Hanya sintaks / kompiler akan berubah, tetapi tekniknya sendiri tetap sama.