Pengantar Teknologi Game
POKOK BAHASAN 1 :
Teknologi Game, Bisnis dalam Game Komputer, 3D Engine dan Scene Graph
Teknologi Game
Siapa
yang tidak kenal istilah Game. Game diambil dari bahasa Inggris yang
diterjemahkan yang artinya permainan. Di dalam era perkembangan teknologi yang
pesat ini, seperti halnya permainan kartu, catur dan lain-lainnya dapat ditemui
melalui dunia virtual atau yang biasa kita mainkan di dalam komputer.
Dengan
perkembangan teknologi sekarang ini munculah berbagai sarana permainan,
misalnya Playstation 3, Xbox 360, Nintendo Wii, PSP, Nintendo DS, maupun PC
dari yang berbasis individu ataupun multiplayer. Perkembangan teknologi game
ini cukup panjang dari awal kemunculanya sampai yang kita nikmati saat ini.
Bisnis Dalam Game Komputer
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.
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
:
A. 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,dll.
B. 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: War of Warcraft,dll.
Mungkin kita juga tidak asing mendengar permainan
Let's Get Rich. LGR merupakan permainan monopoly yang sudah dimodifikasi
sedemikian rupa. Ini merupakan game yang kita jumpai di gadget, baik android
maupun iOs. Dalam game ini kita sangat membutuhkan diamond yang berfungsi untuk
membeli item bagus yang dapat meningkatkan peluang kita untuk menjadi pemenang.
Diamond ini pun dapat dijadikan bisnis karena mengharuskan kita mengeluarkan
uang untuk mendapatkannya.
Design, merupakan tahap yang berisi mengenai alur
cerita, kode program, spesifikasi perangkat keras, tampilan dan kebutuhan
material atau bahan dalam pengembangan aplikasi, sedangkan scenario merupakan
naskah cerita dari game yang dibuat. Jadi desain scenario, bisa juga dikatakan
sebagai rancangan naskah cerita pada suatu game yang dapat mempengaruhi jalan
pikir orang yang memainkan game tersebut.
3D Engine dan Scene Graph
Di dalam grafika komputer, 3D merupakan bentuk
grafik yang menggunakan representasi data geometri tiga dimensi. Grafik 3D ini
tersimpan didalam komputer untuk keperluan kalkulasi atau rendering gambar 3D.
Pada 3D, engine bukanlah exutable program, artinya engine tidak bisa dijalankan
sebagai program yang berdiri sendiri.
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.
Berbeda dengan dukungan grafik 2D yang sudah built
in, dukungan Java terhadap grafik 3D diletakkan ke dalam API terpisah, yakni
Java3D. Java3D merupakan API 3D berbasis scene graph di platform Java, dimana
scene graph merupakan sebuah pohon yang berisi hierarki data scene. Di dalam
api Java3D didefinisikan sejumlah kelas dan interface yang menyediakan beragam
operasi grafik 3D.
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.
Walaupun penjelasan diatas bisa dikatakan sebagai
kelemahan dari OGRE itu sendiri, akan tetapi semua itu sebanding dengan
kemampuan grafis yang ada pada game engine tersebut. Kelebihan yang paling
menonjol pada OGRE adalah graphics engine yang bisa memberikan para developer
sebuah kebebasan untuk menggunakan physics apapun, input, audio, & library
lainnya. OGRE memberikan para tim development untuk fokus pada graphics
daripada beberapa sistem-sistem yang ada dalam game development. OGRE dapat
mendupport OIS, SDL, CEGUI libraries. Sekarang ini OGRE adalah publish dibawah
dua lisensi, yaitu LGPL & OUL. Maka sekarang ini para publish tersebut
membuka OGRE sebagai free/open source software.
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.
Processing merupakan suatu projek yang dinisiasi
oleh Ben fry 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 Tim Voluntir.
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 musik, efek suara, gambar, script, serta
background.
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.
Kelebihan Unity terdapat pada multiple platform,
artinya banyak platform yang disupport oleh unity, seperti Windows, Mac,
iPhone, iPad, Android, Nintendo Wii, dan juga browser. Untuk browser, kita
memerlukan sebuah plug-in, yaitu Unity Web player, sama halnya dengan Flash
Player pada browser. Pada unity, kita tidak bisa melakukan desain/modelling
dikarenakan unity bukan tool untuk mendesain. Jadi jika kita ingin mendesain,
dibutuhkan 3D editor lain seperti 3Dsmax atau Blender, kemudian kita export
menjadi format .fbx.
POKOK BAHASAN 2 :
Desain Skenario, Script , dan Storyboard Game Komputer
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 juga berguna bagi editor untuk membantu
menyusun scene yang berbeda- beda menjadi sesuai dengan skenario dengan lebih mudah dan cepat. Jadi bisa
dibilang, storyboard merupakan gambaran scenario yang dibuat secara bertahap
yakni setiap scene dalam game. Storyboard ini yang nantinya akan menerangkan
susunan dari materi gameyang dibuat.
Script dalam game maker merupakan sekumpulan
perintah yang di tulis dalam bahasa pemrograman yang diberikan kepada suatu
objek agar dapat melakukan suatu interaksi dalam game.
POKOK BAHASAN 3 :
Artificial Intelligent pada Game
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).
Dalam situasi lain kemampuan untuk menjelaskan
alasan pengambilan keputusan adalah sesuatu yang sangat penting. Misalnya pada
perusahaan asuransi ada larangan resmi untuk mendeskriminasi berdasarkan
variabel-variabel tertentu. Perusahaan asuransi dapat mencari sendiri keadaan
yang mencerminkan bahwa mereka tidak menggunakan deskriminasi yang ilegal dalam
memutuskan seseorang diterima atau ditolak. Sebuah pohon keputusan adalah
sebuah struktur yang dapat digunakan untuk membagi kumpulan data yang besar
menjadi himpunan-himpunan record yang lebih kecil dengan menerapkan serangkaian
aturan keputusan. Anggota himpunan hasil menjadi mirip satu dengan yang lain
dengan masing-masing rangkaian pembagian. Sebuah model pohon keputusan terdiri
dari sekumpulan aturan untuk membagi sejumlah populasi yang heterogen menjadi
lebih kecil, lebih homogen dengan memperhatikan pada variabel tujuannya. Sebuah
pohon keputusan mungkin dibangun dengan seksama secara manual, atau dapat
tumbuh secara otomatis dengan menerapkan salah satu atau beberapa algoritma
pohon keputusan untuk memodelkan himpunan data yang belum terklasifikasi (Tan
dkk, 2004).
Variabel tujuan biasanya dikelompokkan dengan pasti
dan model pohon keputusan lebih mengarah pada perhitungan probabilitas dari
masing-masing record terhadap kategori-kategori tersebut, atau untuk
mengklasifikasi record dengan mengelompokkannya dalam satu kelas. Pohon
keputusan juga dapat digunakan untuk mengestimasi nilai dari variabel kontinyu,
meskipun ada beberapa teknik yang lebih sesuai untuk kasus ini.
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.
Berdasarkan sifatnya, metode FSM ini sangat cocok
digunakan sebagai basis perancangan perangkat lunak pengendalian yang bersifat
reaktif dan real time. Salah satu keutungan nyata penggunaan FSM adalah
kemampuannya dalam mendekomposisi aplikasi yang relative besar dengan hanya
menggunakan sejumlah kecil item state. Selain untuk bidang kontrol, Penggunaan
metode ini pada kenyataannya juga umum digunakan sebagai basis untuk
perancangan protokol-protokol komunikasi, perancangan perangkat lunak game,
aplikasi WEB dan sebagainya.
Dalam bahasa pemrograman prosedural seperti bahasa
C, FSM ini umumnya direalisasikan dengan menggunakan statemen kontrol switch
case atau/dan if..then. Dengan menggunakan statemen-statemen kontrol ini,
aliran program secara praktis akan mudah dipahami dan dilacak jika terjadi
kesalahan logika.
Rule Systems
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.
Rule Base Systems (RBS) sistem yang baik untuk
mendapat jawaban dari pertanyaan mengenai What (apa), How (bagaimana) dan Why
(mengapa) dari Rule Base (RB) selama proses inferensia. Jawaban dan
penjelasannya dapat disediakan dengan baik. Masalah yang ada dengan SBP adalah
ia tak dapat secara mudah menjalankan proses akuisisi knowledge (pengetahuan)
dan ia tak dapat mengupdate rule (aturan) secara otomatis. Hanya pakar yang
dapat mengupdate Knowledge Base (KB) secara manual dengan dukungan dari
knowledge engineer (insinyur pengetahuan). Lebih jauh kebanyakan peneliti dalam
SBA lebih memperhatikan masalah optimasi pada rule yang sudah ada daripada
pembangkitan rule baru dari rule yang sudah ada. Namun demikian, optimasi rule
tak dapat mengubah hasil dari inferensia secara signifikan, yaitu dalam hal
cakupan pengetahuan.
Ripple Down Rule (RDR) datang untuk mengatasi
permasalahan utama dari sistem pakar: pakar tak perlu lagi selalu mengkomunikasikan
pengetahuan dalam konteks yang spesifik. RDR membolehkan akuisisi yang cepat
dan sederhana secara ekstrim tanpa bantuan dari knowledge engineer. Pengguna
tak perlu menguji RB dalam rangka mendefinisikan rule baru: pengguna hanya
perlu untuk mampu mendefinisikan rule baru yang secara benar mengklasifikasikan
contoh yang diberikan, dan sistem dapat menentukan dimana suatu rule harus
ditempatkan dalam hirarki rulenya. Keterbatasan dari RDR adalah kekurangan
dalam hal inferensia yang berdayaguna. Tak seperti SBA yang dilengkapi dengan
inferensia melalui forward dan backward chaining, RDR kelihatannya menggunakan
Depth First Search (DFS) yang memiliki kekurangan dalam hal fleksibelitas dalam
hal penjawaban pertanyaan dan penjelasan yang tumbuh dari inferensia yang
berdayaguna.
Variable-Centered Intelligent Rule System (VCIRS)
merupakan perkawinan dari SBA dan RDR. Arsitektur sistem diadaptasi dari SBA
dan ia mengambil keuntungan-keuntungan yang ada dari RDR. Sistem ini
mengorganisasi RB dalam struktur spesial sehingga pembangunan pengetahuan,
inferensia pengetahuan yang berdayaguna dan peningkatan evolusional dari
kinerja sistem dapat didapatkan pada waktu yang sama. Istilah “Intelligent”
dalam VCIRS menekankan pada keadaan sistem ini yang dapat “belajar” untuk
meningkatkan kinerja sistem dari pengguna sistem selama pembangunan pengetahuan
(melalui analisis nilai) dan penghalusan pengetahuan (dengan pembangkitan
rule).
Pathfinding adalah proses pencarian path tercepat
dari titik asal ke titik tujuan dengan menghindari berbagai halangan sepanjang
path yang ditempuh. Secara umum pathfinding dapat dibedakan menjadi pathfinding
statik dan dinamik.
Tactical Pathfinding
Pencarian jalur merupakan proses penentuan sebuah
set pergerakan suatu objek dari satu posisi ke posisi yang lain, tanpa
bertabrakan dengan hambatan dalam jalurnya. Pencarian jalur dibagi menjadi dua,
statis atau dinamis, yaitu global path searching yang mengacu pada pencarian di
dunia statis, dan local path searching pada lingkungan dinamis. Pengerjaan
praktek level designer pada game 3D pada awalnya menggunakan waypoint bagi
karakter non-kendali untuk menjelajah lingkungan, dimana memakan waktu dan
sering tidak akurat di beberapa kasus. A* (A-star) kemudian muncul dan menjadi
algoritma pencarian jalur terpendek yang paling banyak digunakan dengan metode
heuristic-nya Halangan pada permainan 3D, tidak ditemui di peta berbasis 2D.
Situasi ini tampaknya tidak memungkinkan jika menggunakan solusi algoritma A*
tradisional. Solusi dari permasalahan tersebut adalah tactical pathfinding.
Tactical pathfinding tidak hanya menambahkan
sentuhan realistis pada pergerakan kecerdasan buatan, tapi juga memastikan
pemain yang berpengalaman tidak dapat memprediksi keputusan yang diambil oleh
lawan.
POKOK
BAHASAN 4 :
Arsitektur Game Engine
Pengertian 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. 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. Pada C++,
entry point-nya adalah fungsi ‘main().’ Biasanya program utama ini relatif
pendek. Game engine adalah program yang ‘memotori’ jalannya suatu program game.
Setelah engine diselesaikan, programmer hanya perlu
menambahkan program utama, memakai resources (objek 3D, musik, efek suara) yang
baru, dan, jika benar-benar dibutuhkan, sedikit memodifikasi engine sesuai
kebutuhan spesifk dari game yang bersangkutan. Program game engine seluruhnya berorientasi objek.
Dia lebih bersifat reaktif daripada prosedural. Sulit untuk menggambarkan
engine secara keseluruhan dalam flow-chart, karena alur program bisa diatur
sesuai dengan keinginan pemakai engine, yaitu game programmer.
Konsep Game Engine
Konsep dari game engine sebenernya cukup gampang,
yaitu bahan dasar yang diperlukan sebuah game untuk menjalankan tugasnya,
merender pixel demi pixel, menghitung physiscs, memperkirakan input tombol, dan
lain hal, yang memungkinkan developer kreatif dapat membuat sebuah game dengan
engine yang sama menjadi unik satu sama lain. Di analogikan sebagai sebuah
mobil, game engine sudah merupakan bagian mobil, sekitar 50% jadi. Mesin dan
rangkaian sistem pengapian, sampai pembuangan. Kurang body dan aksesoris.
Sebuah game engine memungkinkan penggunaan kembali komponen komponen yang dapat
mempercepat hadirnya game menjadi nyata di layar monitor mu.
Sejarah dari Game Engine
Istilah “Game Engine” muncul pada pertengahan
1990-an, terutama saat boomingnya game 3D FPS. Sekarang hampir semua perusahaan
game memiliki game engine mereka sendiri, menggunakannya untuk membuat game
mereka, dan menyimpannya untuk diri sendiri.
Semakin lama kebutuhan untuk game engine yang makin
modern semakin bertambah. Waktu demi waktu, game engine yang mereka kembangkan
sendiri mulai dirasa terlalu mahal untuk dikembangkan lebih lanjut. Hal ini
memicu beberapa developer untuk menciptakan game engine yang terbuka untuk di
franchise-kan.
Tipe Tipe 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 :
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.
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
POKOK BAHASAN 5 :
Interaksi Fisik dalam teknologi Game
Efek Fisik dalam Game
Game konsol modern saat ini sudah dilengkapi dengan
perangkat gerak yang melibatkan aktivitas fisik sehingga permainan video game
dapat sekaligus melatih otot dan gerak selayaknya berolahraga, seperti halnya
yang disediakan oleh konsol Nintendi Wii, PS3 Move, atau yang lebih canggih
lagi, Xbox Kinect.
Game-game yang melibatkan aktivitas fisik seperti
game tinju, tennid, sepak bola, dan sebagainya yang mengharuskan anda untuk
menggerakkan tangan dan anggota tubuh anda sesuai tema video game yang
dimainkan. Untuk mendapatkan seperangkat konsol tersebut tidaklah perlu
mengeluarkan kocek yang dalam.
Berikut ini merupakan efek fisik positif pada game:
1. Mendorong pola hidup sehat
Bermacam video game menyatukan unsur bugar, nutrisi
dan hidup sehat yang menjadi 'goal' dalam tema video game tersebut. Bahkan
banyak video game modern saat ini sudah melibatkan simulasi olahraga selayaknya
olahraga outdoor. Dengan memainkan game tersebut akan membuat orang menjadi
berkeringat yang tentunya akan menyehatkan.
Melatih ketangkasan
Banyak video game yang dibuat untuk melatih
ketangkasan, konsentrasi, dan kejelian. Dengan gabungan unsur tersebut akan
membantu anak dan orang dewasa berpikir. Dengan begitu, kepikunan dini pada
otak dapat dicegah.
2. Membina hubungan sosial & interaksi
Video game saat ini sudah sangat berbeda dengan
video game terdahulu, kala kita hanya bisa terdiam di dalam kamar dan memainkan
video game sepanjang hari tanpa interaksi apapun. Sejalan dengan perkembangan
teknologi saat ini, memungkinkan pemain game dapat melakukan interaksi jarak
jauh kepada njorang lain di seluruh dunia melalui media online atau internet
yang sudah tersedia secara built-in pada kebanyakan judul game saat ini.
3. Meningkatkan kemampuan belajar
Video game saat ini jauh lebih konteks dibandingkan
dengan judul-judul game 20 tahun lalu, yang mana mengharuskan kita untuk
mengasah logika, strategi, teka teki hingga emosi untuk menyelesaikannya. Para
gamer umumnya dituntut untuk dapat mengambil keputusan dan kendali untuk
dirinya sendiri. Pemain juga harus memasukkan perintah, kombinasi, kesabaran
serta keputusan yang cepat untuk menghadapi situasi yang disediakan pada
level-level game yang kian beragam. Dalam hal ini, akan membantu banyak aspek
dalam kemampuan berpikir dan membuat keputusan dalam kehidupan nyata.
4. Mengajarkan sportivitas dan kerjasama
Peraturan dan ketentuan yang ditetapkan dalam
game-game online saat ini dituntut serta mengajarkan hal tentang kerjasama
antar kelompok. Kekompakkan serta nilai-nilai keteraturan. Dalam hal ini tentu memiliki
dampak positif tentang bagaimana kita harus bekerja sama, menghargai nilai
komunikasi, saling menguntungkan, bahu membahu, dan lain lain untuk mencapai
tujuan kita.
5. Mengalihkan rasa sakit fisik dan mental
Bermain game dapat mengalihkan perhatian dari
kondisi fisik yang diderita saat itu. Bahkan tidak sedikit yang melampiaskan
kesedihan dan sakit hati yang mereka rasakan dengan bermain game sepuasnya.
Collusion
Algoritma untuk mendeteksi collision (tabrakan)
sangat dibutuhkan untuk program game. Flash mulai versi 5 ke atas menyediakan
method yang bernama hiTest untuk memeriksa apakah sebuah movie clip bertabrakan
dengan movie yang lain. Sebelum method hiTest ini tersedia, Flash harus
mendeteksi secara manual koordinat sebuah movie clip lain.
POKOK BAHASAN 6 :
User Interface Untuk Video Game
UI
jika diartikan dalam bahasa Inggris adalah tampilan antar muka pengguna. Fungsi dari UI sendiri sebagai mediator
antara user dengan komputer. UI sangat
berperan penting dalam dunia komputer, karena dengan adanya UI maka
user/pengguna menjadi lebih mudah mengoperasikan suatu perangkat komputer. User
interface sendiri dibagi menjadi dua, yaitu Text Interface dan Graphic User
Interface (GUI). Dalam perkembangannnya
UI berbasis GUI lebih banyak dipergunakan dibanding yang berbasis teks. Hal ini dikarenakan GUI lebih menarik dan
komunikatif dibandingkan basis teks.
Desain
user interface dalam game berbeda dari desain UI lainnya karena melibatkan
unsur tambahan fiksi. Fiksi melibatkan avatar dari pengguna yang sebenarnya,
atau player. Pemain menjadi elemen tak terlihat, tapi kunci untuk cerita,
seperti halnya narator dalam novel atau film. Fiksi ini dapat langsung
dihubungkan ke UI, sebagian terkait, atau tidak sama sekali. Game historis
tidak memiliki hubungan nyata untuk narasi game, kemungkinan besar karena game
semasa dulu jarang memiliki unsurUI jika diartikan dalam bahasa Inggris adalah
tampilan antar muka pengguna. Fungsi
dari UI sendiri sebagai mediator antara user dengan komputer. UI sangat berperan penting dalam dunia
komputer, karena dengan adanya UI maka user/pengguna menjadi lebih mudah
mengoperasikan suatu perangkat komputer.
Terdapat
sebuah teori mengenai desain user interface game oleh Erik Fagerholt dan Magnus
Lorentzon dari Chalmers University of Technology berjudul: Beyond the HUD -
User Interfaces for Increased Player Immersion in FPS Games. Mereka
memperkenalkan istilah untuk berbagai jenis interface tergantung pada bagaimana
terkait dengan narasi dan geometri permainan mereka, antara lain :
1. Diegetic
Elemen
user interface yang diegetik ada dalam dunia permainan (fiksi dan geometris)
sehingga pemain dan avatar dapat berinteraksi dengan mereka melalui visual,
audible atau haptic. Elemen UI diegetik yang dieksekusi dengan baik dapat
meningkatkan pengalaman narasi untuk pemain, memberikan pengalaman yang lebih
mendalam dan terintegrasi. Salah satu game yang mengimplementasikan elemen
diegetic adalah Assassin’s Creed.
Assassin’s
Creed berhasil menggunakan banyak pola diegetic meskipun itu diatur dalam dunia
sejarah karena pemain pemain menggunakan sistem virtual reality di masa depan.
Jadi cerita sebenarnya futuristik daripada sejarah.
Assassin’s
Creed itu menggunakan eagle vision untuk menyorot musuh dan jalur patroli
mereka. Pemain dan karakter melihat hal yang sama.
Ada
kalanya ketika elemen UI diegetic kurang tepat digunakan, baik karena mereka
tidak dapat pantas dalam geometri dunia permainan, atau ada kebutuhan untuk
memecahkan fiksi untuk memberikan pemain lebih banyak informasi daripada yang
seharusnya diketahui atau tidak oleh seorang karakter.
2. Meta
Kadang-kadang
elemen UI tidak sesuai dalam geometri dari dunia permainan. Mereka masih dapat
mempertahankan narasi permainan tapi duduk di hub plane 2D - ini disebut elemen
Meta.
Elemen
meta UI bisa sulit untuk dipakai dalam permainan tanpa unsur narasi yang kuat,
seperti olahraga atau permainan balap. Dalam Need for Speed: Hot Pursuit
masih dapat terasa bahwa speedometer di HUD 2D adalah meta karena karakter
pemain - sopir, akan tahu berapa kecepatan mobil melaju dan untuk itu membentuk
bagian dari narasi tersebut. Elemen HUD lainnya seperti posisi track dapat
lebih sulit untuk dipakai.
Need
for Speed: Hot Pursuit menggunakan elemen HUD seperti speedometer untuk
menyampaikan informasi tentang mobil kepada pemain.
3. Spatial
Elemen
Spasial UI digunakan ketika ada kebutuhan untuk memecahkan narasi dalam rangka
untuk memberikan informasi lebih kepada pemain melebihi yang disadari karakter.
Mereka masih duduk dalam geometri lingkungan permainan untuk membantu memuaskan
pemain dan mencegah mereka dari keharusan untuk merusak pengalaman dengan
melompat ke layar menu. Semakin dekat ini mengikuti aturan fiksi permainan
semakin mereka dapat membantu memuaskan pemain.
Splinter
Conviction juga mengadopsi unsur-unsur spasial dalam bentuk proyeksi yang
menggambarkan tujuan dalam dunia permainan. Skala mereka tampaknya menantang
fiksi sedikit lebih dari contoh-contoh lainnya.
Tipe
ditampilkan di dalam lingkungan untuk mengkomunikasikan pesan ke pemain daripada
ke karakter.
4. Non-Diegetic
Lalu
ada elemen diegetic non-tradisional, elemen-elemen ini memiliki kebebasan untuk
benar-benar dihapus dari fiksi permainan dan geometri dan dapat mengadopsi
pemakaian visual mereka sendiri, meskipun sering dipengaruhi oleh arah seni
permainan. Saya pikir ini unsur paling baik digunakan ketika bentuk diegetik,
meta dan spasial memberikan batasan yang melanggar seamlessness atau
konsistensi dari elemen UI.
World
of Warcraft sebagian besar menggunakan non-diegetic UI, satu pengecualian
adalah nama pemain yang spatial. Hal ini memungkinkan pengguna untuk sepenuhnya
menyesuaikan, mudah-mudahan memastikan pengalaman yang familiar.
POKOK BAHASAN 7 :
Penampilan Grafik Scene Game Komputer
Visibility
Visibility
merupakan tampilan grafik scene game
pada komputer. Bagaimana sebuah game terlihat oleh user agar menarik dan
berkualitas sehingga user menikmati game tersebut. Biasanya pada video game
terdapat istilah scene 2.5D. Sebenarnya istilah tersebut tidak berbeda jauh
dari scene 2D (dua dimensi). Hanya saja 2.5D memiliki beberapa fitur tambahan
berupa efek cahaya, bayangan dan sebagainya
yang dibuat agar seakan-akan menyerupai scene 3D.
Biasanya
gameplaynya memang mirip game 2D dimana kita hanya bisa bergerak secara
horizontal dan vertical namun beberapa gambarnya di render secara 3D. Teori
grafik 2.5D ini biasa juga disebut dengan pseudo-3D sedangkan pada istilah game
lebih dikenal dengan isometric/diametric/trimetric projection.
Game
bertipe ini menggunakan 2 macam tipe pemodelan:
3 Dimensi object/model
ini
merupakan model/object 3D yang nantinya akan dijadikan sebagai karakter utama,
bangunan, object-object seperti senjata, musuh, permukaan tanah, pohon, dan
bukit. Object 3D seperti ini bisa dibuat dengan menggunakan program seperti 3DS
Max, Maya, Hash, dan Blender.
2 Dimensi graphic
Gambar
2D juga berperan dalam membuat game ini yaitu sebagai texture untuk object,
sebagai latar belakang seperti langit
dan pemandangan, sebagai meteran untuk nyawa dan gambar untuk speedometer pada
game racing.
Kegunaan
2.5D dalam game adalah sebagai pengaturan gerakan seperti golden axe, double
dragon, path finding yang biasanya cukup sederhana. Hal ini berguna untuk
mengikuti posisi pemain dan agar game lebih 'hidup'. Pada video game, biasanya
scene 2.5D ini lebih digunakan dalam visualisasi geografis (GVIS) untuk
membantu memahami representasi visual spasial-kognitif atau visualisasi 3D.
Level of Detail
Dalam
komputer grafis, untuk tingkat detail melibatkan menurunkan kompleksitas
representasi objek 3D seperti bergerak menjauh sesuai metriksnya, kecepatan
sudut pandang-relatif atau posisi. Tingkat teknik detil meningkatkan efisiensi
render dengan mengurangi beban kerja pada tahap pipa grafis, transformasi
biasanya simpul. Kualitas visual berkurang dari model sering diperhatikan
karena efek kecil pada objek muncul ketika jauh atau bergerak cepat. Untuk
konsep menggambar LOD sebagian besar waktu LOD diterapkan untuk geometri rinci
saja, konsep dasar bisa disamaratakan. Baru-baru ini, teknik LOD termasuk
manajemen juga shader untuk tetap mengontrol kompleksitas pixel. Suatu bentuk
tingkat manajemen detail telah diterapkan untuk tekstur selama bertahun-tahun,
di bawah nama mipmapping, juga memberikan kualitas rendering yang lebih tinggi.
Ini adalah hal yang lumrah untuk mengatakan bahwa "sebuah objek telah
LOD'd" ketika objek disederhanakan oleh mendasari algoritma LOD-ing.
POKOK BAHASAN 8 :
Game Berjaringan
Game
Berbasis Jaringan merupakan suatu permainan game komputer yang dimainkan dengan
bantuan internet atau biasa disebut game online. Jadi apabila kita temukan ada
sebuah game yang berbasiskan jaringan, maka untuk memainkan game tersebut harus
mengaktifkan internet terlebih dahulu. Memang ada sedikit perbedaan antara game
PC biasa, yang biasanya diinstall di komputer melalui kaset atau download dari
internet, dibandingkan dengan game berbasiskan jaringan seperti ini karena membutuhkan
persyaratan lebih.
Dengan
bermain game dengan terhubung secara online maka tentunya ini merupakan sebuah
kelebihan dari game yang berbasiskan jaringan. Karena dengan bemain game yang
berhubung secara online suasana bermain game menjadi lebih seru dan
menyenangkan, selain itu kita juga dapat bermain bersama teman secara bersamaan
(realtime) walaupun bebeda lokasi. Ada juga beberapa game online yang
memberikan fitur untuk melakukan chat (obrolan) untuk para pemain game
berbasiskan jaringan ini.
POKOK BAHASAN 9 :
Pembuatan Game Komputer Dengan Menerapkan Konsep Artificial Intelligent Pada Sebuah Game Engine
Kecerdasan
Buatan atau kecerdasan yang ditambahkan kepada suatu sistem yang bisa diatur
dalam konteks ilmiah atauIntelegensi Artifisial (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. Banyak hal yang kelihatannya sulit untuk kecerdasan
manusia, tetapi untuk Informatika relatif tidak bermasalah. Seperti contoh:
mentransformasikan persamaan, menyelesaikan persamaan integral, membuat
permainan catur atau Backgammon. Di sisi lain, hal yang bagi manusia
kelihatannya menuntut sedikit kecerdasan, sampai sekarang masih sulit untuk
direalisasikan dalam Informatika. Contoh media interaksi ialah:
- Penglihatan (vision)·
- Suara (voice).
- ucapan (speech)·
- Gerakan anggota badan ( gesture)
Contoh Game Engine :
1. RAGE
Merupakan
kependekan dari Rockstar Advanced Game Engine. RAGE telah dipakai oleh Rockstar
untuk membuat game-game besar seperti GTAV. Bersifat proprietary.
2. Unreal Engine
Pilihan
bagi para indie developer karena sifatnya yang bersifat freeware dan menjadi
propietary jika ingin mendapatkan fitur tambahan (pro). Game yang telah dirilis
menggunakan engine ini antara lain : Unreal Tournament, seri Gears of War, seri
Mass of Effects, Medal of Honor : Airborne, dan Outlast.
3. CryEngine
Merupakan
game engine yang dikembangkan oleh Crytek. Telah merilis berbagai game seperti
seri Crysis dan Far Cry. Tetapi game engine ini sangat berat untuk kelas pc
yang mempunyai spek rendah sehingga sering dijuluki “Cry engine make me cry”.
4. Anvil, Distrupt, Dunia, Jade, dan LyN
Merupakan
game engine yang dikembangkan oleh Ubisoft, tentunya game-game keluarannya
merupakan seri Prince of Persia, Tom Clancy, Assassin’s Creed, dll.
5. Frostbite
Terkenal
setelah seri Battlefield menjadi game yang katanya game first-person shooter terbaik,
menurut sebagian orang.
6. HPL Engine
Game
engine ini terkenal dari seri game horor keluarannya, seperti Penumbra
(Overture, Black Plague, Requiem) dan Amnesia (The Dark Descent, A Machine For
Pigs)
7. Unity
Game-game
keluarannya lebih sering menuju ke aplikasi dan game-game kecil. Tapi
keunggulan tersendirinya adalah fleksibilitas dan bahasa yang digunakan lumayan
mudah (C# dan JavaScript). Game horor keluaran Digital Happiness yaitu DreadOut
yang notabene dibuat oleh anak bangsa dikembangkan oleh Unity. Angkot The Game
mungkin juga dikembangkan oleh Unity. Game-game lainnya adalah Slender, Temple
Run, Bad Piggies, dsb.
8. SAGE, W3D
Jika
anda pernah memainkan game-game seri Command & Conquer maka game itu di
buat menggunakan game engine SAGE. Versi awal dari SAGE adalah W3D yang
dikembangkan oleh Westwood Studios. Sekarang, versi terbaru dari engine ini
adalah SAGE 2.0 yang dikembangkan oleh Westwood Studios dan Electronic Arts Los
Angeles.
9. Source Engine
Game
engine ini lebih banyak digunakan dalam game genre fps. Dengan ini maka
game-game yang dikeluarkannya adalah seri Counter Strike, Half Life, Portal,
Left 4 Dead, dan The Stanley Parable.
REFERENSI :
Langganan:
Posting Komentar
(
Atom
)
Diberdayakan oleh Blogger.
Arsip
Daftar Blog Saya
About Me
- Unknown
Popular Posts
-
Pengertian Stratifikasi sosial berasal dari bahasa Latin 'stratum' yang berarti tingkatan dan 'socius' yang berarti t...
-
Salah satu teknik melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer independen secara bersamaan. Ini umumnya d...
-
POKOK BAHASAN 1 : Teknologi Game, Bisnis dalam Game Komputer, 3D Engine dan Scene Graph Teknologi Game Siapa yang tidak kena...
-
Dynamic Host Configuration Protocol (DHCP) server adalah server yang memiliki layanan untuk memberikan IP secara dinamis atau otomatis kepa...
-
Call of Duty (pertama dirilis pada tanggal 29 Oktober 2003) adalah permainan tembak-menembak orang-pertama dengan engine berdasarkan permai...
-
Mobile computing atau komputasi bergerak memiliki beberapa penjelasan, salah satunya komputasi bergerak merupakan kemajuan teknologi ko...
-
Pertukaran Data Elektronik (Electronic Data Interchange / EDI) adalah transmisi data terstruktur antar organisasi secara elektronis...
-
Cloud Computing atau komputasi awan adalah komputasi berbasis internet, dimana server yang dibagi bersama menyediakan sumber daya, p...
-
1. Pengertian Konflik adalah percekcokan, perselisihan atau pertentangan. Dalam sastra diartikan bahwa konflik merupakan ketegangan atau...
-
Pertama tama salam kenal agan2 pecinta game.. Disini ane selaku newbie di dunia blog ingin ngeshare tentang game2 yang sedang populer saat i...
0 komentar :
Posting Komentar