Game Engine adalah system 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. Proses pengembangan permainan sering dihemat oleh sebagian besar menggunakan kembali mesin permainan yang sama untuk menciptakan permainan yang berbeda.
Engine bukanlah executable program, artinya engine tidak bisa dijalankan sebagai program yang berdiri sendiri. Diperlukan sebuah program utama sebagai entry point atau titik awal jalannya program. Pada C++, entry point-nya adalah fungsi ‘main().’ Biasanya program utama ini relatif pendek. Game engine 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 dulu dibuat engine-nya. Setelah engine diselesaikan, programmer hanya perlu menambahkan program utama, memakai resources (objek 3D, musik, efek suara) yang baru, dan, jika benar-benar dibutuhkan, sedikit memodifikasi engine sesuai kebutuhan spesifk dari game yang bersangkutan. Program game engine seluruhnya berorientasi objek. Dia lebih bersifat reaktif daripada prosedural. Sulit untuk menggambarkan engine secara keseluruhan dalam flow-chart, karena alur program bisa diatur sesuai dengan keinginan pemakai engine, yaitu game programmer.
Jenis-Jenis Game Engine :
Game Engine muncul dalam berbagai jenis, dan untuk level pemgraman yang berbeda-beda. Setidaknya ada 3 level dari game engine yang umum digunakan saat ini, yaitu:
Level rendah
Yang dimaksud game engine level rendah adalah game engine dimana pengembang akan membuat game engine nya dengan menggunakan antarmuka aplikasi (API) yang telah ada, seperti Microsoft XNA, DirectX, OpenGL, Windows atau Linux API, dan SDL. Selain itu, mereka juga membutuhkan Library (baik yang komersial maupun open source) untuk mendukung game engine buatan mereka. Library yang dibutuhkan seperti library untuk perhitungan formula fisika/matematika, seperti Havok (yang digunakan di game Diablo III dan Open Dynamic Engine (yang digunakan untuk menggambar dinamika dari tubuh atau material yang lain),library grafis seperti OpenSceneGraph (yang digunakan pada game Pirates of the XXI century, serta library GUI seperti AntTweakBar). Secara umum, game engine level rendah ini menawarkan fleksibilitas dan kebebasan dalam memilih komponen yang diinginkan dalam pengembangan game. Namun, tahap pengembangannya paling lama dibandingkan kedua level yang lain karena pengembang harus memulai hampir semuanya dari nol. Hal ini menyebabkan game engine pada level rendah ini jarang digemari oleh para game developer.
Level Menengah
game engine pada level menengah mempunyai fasilitas jauh lebih lengkap dibandingkan game engine pada level rendah. Rutin seperti input, GUI, rendering, perhitungan matematika, hampir semua ada pada game engine ini. Beberapa engine yang masuk dalam kategori ini adalah Object Oriented Graphics Rendering Engine atau biasa disebut OGRE. Beberapa game yang didukung oleh Game Engine OGRE ini adalah Jack Keane. Selain itu, game engine open source seperti Genesis3D, yang berbayar seperti Torque, Unreal, idTech, dan GameByro juga merupakan Game Engine Level Menengah. Kesemua engine tersebut membutuhkan level pemograman untuk dapat digunakan dan dikembangkan menjadi game yang utuh.
Level Tinggi
level ini merupakan level game engine yang termudah, yaitu hanya dengan point-and-click game telah dapat dibuat. Beberapa game engine level tinggi ini adalah GameMaker, Torque, Game Builder, dan Unity 3D. Game engine ini didesain agar menjadi game engine yang user-friendly dengan level pemograman seminimal mungkin. Masalah yang muncul dari game engine ini adalah keterbatasannya, misalnya untuk membuat game dengan jenis tertentu atau mode grafik yang tertentu. Namun bukan berarti game engine ini tidak berguna. Bahkan dengan berbagai macam batasan yang ada, masih memungkinkan untuk membuat game-game yang kreatif, cepat, tanpa perlu banyak tenaga. Game engine ini cocok bagi mereka yang pemula dalam game development.
sumber:
Tidak ada komentar:
Posting Komentar