Pages

Jumat, 17 Maret 2017

PENGENALAN TEKNOLOGI GAME


   
A. Teknologi Game
 
Teknologi itu memiliki lebih dari satu definisi. Salah satunya adalah pengembangan dan aplikasi dari alat, mesin, material dan proses yang menolong manusia menyelesaikan masalahnya. Sebagai aktivitas manusia, teknologi mulai dikenal sebelum sains dan teknik. Teknologi dibuat atas dasar ilmu pengetahuan dengan tujuan untuk mempermudah pekerjaan manusia. Kata teknologi sering menggambarkan penemuan dan alat yang menggunakan prinsip dan proses penemuan saintifik yang baru ditemukan. Meskipun demikian penemuan yang sangat lama seperti roda juga disebut sebuah teknologi.

Definisi lainnya (digunakan dalam ekonomi) adalah teknologi dilihat dari status pengetahuan kita yang sekarang dalam bagaimana menggabungkan sumber daya untuk memproduksi produk yang diinginkan( dan pengetahuan kita tentang apa yang bisa diproduksi). Oleh karena itu, kita dapat melihat perubahan teknologi pada saat pengetahuan teknik kita meningkat.

Dalam bahasa Indonesia game berarti permainan. Permainan yang dimaksud dalam game juga merujuk pada pengertian sebagai kelincahan intelektual (intellectual playability). Sementara kata game bisa diartikan sebagai arena keputusan dan aksi pemainnya. Ada target-target yang ingin dicapai pemainnya. Kelincahan intelektual, pada tingkat tertentu, merupakan ukuran sejauh mana game itu menarik untuk dimainkan secara maksimal.

Maka bermain game merupakan suatu proses fine tuning (atau penyamaan frekuensi) dari logika berpikir anak-anak kita dengan logika berpikir aplikasi komputer yang canggihtadi. Pada saat bersamaan, game juga secara nyata mempertajam daya analisis para penggunanya untuk mengolah informasi dan mengambil keputusan cepat yang jitu. Namun, tentu saja kenyataan juga harus kita masukkan kedalam perhitungan. Kenyataan itu diantaranya adalah kecanduan para pemain / penggunanya yang akut terhadap permainan komputer semacam ini. Mereka bisa lupa segala-galanya akan tugas mereka yang lain termasuk tugas menuntut ilmu.

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.

B. Bisnis dalam Game Komputer
Bisnis dalam game komputer berkembang pesat seiring dengan berkembangnya teknologi canggih saat ini. Dahulu kita hanya dapat menikmati game yang tersedia di dalam komputer itu sendiri, seperti pinball dan solitaire. Namun sekarang sudah tersedia game online, dan juga games yang dapat didownload baik free maupun berbayar. Games berbayar juga merupakan bisnis karena sama saja dengan kita mengeluarkan uang untuk membeli sebuah barang.











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.













  



Industri game memang masih terbilang baru di Indonesia. Kendati begitu, perkembangannya sudah sangat pesat dan menjadi bisnis yang sangat menggiurkan. Penyebab utamanya adalah berkembangnya era teknologi dan komunikasi. Perkembangan ini terlihat dari banyaknya game center yang terus bermunculan, terutama yang menyediakan jasa gameonline. Bukan tanpa alasan game online menjadi semakin marak dan digandrungi, karena fasilitas online memungkinkan sebuah game dapat dimainkan oleh 100 orang lebih secara bersama-sama dalam satu waktu.
Contoh untuk bisnis dalam game komputer itu beragam. Seperti kita dituntut melakukan pembayaran untuk game tersebut. Maksud dari pembayaran ini adalah bagaimana perusahaan game online mendapatkan uang dari gamesnya. Bedasarkan kategori ini games online dapat dibedakan menjadi 2 yaitu:

- Pay Per Item, game yang berada pada category ini merupakan game yang bisa diinstall atau dimainkan secara gratis, dan game ini biasanya mengenakan biaya pada pemainnya apabila pemainnya ingin cepat menaikkan level atau membeli barang (item) langka yang tidak pernah dijumpai pada permainan. Jenis game seperti ini yang paling dijumpai di Indonesia. Contoh: Gunbound, Ragnarok, Ghost Online, dan lain sebagainya.

- Pay per Play, game ini harus dibeli dan diinstal secara legal karena pada saat diinstal game terebut akan mendaftarkan pemain ke internet langsung dan apabila yang diinstal adalah program bajakan maka secara otomatis system akan memblokirnya. Contoh: The Division, Fifa, dan lain sebagainya.

C. 3D Engine & 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.

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:
  1. Menciptakan objek Canvas3D
  2. Menciptakan sebuah scene graph
  3. 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.

Fitur-fitur pada OGRE:
  1. Desain yang object-oriented dengan menggunakan plugin untuk mempermudah memasukkan fitur lainnya
  2. Engine berbasis scane graph dengan bantuan untuk sebuah varietas yang luas, octree, BSP, & paging landscape scene manager
  3. Multi-platform dengan dukungan OpenGL & Direct 3D. Bisa me-render konten yang sama di beda platform tanpa harus mempunyai content creator. dapat diakses pada platform Linux, Mac OS, dan semua versi Windows
  4. OGRE mendukung program vertex dan fragment selama ditulis dengan GLSH, HLSL, Cg, dan assembler 
  5. The landscape scene manager untuk progressive LOD, yang mana bisa dibuat secara otomatis dan manual
  6. Engine annimasi yang men-support penuh untuk multiple hardware
  • 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.

D. Desain Skenario, Script, dan Storyboard Game Komputer Game

Design Concept/Skenario merupakan bahasa terjemahan dari Konsep desain permainan, atau biasa disebut juga Perancangan konsep permainan. Perancangan konsep permainan adalah suatu proses pengembangan atau perancangan dalam membangun sebuah skenario seperti desain gameplay, karakter atau tokoh, lingkungan selama tahap produksi game tersebut. Perancang game biasa disebut juga sebagai sutradara pada sebuah film, karena membutuhkan skenario dan adegan yang dibintangi oleh masing-masing karakter pada game tersebut.

Game script sendiri berfungsi untuk mendokumentasikan rules dan core-mechanics pada sebuah game. Fungsinya adalah untuk membuat suatu aturan yang mendetail pada sebuah game dan agar kita bisa mengetahui cara memainkan game tersebut.
Pada saat pemilihan bahasa pemrograman yang digunakan untuk membuat suatu game perlu diperhatikan beberapa syarat berikut ini:
1. Speed : Bahasa script untuk sebuah game harus memiliki kemampuan berjalan secepat mungkin.
2. Kompilasi dan Interpretasi
Bahasa script jika ditinjau secara luas diinterpretasikan melalui susunan suatu rangakaian byte. Interpreter akan melihat script setiap baris, serta penyusunan sesuai maksud dari script itu sendiri dan melakukan tindakan yang spesifik.  Suatu byte akan terkompilasi, dan akan dikonversi atau diubah dari teks menjadi suatu byte code. Byte code biasanya lebih padat jika dibandingkan dengan format teks, mengapa disebut lebih padat? Jawabannya adalah karena kode byte dalam suatu format akan lebih optimal ketika dieksekusi, sehingga dapat berjalan lebih cepat.
3. Ekstensibilitas dan Integrasi
Bahasa script sangat dianjurkan mempunyai akses ke fungsi yang signifikan ke dalam sebuah game. Sebuah script untuk mengendalikan sebuah karakter misalnya, harus dapat memiliki kemampuan untuk menanyai game untuk mencari tahu apa y ang bisa dilihat dan selanjutnya membiarkan game mengerti apa yang harus dilakukan untuk melakukan aksinya.
4. Re-Entrancy : Fungsi ini sering berguna untuk memanggil script secara ulang sehingga bisa digunakan kembali.

Storyboard adalah sketsa gambar yang disusun berurutan sesuai dengan naskah. Melalui storyboard kita dapat menyampaikan ide cerita maupun alur game kita kepada orang lain dengan lebih mudah.

E. Artificial Intelligence 














Kecerdasan Buatan (Artificial Intelligence) adalah kecerdasan yang diciptakan dan dijalankan ke dalam suatu mesin (komputer) agar dapat melakukan pekerjaan seperti yang dilakukan manusia, bahkan bisa lebih baik lagi dari yang telah dilakukan manusia. Beberapa macam bidang yang menggunakan kecerdasan buatan antara lain sistem pakar, permainan komputer (games), logika fuzzy, jaringan syaraf tiruan dan robotika.

AI dari Berbagai Sudut Pandang
AI dapat dilihat dari berbagai sudut pandang, antara lain :
Sudut Pandang Kecerdasan : AI akan membuat mesin menjadi “cerdas” (mampu berbuat seperti apa  yang dilakukan manusia).
Sudut Pandang Penelitian : AI membuat komputer dapat melakukan sesuatu sebaik yang dikerjakan manusia atau bahkan lebih baik dari yang sudah dikerjakan manusia.
Sudut Pandang Bisnis : AI merupakan kumpulan peralatan yang sangat powerful dan metodologis dalam menyelesaikan masalah-masalah bisnis.
Sudut Pandang Pemrograman : AI meliputi studi tentang pemrograman simbolik, penyelesaian masalah (problem solving) dan pencarian (searching).

Artificial Intelligence dalam Game
Game AI adalah aplikasi untuk memodelkan karakter yang terlibat dalam permainan baik sebagai lawan, ataupun karakter pendukung yang merupakan bagian dari permainan tetapi tidak ikut bermain (NPC = Non Playable Character). Peranan kecerdasan buatan dalam hal interaksi pemain dengan permainan adalah pada penggunaan interaksi yang bersifat alami yaitu yang biasa digunakan menusia untuk berinteraksi dengan sesama manusia. Contoh media interaksi ialah:
  • Penglihatan (vision)
  • Suara (voice), ucapan (speech)
  • Gerakan anggota badan ( gesture)
Untuk pembentukan Artificial Intelligence pada game ternyata digunakan pula algoritma, yaitu jenis pohon n-ary untuk suatu struktur. Implementasi pohon (tree) ini biasa disebut game tree. Berdasarkan game tree inilah sebuah game disusun algoritma kecerdasan buatannya.

F. Arsitekur Game Engine

Game engine merupakan sistem yang dibuat dan dirancang untuk menciptakan dan mengembangkan video game. Tipe-tipe game engine:
1) Roll Your Own Game Engine
Tipe game engine ini banyak disukai karena gratis, dan juga mengizinkan pada developer untuk mengintegrasikan komponen yang dinginkan untuk dibuat menjadi game engine mereka sendiri.
2) Mostly Ready Game Engine
Pada game engine ini sudah menyediakan semuanya begitu diberikan kepada developer/programmer.
3) Point and Click Engine
Engine ini merupakan engine yang sangat dibatasi tetapi dibuat secara user friendly. Bahkan anda dapat membuat game sendiri dengan menggunakan engine seperti GameMaker, Torque Game Builder, dan Unity3D.

Referensi :
 

0 komentar:

Posting Komentar