Pengertian Teknologi Game
Teknologi game terdiri dari dua kata, yaitu Teknologi
dan Game. Teknologi adalah keseluruhan fasilitas untuk menyediakan sesuatu yang
dibutuhkan bagi kelangsungan dan kenyamanan hidup manusia. Secara umum
teknologi dapat didefinisikan sebagai entitas, benda maupun bukan benda yang
diciptakan secara terpadu melalui perbuatan dan pemikiran untuk mencapai suatu
tujuan.
Sedangkan Game adalah permainan yang menggunakan interaksi antarmuka
pengguna melalui gambar yang dihasilkan oleh piranti video.
Jadi dapat kita simpulkan bahwa Teknologi Game
berarti proses baik berupa yang dilakukan sistem atau perangkat keras yang
diberlakukan dalam upaya untuk mendukung kinerja dari game.
Teknologi yang digunakan untuk membuat game.
Teknologi Augmented Reality (AR) makin berkembang dan
sudah memasuki dunia video game komersial. Video game AR pertama yang cukup
populer adalah party game dengan EyeToy untuk konsol PS2 pada tahun 2003.
Beberapa saat setelah konsol PS3 dipasarkan, muncul video game berjudul ‘The
Eye of Judgement’ yang merupakan pengembangan teknologi AR dan sangat menarik
secara visual, dan yang cukup baru adalah ‘Eyepet’, yang mulai mengintegrasikan
interaksi dengan pemain dan munculnya teknologi yang menjembatani dunia nyata
dan dunia maya. Produk Collectible Card seperti dibawah ini juga merupakan
contoh makin luasnya adopsi teknologi AR untuk permainan komersial.
Bisnis dalam Game Komputer
Bisnis dalam game komputer berkembang pesat seiring
dengan berkembangnya teknologi canggih saat ini. Dahulu kita hanya dapat
menikmati game yang tersedia di dalam komputer itu sendiri, seperti pinball dan
solitaire. Namun sekarang sudah tersedia game online, dan juga games yang dapat
didownload baik free maupun berbayar. Games berbayar juga merupakan bisnis
karena sama saja dengan kita mengeluarkan uang untuk membeli sebuah barang.
Games berbayar ini biasanya memberikan kepuasan tersendiri bagi pembelinya,
karena terdapat fitur yang bagus di dalamnya. Perkembangan lainnya ialah warung
internet atau yang sering kita dengar dengan istilah warnet. Warnet kini
identik dengan game online yang mereka sediakan, adapun game berbayar yang
disediakan warnet sehingga kita hanya tinggal memainkannya. Baik anak kecil
hingga orang dewasa mempunyai hobi bermain game online ini. Dengan menyediakan
tempat, perangkat komputer yang lengkap, dan fasilitas pendukung lainnya,
membuat gamers betah berlama-lama untuk bermain.
Perkembangan ini terlihat dari banyaknya game center
yang terus bermunculan, terutama yang menyediakan jasa game online. Bukan tanpa
alasan game online menjadi semakin marak dan digandrungi, karena fasilitas
online memungkinkan sebuah game dapat dimainkan oleh 100 orang lebih secara
bersama-sama dalam satu waktu.
Contoh untuk bisnis dalam game komputer itu beragam.
Seperti kita dituntut melakukan pembayaran untuk game tersebut. Maksud dari
pembayaran ini adalah bagaimana perusahaan game online mendapatkan uang dari
gamesnya. Bedasarkan kategori ini games online dapat dibedakan menjadi 2 yaitu:
- Pay per item: game yang berada pada category ini merupakan game yang bisa diinstall atau dimainkan secara gratis, dan game ini biasanya mengenakan biaya pada pemainnya apabila pemainnya ingin cepat menaikkan level atau membeli barang (item) langka yang tidak pernah dijumpai pada permainan. Jenis game seperti ini yang paling dijumpai di Indonesia. Contoh: Gunbound, Ragnarok, Ghost Online, dan lain sebagainya.
- Pay per play: game ini harus dibeli dan diinstal secara legal karena pada saat diinstal game terebut akan mendaftarkan pemain ke internet langsung dan apabila yang diinstal adalah program bajakan maka secara otomatis system akan memblokirnya. Contoh: The Division, Fifa, dan lain sebagainya
3D Engine dan Scene Graph
3D engine adalah sistem perangkat lunak yang dibuat
dan dirancang untuk menciptakan dan mengembangkan gambar 3D, fungsionalitas
inti biasanya disediakan oleh mesin permainan mencakup mesin render (renderer)
untuk 2D/3D grafis.
Konsep scene graph merupakan inti dari Java3D.
Sebuah scene graph merupakan g rafik yang mempresentasikan geometri, material,
dan pencahayaan. Scene graph dimulai dari root dengan sebuah Virtual Universe
dan mencakup transformasi serta geometri untuk mendefinisikan objek di dunia
maya. Secara garis besar, ada tiga tahap fundamental yang diperlukan untuk
menghasilkan objek 3D, yaitu:
- Menciptakan objek Canvas3D.
- Menciptakan sebuah scene graph.
- Menghubungkan objek Canvas3D ke objek BranchGroup yang menunjuk root dari scene graph.
OGRE 3D
Object
Oriented Graphics Rendering Engine atau yang biasa dikenal dengan sebutan OGRE
adalah sebuah engine/ mesin yang berorientasi pada object, fleksibel mesin
render 3D (sebagai lawan dari mesin permainan) yang ditulis dalam bahasa C++
dirancang untuk membuatnya lebih mudah dan intuitif bagi developer untuk
menghasilkan aplikasi dengan menggunakan hardware – accelerated grafis 3D.
Pengetahuan
pemrograman dengan menggunakan bahasa C++ sangat diperlukan agar dapat
mengembangkan games / permainan dengan OGRE. OGRE itu sendiri tidak bisa
menggunakan bahasa C karena dikhususkan untuk pemrograman yang berorientasi
object. Untuk IDE nya kita pakai CodeBlocks + MinGw.
Game Maker
Game
Maker adalah sebuah game engine yang bisa membantu anda membuat sebuah game
komputer tanpa menggunakan codingan yang banyak dengan bahasa programan. Dengan
game maker anda dapat membuat game 2D, 3D atau multiplayer, dan anda juga
mempunyai hak penuh terhadap game yang anda buat.
GML
adalah bahasa scripting utama yang ditafsirkan mirip dengan Java kompilasi
Just-In-Time yang digunakan dalam GameMaker. Hal ini memungkinkan pengguna
untuk lebih meningkatkan dan mengendalikan desain permainan mereka melalui
pemrograman konvensional, yang bertentangan dengan sistem drag-and-drop.
Sintaks dari GML meminjam aspek dari bahasa lain seperti C, C + + dan Java,
efektif memanfaatkan pemrograman berorientasi objek.
Processing
Processing
adalah bahasa pemrograman dan lingkungan pemrograman yang bersifat open source
yang digunakan untuk memprogram gambar, animasi, dan interaksi. Processing
digunakan untuk mengajarkan dasar-dasar pemrograman komputer dalam konteks rupa
dan berfungsi sebagai buku sketsa perangkat lunak dan alat produksi
profesional. Processing mengintegrasikan suatu bahasa pemrograman, lingkungan
pemrograman, dan metodologi pengajaran ke dalam sistem terpadu.
Unity 3D
Unity
3D adalah sebuah game engine yang berbasis cross-platform. Unity dapat
digunakan untuk membuat sebuah game yang bisa digunakan pada perangkat
komputer, ponsel pintar android, iPhone, PS3, dan bahkan X-BOX.
Unity
adalah sebuah sebuah tool yang terintegrasi untuk membuat game, arsitektur
bangunan dan simulasi. Unity bisa untuk games PC dan games Online. Untuk games
Online diperlukan sebuah plugin, yaitu Unity Web Player, sama halnya dengan
Flash Player pada Browser.
Unity
tidak dirancang untuk proses desain atau modelling, dikarenakan unity bukan
tool untuk mendesain. Jika ingin mendesain, pergunakan 3D editor lain seperti
3dsmax atau Blender. Banyak hal yang bisa dilakukan dengan unity, ada fitur
audio reverb zone, particle effect, dan Sky Box untuk menambahkan langit.
Fitur
scripting yang disediakan, mendukung 3 bahasa pemrograman, JavaScript, C#, dan
Boo. Flexible and EasyMoving, rotating, dan scaling objects hanya perlu sebaris
kode. Begitu juga dengan Duplicating, removing, dan changing properties. Visual
Properties Variables yang di definisikan dengan scripts ditampilkan pada
Editor. Bisa digeser, di drag and drop, bisa memilih warna dengan color picker.
Berbasis .NET. Artinya penjalanan program dilakukan dengan Open Source .NET
platform, Mono.
Design scenario, script, dan storyboard game computer
Skenario adalah sebuah naskah cerita yang menguraikan urut-urutan
adegan, tempat, keadaan, dan dialog, yang disusun dalam konteks struktur dramatic.
Script adalah semacam bahasa pemrograman dalam tingkat kesulitan yang lebih
rendah, tanpa aplikasi hasil kompilasi interpreter. Sedangkan storyboard adalah
sketsa gambar yang disusun berurutan sesuai dengan naskah.
Jadi untuk membuat game computer, 3 hal di atas harus kita lakukan.
Pertama untuk pembuatan scenario atau membuat alur cerita dari game tersebut. Apabila
game tersebut merupakan board game yang alur ceritanya tidak ada, maka bisa
kita ganti dengan membuat artificial intelligence nya dengan algoritma yang
tepat. Setelah itu masuk ke proses scripting dan storyboard. Proses ini harus
selaras karena mereka saling bergantungan.
Berikut adalah contoh dari storyboard game yang pernah saya buat.
Artificial Intelligence pada game
Kecerdasan Buatan atau kecerdasan yang ditambahkan kepada suatu sistem
yang bisa diatur dalam konteks ilmiah atau Intelegensi Artifisial (bahasa
Inggris: Artificial Intelligence atau hanya disingkat AI) didefinisikan sebagai
kecerdasan entitas ilmiah. Sistem seperti ini umumnya dianggap komputer.
Kecerdasan diciptakan dan dimasukkan ke dalam suatu mesin (komputer) agar dapat
melakukan pekerjaan seperti yang dapat dilakukan manusia. Beberapa macam bidang
yang menggunakan kecerdasan buatan antara lain sistem pakar, permainan komputer
(games), logika fuzzy, jaringan syaraf tiruan dan robotika.
- Decision making
Decision Making
adalah serangkaian algoritma yang dirancang dengan memasukan beberapa kemungkinan
langkah yang bisa diambil oleh suatu aplikasi, Pada game ini decision
makingmemberikan kemampuan suatu karakter untuk menentukan langkah apa yang
akan diambil. Decision making dilakukan dengan cara menentukan satu pilihan
dari list yang sudah dibuat pada algoritma yang dirancang. Decision Making
dibagi menjadi 3:
- Decision Tree
Pohon Keputusan
(Decision Tree) merupakan metode klasifikasi dan prediksi yang sangat kuat dan
terkenal. Metode pohon keputusan mengubah fakta yang sangat besar menjadi pohon
keputusan yang merepresentasikan aturan. Aturan dapat dengan mudah dipahami
dengan bahasa alami. Aturan ini juga dapat diekspresikan dalam bentuk bahasa
basis data seperti SQL untuk mencari record pada kategori tertentu. Pohon
keputusan juga berguna untuk mengeksplorasi data, menemukan hubungan
tersembunyi antara sejumlah calon variabel input dengan sebuah variabel target.
Karena pohon keputusan memadukan antara eksplorasi data dan pemodelan, pohon
keputusan ini sangat bagus sebagai langkah awal dalam proses pemodelan bahkan
ketika dijadikan sebagai model akhir dari beberapa teknik lain (J R Quinlan,
1993).
- State Machine
Finite State
Machines (FSM) adalah sebuah metodologi perancangan sistem kontrol yang
menggambarkan tingkah laku atau prinsip kerja sistem dengan menggunakan tiga
hal berikut: State (Keadaan), Event (kejadian) dan action (aksi). Pada satu
saat dalam periode waktu yang cukup signifikan, sistem akan berada pada salah
satu state yang aktif. Sistem dapat beralih atau bertransisi menuju state lain
jika mendapatkan masukan atau event tertentu, baik yang berasal dari perangkat
luar atau komponen dalam sistemnya itu sendiri (misal interupsi timer).
Transisi keadaan ini umumnya juga disertai oleh aksi yang dilakukan oleh sistem
ketika menanggapi masukan yang terjadi. Aksi yang dilakukan tersebut dapat
berupa aksi yang sederhana atau melibatkan rangkaian proses yang relative
kompleks.
- Rule System
Rule Based System
merupakan metode pengambilan keputusan berdasarkan pada aturan-aturan tertentu
yang telah ditetapkan. RBS dapat diterapkan pada agen virtual dalam bentuk
kecerdasan buatan sehingga dapat melakukan tindakan tertentu. Tindakan tersebut
direpresentasikan oleh set aturan yaitu penyebab tindakan itu terjadi, proses
tindakan dan hasil dari tindakan tersebut.
- Path Finding
Metode path finding
paling mudah ditemui pada game-game bertipe strategi dimana kita menunjuk satu
tokoh untuk digerakkan ke lokasi tertentu dengan mengklik lokasi yang hendak
dituju. Si tokoh akan segera bergerak ke arah yang ditentukan, dan secara
“cerdas” dapat menemukan jalur terpendek ataupun menghindari dari
rintangan-rintangan yang ada. Salah satu algoritma pathfindin yang cukup umum
dan yang paling banyak digunakan utnuk mencari jarak terpendek secara efisien
adalah algoritma A* (baca: A star). Secara umum, algoritma A* adalah
mendefinisikan area pencarian menjadi sekumpulan node-node (tiles). Titik awal
dan titik akhir ditentukan terlebih dulu untuk mulai penelusuran pada tiap-tiap
node yang memungkinkan untuk ditelusuri. Dari sini, akan diperoleh skor yang
menunjukkan besarnya biaya untuk menempuh jalur yang ditemukan, ditambah dengan
nilai heuristik yang merupakan nilai biaya estimasi dari node yang ada menuju
tujuan akhir. Iterasi akan dilakukan hingga akhirnya mencapai target yang
dituju. Pathfinding dibagi menjadi 2:
- Algoritma Dijkstra
Algoritma Dijkstra,
(dinamai menurut penemunya, seorang ilmuwan komputer, Edsger Dijkstra), adalah
sebuah algoritma rakus (greedy algorithm) yang dipakai dalam memecahkan
permasalahan jarak terpendek (shortest path problem) untuk sebuah graf berarah
(directed graph) dengan bobot-bobot sisi (edge weights) yang bernilai
tak-negatif.
- Tactical Pathfinding
Tactical
Pathfinding merupakan salah satu algoritma pencarian jalur yang dapat melakukan
pencarian jalur terpendek dengan perhitungan bobot ancaman. Implementasi
algoritma tactical pathfinding dapat memberikan gerakan taktis pada non-player
character. Algoritma tactical pathfinding dilakukan berdasarkan algoritma
pencarian jalur berdasarkan A* ditambah perhitungan bobot.
Arsitektur Game Engine
Arsitektur mesin game adalah system perangkat lunak yang dirancang
untuk menciptakan dan pengembangan video game. Simplenya dari arsitektur mesin
game itu adalah rancangan dari sistem perangkat lunak dari game itu sendiri.
Ada banyak mesin permainan yang dirancang untuk bekerja pada konsol
permainan video dan sistem operasi desktop seperti Microsoft Windows, Linux,
dan Mac OS X. 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
Referensi Artikel
0 komentar:
Posting Komentar