Ya ada beberapa cara untuk memikirkan hal ini. Pertama adalah membuat daftar fitur spesifik yang harus dimiliki mesin (apa yang sudah Anda tanyakan di sini.) Namun cara lain adalah mulai membuat game tanpa terlalu khawatir tentang "mesin", dan kemudian fitur yang Anda temukan digunakan kembali di antara banyak gim (khususnya, fitur yang digunakan di setiap gim) Anda harus bermigrasi dari sumber untuk gim tertentu ke basis kode bersama yang disebut "engine."
Karena pada akhirnya, mengapa Anda menginginkan fitur yang diberikan di mesin daripada di gim adalah karena fitur tersebut dibagikan di antara banyak gim. Biasanya itu adalah hal-hal seperti menggambar perintah, pengontrol masukan, dan kode jaringan. Mesin game 2D akan memiliki banyak fitur grafis 2D, seperti memuat gambar, hierarki tampilan dengan z-order, menangani spritesheets, tweening, dll. Banyak game membutuhkan simulasi fisika, meskipun di sisi lain banyak yang tidak. Sementara itu, lebih banyak hal "di balik tudung" yang digunakan di hampir setiap permainan termasuk penghitung waktu, pengiriman pesan acara, dan bahkan fungsi matematika yang spesifik untuk pengembangan game (mis. DistanceToTarget ()
Singkat cerita:
A) Mesin harus memiliki fitur yang dibagikan oleh sebagian besar game.
B) Anda belajar fitur mana yang dibagikan dengan membuat banyak permainan.
just start making games without worrying too much about the "engine"