[Techonology, Business, and Artificial Intelligence on Game]
4:43 PM
[Techonology,
Business, and Artificial Intelligence on Game ]
1.
Teknologi Game
Teknologi
adalah sebuah pengetahuan yang ditujukan untuk menciptakan alat, tindakan
pengolahan dan ekstraksi benda. Istilah "teknologi" telah dikenal
secara luas dan setiap orang memiliki cara mereka sendiri memahami pengertian
teknologi. Teknologi digunakan untuk menyelesaikan berbagai permasalahan dalam
kehidupan kita sehari-hari, secara singkat; kita bisa menggambarkan teknologi
sebagai produk, proses, atau organisasi. Selain itu, teknologi digunakan untuk
memperluas kemampuan kita, dan yang membuat orang-orang sebagai bagian paling
penting dari setiap sistem teknologi.
Teknologi juga merupakan aplikasi dari sains untuk memecahkan masalah. Tapi apa yang harus kita ketahui adalah bahwa teknologi dan sains adalah subyek yang berbeda yang bekerja dari tangan-ke-tangan untuk menyelesaikan tugas tertentu atau memecahkan suatu masalah tertentu.
Teknologi juga merupakan aplikasi dari sains untuk memecahkan masalah. Tapi apa yang harus kita ketahui adalah bahwa teknologi dan sains adalah subyek yang berbeda yang bekerja dari tangan-ke-tangan untuk menyelesaikan tugas tertentu atau memecahkan suatu masalah tertentu.
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.
Game bertujuan untuk menghibur,
biasanya game banyak disukai oleh anak – anak hingga orang dewasa. Games
sebenarnya penting dalam perkembangan otak, untuk meningkatkan konsentrasi dan
melatih untuk memecahkan masalah dengan tepat dan cepat karena dalam game
terdapat berbagai konflik atau masalah yang menuntut kita untuk
menyelesaikannya dengan cepat dan tepat. Tetapi game juga bisa merugikan karena
apabila kita sudah kecanduan game kita akan lupa waktu dan akan mengganggu
kegiatan atau aktifitas yang sedang kita lakukan.
2. Business dalam
game
Di zaman modern ini, tidak dipungkiri
lagi bahwa game sangat berperan untuk sebagian besar pengguna teknologi,
terutama pengguna komputer. Game merupakan sarana hiburan di tengah padatnya
aktvitas yang dilalui. Namun, game ternyata juga dapat dijadikan sebuah bisnis
yang menjanjikan. Dengan hobi para gamer ini, tentu terdapat peluang untuk
mendapatkan profit.
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.
Game/permainan adalah sesuatu yang
sangat digemari oleh anak-anak hingga orang dewasa. Game berarti “hiburan”.
Permainan 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.
Beberapa waktu lalu istilah “game”
yang dalam bahasa Indonesia adalah “permainan” identik dengan anak-anak
selaku pemain. Tentunya dalam permainan itu suatu kegiatan yang dilakukan oleh
anak-anak yang menurut mereka itu dapat menyenangkan hati mereka. Segala bentuk
kegiatan yang memerlukan pemikiran, kelincahan intelektual dan pencapaian
terhadap target tertentu dapat dikatakan sebagai game. Tetapi yang akan dibahas
pada kesempatan ini adalah game yang terdapat di komputer, baik off line maupun
online.
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.
a. OGRE 3D
OGRE (Object-Oriented Graphics
Rendering Engine) adalah engine yang object oriented & flexible 3D
rendering pada game engine yang ditulis dalam bahasa C++ serta didesain untuk
mampu men-developer dengan intuitif & 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 object yang lebih tinggi.
OGRE hanyalah rendering engine.
Seperti pada engine lainnya, hanya saja OGRE pada umumnya hanya sebagai graphic
rendering. Dengan kata lain fitur OGRE hanya khusus menangani vector &
matrix classes, memory handling, dan lain-lain. Ini bukanlah salah satu dari
semua solusi dalam istilah game development / simulasi, OGRE tidak menyediakan
audio / physics support.
b. Processing
Processing adalah bahasa pemrograman
dan lingkungan pemrograman (development environment) open source untuk
memprogram gambar, animasi dan interaksi. Digunakan oleh pelajar, seniman,
desainer, peneliti, dan hobbyist untuk belajar, membuat prototipe, dan
produksi. Processing digunakan untuk mengajarkan dasar-dasar pemrograman
komputer dalam konteks rupa dan berfungsi sebagai buku sketsa perangkat lunak (software)
dan tool produksi profesional.
Processing adalah suatu projek terbuka
yang diinisiasi oleh Ben Fray dan Casey Reas. Berkembang dari
ide-ide yang dieksplorasi di Aesthetics and Computation Group (ACG) di MIT
Media Lab. Projek ini kini terus diperbaiki dan dikelola oleh sejumlah kecil tim
voluntir.
Processing mengaitkan konsep software
pada prinsip-prinsip bentuk rupa, gerak, dan interaksi. Processing
mengintegrasikan suatu bahasa pemrograman, lingkungan pemrograman, dan
metodologi pengajaran ke dalam sistem terpadu.
c. Game Maker
Game Maker adalah software yang bisa
membantu anda menjadi pengembang game komputer tanpa menggunakan coding
sedikitpun. Bahkan anda bisa membuat game 3 Dimensi dan MultiPlayer jika anda
mau. Anda mempunyai hak penuh dari software (game) yang anda buat termasuk
menjual game tersebut. Jika masih kurang anda bahkan bisa mendownload musik,
efek suara, gambar, script, background dsb.
d. Unity 3D
UNITY 3D adalah sebuah game developing
software. Dengan software ini, kita bisa membuat game 3D yang seru. Jika anda
belum memakai unity3D, maka bersiaplah untuk mencobanya, karena game developer
ini sangat mudah menggunakannya, dengan GUI yang memudahkan kita untuk membuat
mengedit dan membuat 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, & android. Namun masing-masing membutuhkan
biaya lisensinya sendiri. Selain itu juga bisa juga buat web, cuma
butuh install Unity webplayer nya ajah. Unity lebih kurang sama dengan
Blender game engine cuma unity lebih ringan dan diintegrasi lebih didalam
suasana grafik.
3. 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.
Walaupun AI memiliki konotasi fiksi ilmiah yang kuat, AI membentuk cabang yang sangat penting pada ilmu komputer, berhubungan dengan perilaku, pembelajaran dan adaptasi yang cerdas dalam sebuah mesin. Penelitian dalam AI menyangkut pembuatan mesin untuk mengotomatisasikan tugas-tugas yang membutuhkan perilaku cerdas. Termasuk contohnya adalah pengendalian, perencanaan dan penjadwalan, kemampuan untuk menjawab diagnosa dan pertanyaan pelanggan, serta pengenalan tulisan tangan, suara dan wajah. Hal-hal seperti itu telah menjadi disiplin ilmu tersendiri, yang memusatkan perhatian pada penyediaan solusi masalah kehidupan yang nyata. Sistem AI sekarang ini sering digunakan dalam bidang ekonomi, obat-obatan, teknik dan militer, seperti yang telah dibangun dalam beberapa aplikasi perangkat lunak komputer rumah dan video game.
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 (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 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.
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. 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.
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.
4. Skenario,
Script, dan Story Board
Game Design Concept merupakan bahasa
terjemahan dari Konsep desain permainan, atau bias 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 bias 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
-
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.
Storyboard pada Game
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.
5. Arsitektur
Game Engine
Arsitek adalah pelajaran untuk
membuat rancangan dari bangunan. Sedangkan 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.
Tahap awal dari merancang
suatu game adalah memilih jenis game yang akan dibuat agar dapat lebih
terfokus dalam mengerjakannya. Selanjutnya adalah mendesaian game yang
akan dibuat. Setelah kita memiliki desain game, langkah berikutnya adalah
mengimplementasikan desain tersebut menjadi source code. Apabila source
telah selesai dirancang, maka game tersebut dapat dimainkan dan digunakan
sesuai yang diinginkan oleh sang pembuat game. Apakah game tersebut dibuat
untuk dikomersilkan atau dikembangkan oleh orang lain.
Jenis-jenis Game Engine
Game engine biasanya datang
dengan berbagai macam jenis dan ditujukan untuk berbagai kemampuan pemrograman.
Ada 3 tipe game engine yang ada saat ini, diantaranya :
a. 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.
b. 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.
c. 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.
Sumber:
0 comments