Sumber daya yang bagus untuk belajar tentang arsitektur game? [Tutup]


104

Apakah ada sumber daya yang baik untuk belajar tentang arsitektur game? Saya mencari ikhtisar tingkat tinggi dari berbagai arsitektur. Saya cenderung mencari informasi tentang berbagai bagian permainan seperti entitas, mesin fisika, skrip, dll. Tetapi tidak tentang cara menyatukan semua bagian.

Sebagai bonus, bagaimana jenis permainan mempengaruhi ini? Misalnya, platformer dan MMO akan memiliki perbedaan.

Jawaban:


64

Arsitektur Mesin Game oleh Jason Gregory adalah buku yang bagus dalam topik ini. Anda dapat membacanya di Google Buku sebelum membelinya.


4
Saya sangat merekomendasikan buku ini. Jika Anda mencari sampel kode pegangan tangan, ini bukan buku untuk Anda. Tetapi jika Anda mencari tur tingkat tinggi dari semua komponen yang membentuk mesin permainan modern dan bagaimana mereka cocok bersama, ini benar-benar buku yang sangat bagus. Gaya penulisan sangat profesional (ditulis sebagai buku teks) tetapi dapat diakses oleh siapa saja dengan pengetahuan dasar tentang prinsip-prinsip Ilmu Komputer.
Bob Somers

Kelihatan bagus. Ditambahkan ke daftar buku yang akan saya beli.
Colin Gislason

1
Ini adalah salah satu buku favorit saya. Satu-satunya masalah yang saya miliki dengan itu (yang diakui penulis) adalah detail audio yang sangat jarang.
Slurps Mad Rips

1
Itu poin yang bagus, buku itu tidak mencakup semuanya. Dua hal besar yang saya perhatikan yang hilang adalah audio dan jaringan, yang keduanya hanya disebutkan secara sepintas. Tetapi penulis jujur ​​tentang fakta bahwa ia harus memberikan poros itu karena berbagai alasan. Mungkin di edisi kedua? :)
Bob Somers

Wow, buku itu terlihat sangat cemerlang.
NM01

39

Buku saya, Pola Pemrograman Game , tidak lengkap dan hiatus, tetapi apa yang saya miliki tersedia secara online secara gratis. Anda mungkin bisa menggunakannya.


1
Saya sudah membaca ini. Konten yang sangat bagus, jika tidak lengkap. Namun, ini dan contoh informasi tentang potongan tanpa cara menyatukannya.
Colin Gislason

2
Itu pilihan yang disengaja, tapi itu mungkin tidak banyak membantu Anda. Masalahnya adalah bahwa setiap permainan berbeda, terutama lintas genre, jadi tidak ada "inilah seluruh arsitektur yang harus Anda bangun" kecuali Anda benar-benar hanya ingin mengkloning beberapa permainan yang ada. Saya pikir yang terbaik yang dapat Anda lakukan adalah mengatakan "inilah banyak potongan besar, pilih yang Anda butuhkan dan hubungkan mereka". Buku pemrograman game tentang grafik, AI, dll. Akan memberi Anda bagian besar. Tujuan buku saya adalah memberi tahu Anda cara menghubungkannya.
murah hati

1
Ya, saya pasti mengerti itu. Kebanyakan perangkat lunak seperti itu. Saya kira hal yang saya cari adalah contoh bagaimana hal itu dilakukan sehingga saya dapat membuat keputusan yang lebih tepat untuk game yang saya garap. Kerja bagus di buku / situs, btw.
Colin Gislason

4
Silakan selesaikan buku ini, sejauh ini sangat bagus. Saya pasti akan bersedia Menyumbang untuk versi lengkap :)
Kyle C

4
Buku Anda terlihat sangat bagus, terima kasih telah membagikannya. Saya harap Anda akan menyelesaikannya!
GvS

15

Enginuity adalah salah satu tutorial gratis terbaik tentang desain mesin game. Lihatlah, ini bukan apa yang Anda minta. Ini adalah tutorial tentang cara menulis mesin gim ke aspek level rendah - namun - ini adalah mesin tujuan umum dan Anda mungkin dapat memperoleh pembagi umum terbaik untuk setiap gim.

Baca saja bagian pendahuluan dan berhentilah ketika itu menjadi terlalu rinci untuk selera Anda;)


1
Saya membaca sebagian dari ini. Ada banyak informasi yang berguna, bahkan jika itu bukan apa yang saya minta. Terima kasih untuk tautannya.
Colin Gislason

1
memperhatikan bahwa tautan rusak dan tidak dapat menemukan tautan yang berfungsi. Jika ada yang menemukan, perbarui, thx.
Dave O.

Saya menjalankan halaman melalui pencarian dan saya menemukan ini: gamedev.net/page/resources/_/reference/programming/…
DMan

14

Pemrograman Game: Jalur Ekspres untuk Pembelajaran menyediakan pengantar tingkat pemula yang bagus untuk struktur mesin permainan dasar yang penulis sebut "IDEA / ALTER":

  • I - Impor dan inisialisasi
  • D - Menampilkan konfigurasi
  • E - Entitas
  • A - Action (dipecah menjadi langkah-langkah ALTER)
    • A - Tetapkan nilai ke variabel kunci
    • L - Loop (setup Loop utama)
    • T - Timer untuk mengatur kecepatan bingkai
    • E - Penanganan acara
    • R - Refresh layar

Buku ini membahas contoh permainan lengkap yang diimplementasikan dalam Python / Pygame.


7

Saya dapat merekomendasikan buku Game Coding Complete , Tn. Mike tahu banyak tentang Arsitektur Game dan melakukan pekerjaan dengan baik menjelaskannya kepada pembaca. Saya tidak tahu tentang edisi ketiga, saya hanya punya edisi kedua, tapi itu layak dibaca. Dia menjelaskan semuanya, mulai dari Scripting hingga Suara, bahkan sedikit matematika 3D. Tidak sedetail mungkin, tetapi cukup baik untuk menggali lebih dalam menggunakan bahan lain. Di akhir buku, ia membuat game lengkap dengan memanfaatkan semua yang Anda pelajari dengan buku ini.



4

Sebenarnya tidak terkait dengan permainan, tetapi sumber daya yang tak ternilai bagi programmer mana pun: Programmer Pragmatis: Dari Journeyman hingga Master . Ini tidak akan memberi tahu Anda cara menulis pipa 3D - sebaliknya, itu akan membawa Anda berkeliling pada prinsip-prinsip yang mendasari arsitektur perangkat lunak yang baik.


2

Jeff Plummer "Arsitektur yang Fleksibel dan Dapat Diperluas untuk Permainan Elektronik":

http://members.cox.net/jplummer/Writings/Writings.htm

Gambaran bagus dan perbandingan arsitektur Game yang berbeda.


1
Situs ini sedang down, tetapi halaman, bersama dengan tesis 380 halaman yang ditulis Plummer, tersedia melalui archive.org. Sangat mudah dibaca dan sangat informatif untuk pemula!
Philip

1

Saya pikir untuk pengetahuan arsitektur secara keseluruhan , pengalaman / percobaan / kesalahan adalah sumber daya utama.

Karena arsitektur keseluruhan AKAN berubah banyak berdasarkan pada jenis permainan yang Anda tulis, melihat sumber daya / makalah tentang sistem entitas / mesin / skrip / dll dan menyatukannya menjadi sesuatu yang memiliki arti dalam aplikasi Anda sendiri adalah cara terbaik untuk mempelajari.

Yang mengatakan, saya sangat suka buku Game Programming Gems untuk lebih mendalam pada komponen individu yang dapat Anda gunakan dalam game Anda, saya masih biasa menggunakan banyak ide yang diterbitkan di dalamnya di seluruh kegiatan profesional saya, serta dalam hobi saya -kode.


0

Grafik adegan ftw. Ini dapat digunakan untuk logika game dan juga rendering, dan mereka membiarkan Anda benar-benar mengoptimalkan pipa Anda. Jika Anda akan menggunakannya, Anda ingin melakukannya dari awal.


Jika Anda ingin membuat "salah satu dari" penembak orang pertama, buka grafik adegan. Jika Anda ingin membuat game, gunakan otak Anda. (Saya menggunakan grafik adegan untuk mengajar, tetapi tidak pernah untuk kode produksi.)
Andreas

1
Anda ingin memperluas itu atau memberikan tautan?
Tenpn

2
Grafik Pemandangan - katakan saja tidak ada home.comcast.net/~tom_forsyth/…
NocturnDragon

TomF berbicara di sana tentang grafik untuk grafik, dan kritiknya didasarkan pada aplikasi grafis. Pertanyaan ini adalah tentang arsitektur game umum dan itulah konteks di mana saya berbicara tentang scene grpahs. Ketergantungan antara penelusuran jalur, streaming, penangan pesan UI, dan audio semuanya statis di sepanjang masa pakai gim Anda. Namun mereka umumnya tidak dipahami, atau jika mereka tidak diekspresikan dalam kode sehingga Anda tidak dapat menggunakan dependensi tersebut untuk berurutan dengan baik. Di situlah grafik adegan masuk
Tenpn

0

Sumber yang menarik dari pengetahuan pembuatan game yang baru-baru ini saya sadari adalah Penny Arcade - Kredit Ekstra . Itu adalah dalam bentuk video mingguan pendek (~ 5 menit). Mereka telah membahas berbagai topik, yang semuanya tersedia untuk dilihat di tautan di atas.


Saya tidak berpikir mereka benar-benar masuk ke arsitektur game.
Kylotan
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.