Rabu, 18 April 2012

Arsitektur Mesin Game

Game Engine (bahasa Indonesia: mesin permainan) adalah sebuah sistem software yang dirancang untuk pembuatan dan pengembangan suatu video game. Ada banyak sekali game engine yang dirancang untuk bekerja pada beberapa konsol video game dan sistem operasi desktop seperti Microsoft Windows, Linux dan Mac OS X. Fungsi utama yang secara khusus disediakan oleh game engine meliputi mesin render (renderer) untuk grafik 2D atau 3D, mesin fisika, deteksi tabrakan (dan tanggapan tabrakan), suara, script, animasi, kecerdasan buatan, jaringan, streaming, manajemen momori, threading, dukungan lokalisasi dan layar grafik. Proses pembuatan game seringkali dihemat oleh sebagian besar dengan menggunakan kembali game engine yang sama untuk membuat game yang berbeda.

Game engine biasanya datang dengan berbagai macam jenis dan ditujukan untuk berbagai kemampuan pemrograman. Ada 3 tipe game engine yang ada saat ini, diantaranya :

1. Roll-your-own game engine
Banyak perusahaan game kecil seperti publisher indie biasanya menggunakan engine-nya sendiri. Mereka menggunakan API seperti XNA, DirectX atau OpenGL untuk membuat game engine mereka sendiri. Di sisi lain, mereka kadang menggunakan library komersil atau yang open source. Terkadang mereka juga membuat semuanya mulai dari nol. Biasanya game engine tipe ini lebih disukai karena selain kemungkinan besar diberikan secara gratis, juga memperbolehkan mereka (para developer) lebih fleksibel dalam mengintegrasikan komponen yang diinginkan untuk dibentuk sebagai game engine mereka sendiri. Kelemahannya banyak engine yang dibuat dengan cara semacam ini malah menyerang balik developernya. Tower Games Studio membutuhkan satu tahun penuh untuk menyempurnakan game engine-nya, hanya untuk ditulis ulang semuanya dalam beberapa hari sebelum penggunaannya karena adanya bug kecil yang sangat mengganggu.

2. Mostly-ready game engines

Engine ini biasanya sudah menyediakan semuanya begitu diberikan pada developer/programer. Semuanya termasuk contoh GUI, physiscs, libraries model, 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. Hal ini ditujukan agar tidak terjadi banyak error yang mungkin terjadi setelah sebuah game yang menggunakan engine ini dirilis dan masih memungkinkan game engine-nya tersebut untuk mengoptimalkan kinerja game-nya. Contoh tipe game engine seperti ini adalah Unreal Engine, Source Engine, id Tech Engine dan sebagainya yang sudah sangat optimal dibandingkan jika harus membuat dari awal. Dengan hal ini dapat menyingkat menghemat waktu dan biaya dari para developer game.

3. Point-and-click engines

Engine ini merupakan engine yang sangat dibatasi, tapi 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, kamu sudah bisa merilis game point-and-click yang kamu banget. Kekurangannya terletak pada terbatasnya jenis interaksi yang bisa dilakukan dan biasanya hal ini mencakup semuanya, mulai dari grafis hingga tata suara. Tapi bukan berarti game engine jenis ini tidak berguna, bagi developer cerdas dan memiliki kreativitas tinggi, game engine seperti ini bisa dirubah menjadi sebuah game menyenangkan, seperti Flow. Game engine ini memang ditujukan bagi developer yang ingin menyingkat waktu pemrogramman dan merilis game-game mereka secepatnya.

Perbandingan Tools + Software untuk Pengembangan Game

Game Tools merupakan suatu software aplikasi spesial yang menangani dan memfasilitasi dalam membuat sebuah game baik PC ataupun konsol. Pada game tools terdapat fungsi yang menyertai konversi yang diperlukan dalam pembuatan game (seperti 3D models, texture, level editing, script compilation, dll).

Sebagian besar game tools biasanya hanya bisa mendeveloped satu jenis game saja, tetapi seiring perkembangan zaman sekarang banyak game tools dapat membuat lebih dari satu genre. Setiap game tool memiliki fitur yang berbeda, yang paling menonjol dari sisi grafis. Tidak semua game tools dapat menghasilkan kualitas gambar yang bagus dan tidak semua game tools menggunakan scripting / code base dalam proses pembuatannya.


Tools atau software untuk pengembangan game menurut saya dibagi menjadi 2 tipe yaitu freeware(gratis) dan komersil(berbayar). Contoh tools atau software dari freeware dan komersil bisa lihat dibawah ini :

1. Freeware :
Blender
OGRE
jMonkeyEngine

2. Komersil :
3D Game Studio
3D Game Maker
JamagicBlitz 3D

Berikut adalah kelebihan dan kekurangan dari freeware dan komersil tersebut :
1. Freeware :
Kelebihan
- Tidak perlu mengeluarkan biaya.
Kekurangan
- Fasilitas yang diberikan tidak selengkap software berbayar.

2. Komersil :
Kelebihan
- Plugin dan tools yang disediakan software lengkap.
Kekurangan
- Berbayar dan biasanya biandrol dengan harga yang mahal.

Jenis-jenis Game dan Opportunity Untuk Menunjang Creative Indusrty.

RPG (Role Playing Game)
RPG adalah salah satu game yg didalamnya mengandung unsur experience atau leveling dalam gameplay nya. Biasanya dalam game ini kita memiliki kebebasan untuk menjelajah dunia game tersebut, dan kadang kala dalam beberapa game, kita dapat menentukan ending dari game tersebut. RPG juga merupakan sebuah permainan bermain peran yang ceritanya sangatlah panjang bahkan bisa saja anda membutuhkan waktu lebih dari 20 jam untuk menyelesaikan game tersebut. Memiliki alur cerita yang bisa saja berbeda tergantung apa langkah yang dilakukan user ketika bermain.
Contoh game RPG : Suikoden 2


FPS (First Person Shooting)
FPS merupakan game tembak menembak yang memiliki ciri utama yaitu penggunaan sudut pandang orang pertama yg membuat kita dibelakang senjata. Biasanya game jenis ini lebih sering dijumpai dalam bentuk multiplayer game dibandingkan permain tunggal.

Strategy
Game strategy merupakan game yang membutuhkan pemikiran anda dalam menerapkan suatu strategi pada permainan. Biasanya game bergenre strategy adalah game yang menggerakan sebuah unit pasukan, dengan membangun-bangunan untuk mendapat sumber daya yang tujuannya adalah menghancurkan pasukan lawan.
Contoh Strategy Game : WarCraft


Racing
Racing Game adalah game sejenis racing yang memungkinkan kita untuk mengendalikan sebuah kendaraan untuk memenangkan sebuah balapan. Bahkan terdapat beberapa game racing yang kendaraannya memiliki senjata khusus sehingga pada saat balapan tidak hanya adu kencang tetapi juga penggunaan senjata untuk memperlambat musuh.
Contoh Racing Game : NFS Porsche Unleashed


Fighting Game
Fighting adalah genre game bertarung. Pemain dapat mengeluarkan jurus-jurus ampuh dalam pertarungannya dimana masing-masing karakter biasanya memiliki jurus yang berbeda. Genre fighting biasanya one on one dalam sebuah arena yang sempit.
Contoh Fighting Game : Tekken 5


Sports
Sports adalah genre bertema permainan olahraga. Sistem permainan akan berbeda-beda tergantung jenis olahraga yang menjadi tema game tersebut.
Contoh Sports Game : PES 2012


Opportunity Untuk Menunjang Creative Indusrty.
Jika game dihubungkan dengan
opportunity dalam menunjang creavite industri, maka game-game pasti akan terus bertambah banyak dan menarik untuk dimainkan. karena jika dilihat dari pengertian opportunity dalam menunjang creavite industri, yang berarti menuangkan ide-ide, keterampilan dan kreativitas hasil sendiri, karena itu ide-ide tersebut akan terus bermunculan bersamaan dengan perkembangan tekhnologi, sehingga dapat dipastikan creative industry pasti akan terus berkembang berserta game-game baru yang bermunculan nantinya.