Game engine
adalah sebuah sistem perangkat lunak (software) yang dirancang untuk pembuatan
dan pengembangan suatu video game. Game engine memberikan kemudahan dalam
menciptakan konsep sebuah game yang akan di buat. Mulai dari sistem rendering,
physics, arsitektur suara scripting, A.I, dan bahkan sistem networking. Game
engine dapat dikatakan sebagai jiwa dari seluruh aspek sebuah game. Tujuan
digunakannya game engine adalah untuk mempermudah pembuatan bagian‐ bagian tertentu dalam game, membagi‐bagi pengembangan game
menjadi modul‐modul tertentu, dan memudahkan kolaborasi antar pihak.
Saat ini
game engine tidak hanya digunakan untuk pembuatan game saja, tetapi dapat
digunakan untuk mengembangkan sebuah augmented reality untuk berbagai macam
aplikasi baik peta atau pembelajaran. Permainan‐permainan yang dibuat
dengan geme engine umumnya perpaduan antara 3 dimensi, sound, animasi, dan
penempatan kamera untuk menambah suasana yang kelihatan seperti nyata.
Elemen Pada
Game Engine
Seperti
halnya perangkat lunak lainnya, pada game engine juga terdapat beberapa elemen
diantaranya:
1. Tools /
Data
Dalam
pengembangan game, dibutuhkan data yang tidak semudah menuliskan text files.
Dalam pengembangan game, paling tidak dibutuhkan beberapa tools seperti 3d
model editor, level editor dan graphics programs. Bahkan jika diperlukan,
seringkali kita mengembangkan game engine tersebut dengan menambahkan beberapa
code dan fitur yang diperlukan.
2. System
System
adalah bagian dari game engine yang berfungsi untuk melakukan komunikasi dengan
hardware yang berada di dalam mesin. Jika game engine sudah dibuat dengan baik
maka system ini adalah satu‐ satunya bagian yang membutuhkan perubahan yang cukup banyak
apabila dilakukan implementasi pada platform yang berbeda. Di dalam system
sendiri terdapat beberapa sub system yaitu graphics, input, sound, timer,
configuration. System sendiri bertanggung jawab untuk melakukan inisialisasi,
update dan mematikan sub system yang terdapat di dalamnya.
3. Console
Dengan
menambahkan console, kita dapat merubah setting game dan setting game engine di
dalam game tanpa perlu melakukan restart pada game tersebut. Console sendiri
lebih sering digunakan dalam proses debugging. Apabila game engine tersebut
mengalami error kita tinggal mengoutputkan error message tersebut ke dalam
console tanpa harus melakukan restart. Console sendiri dapat dihidupkan dan
dimatikan sesuai keinginan.
4. Support
Support
adalah bagian yang paling sering digunakan oleh system di dalam game engine.
Support sendiri berisi rumus‐rumus matematika yang biasa digunakan
seperti : vector, matrix, memory manager, file loader merupakan dasar dari game
engine dan hampir digunakan semua projek game engine.
5. Renderer
/ Engine Core
Pada game
engine, engine core / renderer terdiri dari beberapa sub yaitu visibility,
Collision Detection dan Response, Camera, Static Geometry, Dynamic Geometry,
Particle Systems, Billboarding, Meshes, Skybox, Lighting, Fogging, Vertex
Shading, dan Output.
6. Game
Interface
Game
interface sendiri merupakan layer diantara game engine dan game itu sendiri.
Berfungsi sebagai control yang bertujuan untuk memberikan interface apabila di
dalam game engine tersebut terdapat fungsi fungsi yang bersifat dinamis
sehingga memudahkan untuk mengembangkan game tersebut.
7. The Game
Merupakan
inti dari penggunaan game engine sendiri, sehingga user dapat mengembangkan
game tersebut sesuai dengan yang diinginkan.
Tipe‐tipe Game Engine
1. Roll
Your‐Game Engine
Game engine
tipe lebih disukai karena selain kemungkinan besar gratis, tipe game engine ini
juga memperbolehkan para developer lebih fleksibel dalam mengitegrasikan
komponen yang diinginkan untuk dibentuk sebagai game engine mereka sendiri.
Namun kelemahan dari tipe game engine ini banyak engine yang dibuat dengan cara
semacam ini malah menyerang balik developernya.
2. Mostly‐Ready‐Game Engine
Engine ini
biasanya sudah menyediakan semuanya begitu diberikan pada developer/programmer.
Semuanya termasuk conth GUI, phisycs, libraries models, texture dan
lain‐lain. Banyak dari mereka yang sudah benar‐benar matang, sehingga dapat langsung digunakan untuk scripting
sejak hari pertama. Game engine semacam ini memiliki beberapa batasan, terutama
jika dibandingkan dengan game engine sebelumnya yang benar‐benar terbuka lebar.
3. Point‐and‐Click Engine
Engine ini
merupakan engine yang sangat dibatasi, tetapi dibuat dengan sangat user
friendly. Anda bahkan bisa mulai membuat game sendiri menggunakan engine
seperti GameMaker, Torque Game Builder dan Unity3D. Dengan sedikit memanfaatkan
coding. Kekurangannya terletak pada terbatasnya jenis interaksi yang
bisa dilakukan dan biasanya hal ini mencakup semuanya, mulai dari grafis hingga
tata suara.
Beberapa
contoh Game Engine :
-
Unity
Merupakan
suatu aplikasi yang digunakan untuk mengembangkan game multi platform yang
didesain untuk mudah digunakan. Unity itu bagus dan penuh perpaduan dengan
aplikasi yang profesional. Editor pada Unity dibuat degan user interface yang
sederhana. Editor ini dibuat setelah ribuan jam yang mana telah dihabiskan
untuk membuatnya menjadi nomor satu dalam urutan rankking teratas untuk editor
game. Grafis pada unity dibuat dengan grafis tingkat tinggi untuk OpenGL dan
directX. Unity mendukung semua format file, terutamanya format umum seperti
semua format dari art applications. Unity cocok dengan versi 64-bit dan dapat
beroperasi pada Mac OS x dan windows dan dapat menghasilkan game untuk Mac,
Windows, Wii, iPhone, iPad dan Android.
Unity
secara rinci dapat digunakan untuk membuat video game 3D, real time animasi 3D
dan visualisasi arsitektur dan isi serupa yang interaktif lainnya. Editor Unity
dapat menggunakan plugin untuk web player dan menghasilkan game browser yang
didukung oleh Windows dan Mac. Plugin web player dapat juga dipakai untuk
widgets Mac. Unity juga akan mendukung console terbaru seperti
PlayStation 3 dan Xbox 360. Pada tahun 2010, telah memperoleh Technology
Innovation Award yang diberikan oleh Wall Street Journal dan tahun 2009, Unity
Technology menjadi 5 perusahaan game terbesar. Tahun 2006, menjadi juara dua
pada Apple Design Awards.
- Blender
Adalah perangkat lunak sumber
terbuka grafika komputer 3D. Perangkat lunak ini digunakan untuk membuat film animasi, efek
visual, model cetak 3D, aplikasi 3D interaktif dan permainan video. Blender
memiliki beberapa fitur termasuk pemodelan 3D, penteksturan, penyunting gambar
bitmap, penulangan, simulasi cairan dan asap, simulasi partikel, animasi,
penyunting video, pemahat digital, dan rendering.
Referensi: