Monday, June 29, 2015

Artificial Intellegent Pada Game Engine

Artificial Intelligence adalah sebuah ilmu komputer yang menangani kasus kecerdasan buatan yang dapat dilakukan oleh komputer.AI pada game biasanya digunakan untuk NPC(non-player-characters) jadi NPC ini adalah dia bergerak secara otomatis tanpa kita kendalikan sehingga NPC ini dapat di set menjadi lawan atau kawan sehingga permainan menjadi lebih hidup tanpa harus ada player yang dapat memainkannya,AI itu sendiri sebuah kumpulan yang mana berisikan teknik-teknik / algoritma khusus untuk menyelesaikan sebuah permasalahan.

Game Engine adalah suatu software yang digunakan untuk membuat game. Fungsi utama dari Game Engine adalah sebagai renderer grafik 2D maupun 3D,  physics engine, pengatur audio, scripting, animasi game, AI (Artificial Intelligence), networking, streaming, pengaturan memori, localization support, dan pengaturan grafik. Satu Game Engine bisa untuk membuat berbagai tipe game, dan bisa memudahkan “port”  games ke console lain.

Terdapat 3 tipe game engine 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.

Di dalam game engine, terdapat fungsi-fungsi atau modul-modul, antara lain :
·         Rendering engine
·         Physical engine (collision detection)
·         Sound script
·         Animation
·         Artificial intelegenct
·         Network
·         Streaming
·         Memory management
·         Scene graph

Tujuan Penggunaan Game Engine

Tujuan penggunaan game engine untuk menyediakan fasilitas yang memudahkan pengembangan, seperti grafik, suara, fisika dan fungsi AI. Mesin permainan biasanya menyediakan abstraksi platform, yang memungkinkan permainan yang sama untuk dijalankan pada berbagai platform termasuk game konsol dan komputer pribadi dengan sedikit, jika ada, perubahan yang dibuat ke kode sumber permainan. Seringkali, mesin permainan dirancang dengan arsitektur berbasis komponen yang memungkinkan sistem tertentu dalam mesin yang akan diganti atau diperpanjang dengan lebih khusus (dan sering kali lebih mahal) komponen middleware game seperti Havok untuk fisika, Miles Sound System untuk suara, atau Bink untuk Video.



Daftar pustaka :
http://rakaadya.blogspot.com/2015/04/pembuatan-game-menggunakan-ai-pada-game.html
https://en.wikipedia.org/wiki/Game_engine
https://en.wikipedia.org/wiki/Artificial_intelligence_%28video_games%29
http://youinuniverse.blogspot.com/2015/04/artificial-intelligence-game-engine.html