Teknologi Game
Teknologi dibuat atas dasar ilmu pengetahuan dengan tujuan untuk mempermudah pekerjaan manusia. Kata teknologi sering menggambarkan penemuan dan alat yang menggunakan prinsip dan proses penemuan saintifik yang baru ditemukan. Meskipun demikian penemuan yang sangat lama seperti roda juga disebut sebuah teknologi. Definisi lainnya (digunakan dalam ekonomi) adalah teknologi dilihat dari status pengetahuan kita yang sekarang dalam bagaimana menggabungkan sumber daya untuk memproduksi produk yang diinginkan( dan pengetahuan kita tentang apa yang bisa diproduksi). Oleh karena itu, kita dapat melihat perubahan teknologi pada saat pengetahuan teknik kita meningkat.
Bisnis dalam game komputer sangat berkembang dengan pesat seiring 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.
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:
Game Design Concept merupakan bahasa terjemahan dari konsep desain permainan, atau bisa disebut juga Perancangan konsep permainan. Secara garis besar definisinya adalah suatu proses pengembangan atau perancangan dalam membangun sebuah skenario seperti desain gameplay, karakter atau tokoh, lingkungan, selama tahap produksi game tersebut. Perancang game bisa disebut juga sebagai sutradara pada sebuah film, karena membutuhkan skenario dan adegan yang dibintangi oleh masing-masing karakter pada game tersebut. Game design concept merupakan pembuatan alur game sama saja seperti membuat alur sebuah film, banyak faktor-faktor yang dapat mempengaruhi game tersebut menjadi terkenal, nanti akan kita bahas pada poin-poin berikutnya. Perancang Game terdiri atas, dibawah ini:
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.
Game Engine adalah sistem 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. Arsitektur mesin game adalah system perangkat lunak yang dirancang untuk menciptakan dan pengembangan video game. Dapat dikatakan bahwa arsitektur mesin game itu adalah rancangan dari sistem perangkat lunak dari game itu sendiri.
Teknologi dibuat atas dasar ilmu pengetahuan dengan tujuan untuk mempermudah pekerjaan manusia. Kata teknologi sering menggambarkan penemuan dan alat yang menggunakan prinsip dan proses penemuan saintifik yang baru ditemukan. Meskipun demikian penemuan yang sangat lama seperti roda juga disebut sebuah teknologi. Definisi lainnya (digunakan dalam ekonomi) adalah teknologi dilihat dari status pengetahuan kita yang sekarang dalam bagaimana menggabungkan sumber daya untuk memproduksi produk yang diinginkan( dan pengetahuan kita tentang apa yang bisa diproduksi). Oleh karena itu, kita dapat melihat perubahan teknologi pada saat pengetahuan teknik kita meningkat.
Dalam bahasa Indonesia
game berarti permainan. Permainan yang dimaksud dalam game juga merujuk pada
pengertian sebagai kelincahan intelektual (intellectual playability). Sementara
kata game bisa diartikan sebagai arena keputusan dan aksi pemainnya. Ada
target-target yang ingin dicapai pemainnya. Kelincahan intelektual, pada
tingkat tertentu, merupakan ukuran sejauh mana game itu menarik untuk dimainkan
secara maksimal. Maka bermain game merupakan suatu proses fine tuning (atau
penyamaan frekuensi) dari logika berpikir anak-anak kita dengan logika berpikir
aplikasi komputer yang canggih tadi. Pada saat bersamaan, game juga secara
nyata mempertajam daya analisis para penggunanya untuk mengolah informasi dan
mengambil keputusan cepat yang jitu.
Perkembangan teknologi
sangat berpegaruh terhadap perkembangan game, dimana perubahannya akhir-akhir
ini makin pesat berkembang. Pada sekitar awal dekade 80-an, sebenarnya sudah
ada persaingan ketat antar perusahaan game dalam memasarkan produknya. Game
yang populer dengan nama video game ini hanya bisa dimainkan oleh satu atau dua
orang pemain pada sebuah console. Pesawat televisi dibutuhkan sebagai media
tampilan. Jenis game-nya juga masih sangat sederhana dengan grafik yang sangat
kasar. Tampilannya mirip seperti game dari bahasa program Java, yang bisa
dimainkan di handphone sekarang ini. Perusahaan game yang terkenal pada saat
itu adalah Atari, Sega dan Nintendo. Video game dapat
disebut juga sebagai sebuah bentuk dari multimedia interaktif yang digunakan
untuk sarana hiburan. Game ini dimainkan dengan menggunakan sebuah alat yang
bisa digenggam oleh tangan dan tersambung ke sebuah kotak alat atau console.
Alat yang digenggam tangan tadi dikenal dengan nama joystick. Isinya adalah
beberapa tombol-tombol sebagai kontrol arah maju, mundur, kiri dan kanan,
dimana fungsinya adalah untuk berinteraksi dan mengendalikan gambar-gambar di
layar pesawat televisi. Game ini juga biasanya dimainkan dengan memasukan
sebuah keping CD yang bisa diganti-ganti atau cartridge yang harus dimasukkan
ke dalam game console.
Bisnis dalam Game
Komputer
Bisnis dalam game komputer sangat berkembang dengan pesat seiring 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.
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 dan Ragnarok.
- 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.
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
Objected-Oriented
Graphics Rendering Engine atau bisa disingkat dengan OGRE merupakan engine yang
object oriented & flexible 3D rendering pada game engine yang ditulis
dengan menggunakan bahasa C++ serta didesain agar mampu men-developer dengan
mudah kepada aplikasi produksi dengan menggunakan utility hardware-accelerated
3D graphic. Gambaran abstraknya OGRE menggunakan sistem library seperti
Direct3D & OpenGL, serta menyediakan sebuah dasar interface di dunia objek
dan class objek yang lebih tinggi.
OGRE hanya digunakan
untuk me-render. Dengan kata lain, fitur OGRE hanya khusus menangani vector
& matOix classes, memory handling, dan lain lain. Ini bukan lah salah satu
dari semua solusi dalam istilah game development/simulasi. OGRE tidak menyediakan
audio/physics support.
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.
Game Maker
Game Maker adalah software
yang bisa membantu anda menjadi pengembang game komputer tanpa menggunakan
coding sedikitpun. Dapat digunakan untuk membuat 3 dimensi dan Multiplayer.
Game Maker dapat menjadikan hak penuh dari software (game) yang anda buat
termasuk dapat menjual game tersebut, bahkan bisa mendownload music dan efek
suara.
Unity 3D
Unity 3D adalah sebuah
game developing software. Dengan software ini, kita bisa membuat game 3D yang
seru. Game developer ini sangat mudah digunakan, dengan GUI yang memudahkan
kita untuk membuat derta mengedit script untuk menciptakan sebuah game 3D.
Selain bisa untuk build game PC, Unity juga dapat digunakan untuk membangun
game console seperti Nintendo Wii, PS3, Xbox 360, juga Ipad, Iphone, dan
Android. Namun masing-masing membutuhkan biaya lisensinya sendiri. Unity kurang
lebih sama dengan Blender game engine, namun unity lebih ringan dan diintegrasi
lebih dalam suasana grafik.
Desain Skenario, Script, dan
Storyboard Game Komputer
Game Design Concept merupakan bahasa terjemahan dari konsep desain permainan, atau bisa disebut juga Perancangan konsep permainan. Secara garis besar definisinya adalah suatu proses pengembangan atau perancangan dalam membangun sebuah skenario seperti desain gameplay, karakter atau tokoh, lingkungan, selama tahap produksi game tersebut. Perancang game bisa disebut juga sebagai sutradara pada sebuah film, karena membutuhkan skenario dan adegan yang dibintangi oleh masing-masing karakter pada game tersebut. Game design concept merupakan pembuatan alur game sama saja seperti membuat alur sebuah film, banyak faktor-faktor yang dapat mempengaruhi game tersebut menjadi terkenal, nanti akan kita bahas pada poin-poin berikutnya. Perancang Game terdiri atas, dibawah ini:
- Pemimpin Desainer, merupakan seorang yang menggerakan konsep game tersebut menjadi lebih menarik, yang membuat game tersebut mempunyai nilai artistic.
- Game mechanic designer, seorang yang membuat aturan-aturan dalam permainan, sehingga permainan tersebut tidak berat sebelah atau seimbang.
- Tingkat Desainer atau Lingkungan Desainer adalah orang yang brtanggung jawab dalam membuat lingkungan permainan, agar permainan atau game menjadi lebih real seperti game yang berbasis tiga dimensi.
- Penulis atau Writter adalah seorang yang mempunyai narasi dalam game tersebut dari setiap alur cerita, apa yang harus dilakukan pemain dalam memainkan game tersebut. Penulis harus bekerja sama dalam pembuatan skenario game dengan desainer utama.
Script adalah bahasa
pemrograman komputer yang diterjemahkan secara khas dengan tingkat kesulitan
yang lebih rendah, dan tanpa aplikasi kompilasi interpreter. Script diciptakan
untuk mempersingkat proses pengkompilasian hingga dijalankannya program
tersebut. Biasanya script disisipkan kedalam bahasa pemrograman yang lebih
kompleks. Contoh dari bahasa script adalah Ruby, JavaScript, Lua dan PHP.
Konsep pembuatan scripting pada game untuk
langkah awal dapat dilakukan pemilihan bahasa pemrograman yang akan digunakan.
Diantaranya bahasa C, C++, dan Java. Proses pembuatan game dapat dikatakan
memakan waktu yang cukup banyak. Lamanya pembuatan game tersebut bergantung
pada beberapa faktor, seperti genre, skala, dan platform.
Storyboard adalah sketsa gambar
yang disusun berurutan sesuai dengan naskah, dengan storyboard kita dapat
menyampaikan ide cerita kita kepada orang lain dengan lebih mudah, karena kita
dapat menggiring khayalan seseorang mengikuti gambar-gambar yang tersaji,
sehingga menghasilkan persepsi yang sama pada ide cerita kita. Storyboard pada
Game sedikit berbeda dari storyboard animasi, dimana pada storyboard game
terdapat goal / mission yang akan dibuat pada game itu sendiri. Kemudian
storyboard pada game menjelakaskan tentang alur permaianan itu sendiri seperti
apa tergantung dari jenis game. misalkan game ber-genre arcade tidak memiliki
alur cerita namun game terebut menitik beratkan pada perolehan point. Jadi
storyboard yang dibuat yaitu bagaimana pemain mendapat nilai / point setinggi
mungkin.
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.
Game AI adalah aplikasi
untuk memodelkan karakter yang terlibat dalam permainan baik sebagai lawan,
ataupun karakter pendukung yang merupakan bagian dari permainan tetapi tidak
ikut bermain (NPC = Non Playable Character). Peranan kecerdasan buatan dalam
hal interaksi pemain dengan permainan adalah pada penggunaan interaksi yang
bersifat alami yaitu yang biasa digunakan menusia untuk berinteraksi dengan
sesama manusia. Contoh media interaksi ialah:
- Penglihatan (vision)
- Suara (voice), ucapan (speech)
- Gerakan anggota badan ( gesture)
A. 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 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).
- 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.
B. 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.
C. Algoritma Dijkstra
C. 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.
D. 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.
Arsitektur Game Engine
Game Engine adalah sistem 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. Arsitektur mesin game adalah system perangkat lunak yang dirancang untuk menciptakan dan pengembangan video game. Dapat dikatakan bahwa arsitektur mesin game itu adalah rancangan dari sistem perangkat lunak dari game itu sendiri.
Beberapa elemen yang
terdapat dalam game engine, yaitu:
- Tools/Data
Pada 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.
- System
System adalah bagian
dari game engine yang berfungsi untuk melakukan komunikasi dengan hardware yang
berada di dalam mesin. System adalah bagian yang membutuhkan perubahan yang
cukup banyak apabila dilakukan implementasi pada platform yang berbeda. Di
dalam system sendiri terdapat beberapa sub system seperti graphics, input,
sound, timer, configuration. System bertanggung jawab untuk melakukan
inisialisasi, update dan mematikan sub system yang terdapat di dalamnya.
- Console
Console dapat merubah
setting game dan setting game engine di dalam game tanpa perlu melakukan
restart pada game tersebut. Console biasa digunakan dalam proses debugging,
seperti misalnya apabila game engine tersebut mengalami error maka kita hanya
mengoutputkan error message tersebut ke dalam console tanpa harus melakukan
restart.
- Support
Support merupakan bagian
yang sering digunakan pada system di galam game engine. Support berisikan
rumus-rumus matematika yang biasa digunakan, vector, matrix, memory, file
loader. Merupakan dasar dari game engine dan hampir digunakan dalam semua
project game engine.
- Renderer/Engine Core
Renderer/engine core
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.
- Game Interface
Game interface merupakan
layer antara game engine dan game itu sendiri. Berfungsi sebagai control yang
bertuuan untuk memberikan interface apabila di dalam game engine tersebut terdapat
fungsi yang bersifat dinamis sehingga memudahkan untuk mengembangkan game
tersebut.
- The Game
Game merupakan inti dari penggunaan game engine
sendiri, sehingga ini tergantung bagaimana pengguna dalam mengembangkannya.
Referensi :
Komentar
Posting Komentar