WELCOME TO MY BLOG, PLEASE COMMENT AND ENJOY

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:

  1. Penglihatan (vision)·
  2. Suara (voice).
  3. ucapan (speech)·
  4. 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 :




















0 komentar :

Posting Komentar

Diberdayakan oleh Blogger.

Daftar Blog Saya



GUNADARMA UNIVERSITY















About Me

Popular Posts