Game Engine adalah
sistem perangkat lunak yang dirancang untuk menciptakan dan pengembangan video
game. Ada banyak mesin permainan yang dirancang untuk bekerja pada konsol
permainan video dan sistem operasi desktop seperti Microsoft Windows, Linux,
dan Mac OS X. fungsionalitas inti biasanya disediakan oleh mesin permainan
mencakup mesin render ( “renderer”) untuk 2D atau 3D grafis, mesin fisika atau
tabrakan (dan tanggapan tabrakan), suara, script, animasi, kecerdasan buatan,
jaringan, streaming, manajemen memori, threading, dukungan lokalisasi, dan
adegan grafik. Engine bukanlah executable program, artinya engine tidak bisa
dijalaankan sebagai program yang berdiri sendiri. Diperlukan sebuah program
utama sebagai entry point atau titik awal jalannya program. Pada c++, entry
pointnya adalah fungsi main(). Biasanya program utama ini relatif pemdek. Game
engine ini adalah program yang “memotori” jalannya suatu program game. Kalau
game diilustrasikan sebagai musik yang keluar dari mp3 player, maka engine
adalah mp3 player dan program utama adalah data mp3 yang dimasukkan ke dalam
mp3 player tersebut.
Dengan
adanya engine, waktu, tenaga dan biaya yang dibutuhkan untuk membuat game
software menjadi berkurang secara signifikan. Beberapa game dengan jenis dan
gameplay yang hampir sama bisa dibuat dengan sedikit usaha bila terlebih dahulu
dibuat engine-nya. Setelah engine diselesaikan, programmer hanya perlu
menambahkan progam utama, memakai resources (objek 3D, musik, efek suara) yang
baru dan, jika benar-benar dibutuhkan , sedikit memodifikasi engine sesuai
kebutuhan spesifik dari game yang bersangkutan. Program game engine seluruhnya
berorientasi objek. Lebih bersifat reaktif daripada posedural. Sulit unutk
menggambarkan engine secara keseluruhan dalam flowchart, karena alur program
bisa diatur sesuai dengan keinginan pemakai engine, yaitu game programmer.