Rangkuman Materi Pengantar Teknologi Game

Kamis, 05 Juli 2012

Rangkuman Pengantar Teknologi Game

>> Pada Postingan bulan pertama saya membahas tentang Game dan Sejarah Game.Menurut Agustinus Nilwan dalam bukunya “Pemrograman Animasi dan Game Profesional” terbitan Elex Media Komputindo, game di artikan sebagai suatu aktivitas tersetruktur atau juga digunakan sebagai alat pembelajaran.adapun sejarah game adalah

  • Tahun 1952, AS Douglas membuat game Tic tac toe yang ditampilkan dalam sebuah tabung vakum computer. Kemudian tahun 1958, Willy Higginbotham membuat game Tennis for Two yang berjalan di osiloskop yang terhubung ke analog Donner computer.
  • Tahun 1961 – 1962, game space war dikembangkan di MIT menggunakan grafik vector di PDP-1. Sega merilis periskop, terciptalah elektronik shooting game, game arcade yang pertama.

  • Tahun 1971-1974, Tahun kelahiran game komersil Tahun 1971, Nolan Bushnell mengembangkan computer space, arcade game komersil yang pertama. Berbasis pada spacewar. Menggunakan grafik vector, real time dan terlalu sophisticated untuk pasar. Dan gagal.
  • Tahun 1972, Bushnell memulai Atari. Odyssey oleh Magnavox membuat game hockey. Home TV game yang pertama, masih analog. Terjual 100.00 dengan harga jual $100/console.
  • Tahun 1973, Atari membuat Pong in Arcades.
  • Tahun 1974, Kee merilis Tank. Atari membuat game balap yang pertama
  • Tahun 1972-1976, William Crowther dan Don Woods membuat game adventure : The colossal cave. Game petualangan berbasis text yang pertama, berjalan di DEC mainframes (PDP - 10)
  • Dilewat dan akhirnya tahun 2004, The sims 2, halo 2, half life 2, doom. Game console, pertumbuhannya stabil, harga lebih murah. Nokia meluncurkan N-Gages, Nintendo meluncurkan DS, Sony meluncurkan PSP.

>> Postingan bulan kedua saya membahas tentang unsur-unsur game. Yaitu Storyline, Character, TypeWriter, Programmer dan Coordinator. Sebuah game yang bagus, sebuah game yang tidak akan membuat bosan gamer adalah game yang memiliki semua unsur-unsur tersebut.


>> Postingan bulan ketiga saya membahas tentang game engine. Game engine adalah sebuah sistem software yang dirancang untuk pembuatan dan pengembangan suatu video game. Game engine ini dirancang untuk bekerja pada beberapa konsol video game, dan sistem operasi desktop seperti Linux, Microsoft Windows, dan Mac OS. Fungsi utama yang disediakan oleh game engine ialah mesin render untuk grafik 2D dan 3D, audio, animasi, scripting, kecerdasan buatan, jaringan, dan masih banyak lagi.. Engine yang menyediakan fasilitas real time 3D rendering biasanya dinamakan engine 3D.


>> Postingan terakhir saya membahas tentang VR(Virtual Reality) dan AR(Augmented Reality). Virtual reality adalah teknologi yang digunakan oleh pengguna untuk berinteraksi dengan lingkungan simulasi komputer baik berdasarkan objek nyata maupun animasi.Lingkungan realitas maya terkini umumnya menyajikan pengalaman visual, yang ditampilkan pada sebuah layar komputer atau melalui sebuah penampil stereokopik, tapi beberapa simulasi mengikutsertakan tambahan informasi hasil penginderaan, seperti suara melalui speaker atau headphone. Virtual reality disingkat dengan VR yang dapat menciptakan sebuah simulasi dunia tiga dimensi. AR adalah teknologi yang menggabungkan benda maya dua dimensi dan ataupun tiga dimensi ke dalam sebuah lingkungan nyata tiga dimensi lalu memproyeksikan benda-benda maya tersebut dalam waktu nyata. Tidak seperti VR yang sepenuhnya menggantikan kenyataan, AR sekedar menambahkan atau melengkapi kenyataan.

Aughmented Reality


Realitas tertambah, atau kadang dikenal dengan singkatan bahasa Inggrisnya AR (augmented reality), adalah teknologi yang menggabungkan benda maya tiga dimensi ke dalam sebuah lingkungan nyata tiga dimensi dan menampilkannya dalam waktu nyata. Tidak seperti realitas maya yang sepenuhnya menggantikan kenyataan, realitas tertambah sekedar menambahkan atau melengkapi kenyataan.
Benda-benda maya menampilkan informasi yang tidak dapat diterima oleh pengguna dengan inderanya sendiri. Hal ini membuat realitas tertambah sesuai sebagai alat untuk membantu persepsi dan interaksi penggunanya dengan dunia nyata. Informasi yang ditampilkan oleh benda maya membantu pengguna melaksanakan kegiatan-kegiatan dalam dunia nyata.

Permainan "AR Tower Defense" dalam telepon genggam Nokia N95 merupakan aplikasi augmented reality
Realitas tertambah dapat diaplikasikan untuk semua indera, termasuk pendengaran, sentuhan, dan penciuman. Selain digunakan dalam bidang-bidang seperti kesehatan, militer, industri manufaktur, realitas tertambah juga telah diaplikasikan dalam perangkat-perangkat yang digunakan orang banyak, seperti pada telepon genggam.


Pengertian Augmented Reality


Ronald T. Azuma (1997) mendefinisikan augmented reality sebagai penggabungan benda-benda nyata dan maya di lingkungan nyata, berjalan secara interaktif dalam waktu nyata, dan terdapat integrasi antarbenda dalam tiga dimensi, yaitu benda maya terintegrasi dalam dunia nyata. Penggabungan benda nyata dan maya dimungkinkan dengan teknologi tampilan yang sesuai, interaktivitas dimungkinkan melalui perangkat-perangkat input tertentu, dan integrasi yang baik memerlukan penjejakan yang efektif.
Selain menambahkan benda maya dalam lingkungan nyata, realitas tertambah juga berpotensi menghilangkan benda-benda yang sudah ada. Menambah sebuah lapisan gambar maya dimungkinkan untuk menghilangkan atau menyembunyikan lingkungan nyata dari pandangan pengguna. Misalnya, untuk menyembunyikan sebuah meja dalam lingkungan nyata, perlu digambarkan lapisan representasi tembok dan lantai kosong yang diletakkan di atas gambar meja nyata, sehingga menutupi meja nyata dari pandangan pengguna.


Virtuality Continuum




Virtuality Continuum oleh Milgram dan Kishino (1994)


Milgram dan Kishino (1994) merumuskan kerangka kemungkinan penggabungan dan peleburan dunia nyata dan dunia maya ke dalam sebuah kontinuum virtualitas. Sisi yang paling kiri adalah lingkungan nyata yang hanya berisi benda nyata, dan sisi paling kanan adalah lingkungan maya yang berisi benda maya.
Dalam realitas tertambah, yang lebih dekat ke sisi kiri, lingkungan bersifat nyata dan benda bersifat maya, sementara dalam augmented virtuality atau virtualitas tertambah, yang lebih dekat ke sisi kanan, lingkungan bersifat maya dan benda bersifat nyata. Realitas tertambah dan virtualitas tertambah digabungkan menjadi mixed reality atau realitas campuran.


Perangkat


Head Mounted Display


Terdapat dua tipe utama perangkat Head-Mounted Display (HMD) yang digunakan dalam aplikasi realitas tertambah, yaitu opaque HMD dan see-through HMD. Keduanya digunakan untuk berbagai jenis pekerjaan dan memiliki keuntungan dan kerugian masing-masing.


Opaque Head-Mounted Display
Ketika digunakan di atas satu mata, pengguna harus mengintegrasikan padangan dunia nyata yang diamati melalui mata yang tidak tertutup dengan pencitraan grafis yang diproyeksikan kepada mata yang satunya. Namun, ketika digunakan menutupi kedua mata, pengguna mempersepsikan dunia nyata melalui rekaman yang ditangkap oleh kamera. Sebuah komputer kemudian menggabungkan rekaman atas dunia nyata tersebut dengan pencitraan grafis untuk menciptakan realitas tertambah yang didasarkan pada rekaman.
Ilustrasi penggunaan dua jenis perangkat HMD yang digunakan untuk menampilkan data dan informasi tambahan




See-Through Head-Mounted Display
Tidak seperti penggunaan opaque HMD, see-through HMD menyerap cahaya dari lingkungan luar, sehingga memungkinkan pengguna untuk secara langsung mengamati dunia nyata dengan mata. Selain itu, sebuah sistem cermin yang diletakaan di depan mana pengguna memantulkan cahaya dari pencitraan grafis yang dihasilkan komputer. Pencitraan yang dihasilkan merupakan gabungan optis dari pandangan atas dunia nyata dengan pencitraan grafis.
 


Virtual Retinal Display


Virtual retinal displays (VRD), atau disebut juga dengan retinal scanning display (RSD), memproyeksikan cahaya langsung kepada retina mata pengguna. Tergantung pada intensitas cahaya yang dikeluarkan, VRD dapat menampilkan proyeksi gambar yang penuh dan juga tembus pandang, sehingga pengguna dapat menggabungkan realitas nyata dengan gambar yang diproyeksikan melalui sistem penglihatannya. VRD dapat menampilkan jarak pandang yang lebih luas daripada HMD dengan gambar beresolusi tinggi. Keuntungan lain VRD adalah konstruksinya yang kecil dan ringan. Namun, VRD yang ada kini masih merupakan prototipe yang masih terdapat dalam tahap perkembangan, sehingga masih belum dapat menggantikan HMD yang masih dominan digunakan dalam bidang realitas tertambah.

Tampilan Berbasis Layar


Apabila gambar rekaman digunakan untuk menangkap keadaan dunia nyata, keadaan realitas tertambah dapat diamati menggunakan opaque HMD atau sistem berbasis layar. Sistem berbasis layar dapat memproyeksikan gambar kepada pengguna menggunakan tabung sinar katoda atau dengan layar proyeksi. Dengan keduanya, gambar stereoskopis dapat dihasilkan dengan mengamati pandangan mata kiri dan kanan secara bergiliran melalui sistem yang menutup pandang mata kiri selagi gambar mata kanan ditampilkan, dan sebaliknya.


Tampilan berbasis layar ini juga telah diaplikasikan kepada perangkat genggam. Pada perangkat-perangkat genggam ini terdapat tampilan layar LCD dan kamera. Perangkat genggam ini berfungsi seperti jendela atau kaca pembesar yang menambahkan benda-benda maya pada tampilan lingkungan nyata yang ditangkap kamera.
\


Referensi :
http://tiosijimbo.wordpress.com/2009/12/15/augmented-reality/

Virtual Reality


Virtual reality adalah teknologi yang digunakan oleh pengguna untuk berinteraksi dengan lingkungan simulasi komputer baik berdasarkan objek nyata maupun animasi.Lingkungan realitas maya terkini umumnya menyajikan pengalaman visual, yang ditampilkan pada sebuah layar komputer atau melalui sebuah penampil stereokopik, tapi beberapa simulasi mengikutsertakan tambahan informasi hasil penginderaan, seperti suara melalui speaker atau headphone. Virtual reality disingkat dengan VR yang dapat menciptakan sebuah simulasi dunia tiga dimensi.
Sebagai contoh flight simulator, pesawat dapat dikendalikan oleh user menggunakan sebuah komputer dan menjalankan navigasi penerbangan melalui keyboard.



 Contoh lain EAgames The Sims, manusia diciptakan dengan komputer begitu juga rumah tempat tinggal manusia tersebut. Kita dapat mengatur tata letak ruang rumah dan perjalanan kehidupan manusia tersebut dengan menggunakan mouse dan keyboard.




 



VRML merupakan kepanjangan dari virtual Reality Modeling Language. VRML adalah format komputer yang menjelaskan object 3 dimensi statis maupun dinamis dan object multimedia melalui hiperlink seperti text, suara, gambar, dan film.Contoh dari scene VRML adalah berupa ruang virtual dimana pengguna dapat menggunakan tombol kontrol untuk bergerak di dalam ruangan (atau memindahkan ruang itu sendiri) seolah-olah mereka berjalan dalam ruang nyata. Untuk melihat file VRML,pengguna membutuhkan browser VRML khusus(selain koneksi internet dan sebuah browser web).
Virtual reality sudah banyak mengalami perkembangan dan hal-hal baru yang terjadi. Teknologi ini sudah banyak dimanfaatkan dalam berbagai bidang seperti bisnis, pariwisata, pendidikan, militer, medis, olahraga. Virtual reality merupakan sebuah media yang bisa menghidupkan imajinasi bagi para penggunanya. Sehingga seolah-olah pengguna merasakan keadaan yang sesunggunya. Bahkan dalam bidang militer Virtual Reality sudah dipakai untuk melakukan latihan perang dan terjun payung. Teknologi bisa lebih menghemat biaya dibandingkan dengan cara konvensional.




Berikut ini gambar-gambar Virtual Reality:
     
      


sumber :
http://macuy-marucuy.blogspot.com/2009/10/virtual-reality.html

Komponen Game Engine


Komponen Game Engine


                               


Tools/Data
Dalam pengembangan game, dibutuhkan data yang tidak semudah menuliskan text files. Dalam pengembangan game, paling tidak dibutuhkan beberapa tools seperti 3d model editor, level editor dan graphics programs. Bahkan jika diperlukan, seringkali kita mengembangkan game engine tersebut dengan menambahkan beberapa code dan fitur yang diperlukan.


System
System adalah bagian dari game engine yang berfungsi untuk melakukan komunikasi dengan hardware yang berada di dalam mesin. Jika game engine sudah dibuat dengan baik maka system ini adalah satu-satunya bagian yang membutuhkan perubahan yang cukup banyak apabila dilakukan implementasi pada platform yang berbeda. Di dalam system sendiri terdapat beberapa sub system yaitu graphics, input, sound, timer, configuration. System sendiri bertanggung jawab untuk melakukan inisialisasi, update dan mematikan sub system yang terdapat di dalamnya.


Console
Dengan menambahkan console, kita dapat merubah setting game dan setting game engine di dalam game tanpa perlu melakukan restart pada game tersebut. Console sendiri lebih sering digunakan dalam proses debugging. Apabila game engine tersebut mengalami error kita tinggal mengoutputkan error message tersebut ke dalam console tanpa harus melakukan restart. Console sendiri dapat dihidupkan dan dimatikan sesuai keinginan.


Support
Support adalah bagian yang paling sering digunakan oleh system di dalam game engine. Support sendiri berisi rumus-rumus matematika yang biasa digunakan seperti : vector, matrix, memory manager, file loader merupakan dasar dari game engine dan hampir digunakan semua projek game engine.


Renderer/Engine Core
Pada game engine, engine core / renderer terdiri dari beberapa sub yaitu visibility, Collision Detection dan Response, Camera, Static Geometry, Dynamic Geometry, Particle Systems, Billboarding, Meshes, Skybox, Lighting, Fogging, Vertex Shading, dan Output.


Game Interface
Game interface sendiri merupakan layer diantara game engine dan game itu sendiri. Berfungsi sebagai control yang bertujuan untuk memberikan interface apabila di dalam game engine tersebut terdapat fungsi fungsi yang bersifat dinamis sehingga memudahkan untuk mengembangkan game tersebut.


The Game
Merupakan inti dari penggunaan game engine sendiri, sehingga user dapat mengembangkan game tersebut sesuai dengan yang diinginkan.


Referensi : 

  • http://achmadsaugi.wordpress.com/2012/04/02/game-engine/
  • http://arbacit.blogspot.com/2012/05/komponen-game-engine.html


Game Engine


Game Engine
Game engine adalah sebuah sistem software yang dirancang untuk pembuatan dan pengembangan suatu video game. Game engine ini dirancang untuk bekerja pada beberapa konsol video game, dan sistem operasi desktop seperti Linux, Microsoft Windows, dan Mac OS. Fungsi utama yang disediakan oleh game engine ialah mesin render untuk grafik 2D dan 3D, audio, animasi, scripting, kecerdasan buatan, jaringan, dan masih banyak lagi.


Contoh-contoh Game Engine
1. Freeware game engine/open source game engine

  • Blender
  • Golden T Game Engine (GTGE)
  • DXFramework
  • Ogre
  • Aleph One
  • Axiom Engine
  • Allegro Library
  • Box2D
  • Build Engine
  • Cube
  • Cube 2
  • DarkPlaces
  • jMonkeyEngine (jME)
  • Panda3D
  • Sphere
  • Unreal Engine

2. Commercial engines/game engine berbayar (komersial)

  • Alamo
  • A.L.I.V.E
  • BigWorld
  • DXStudio
  • Dunia Engine
  • Euphoria
  • GameStudio
  • Jade Engine
  • Jedi
  • Medusa
  • RPG Maker VX
  • RPG Maker XP
  • RPG Maker 2003
  • RPG Maker 95
  • Vision Engine
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.




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.


Referensi : 

  • http://hafidsun.wordpress.com/2012/03/11/apa-itu-game-engine/ 
  • http://expressboyz.blogspot.com/2012/04/game-engine.html