Wednesday, June 5, 2013

Game engine technology

Posted by Unknown at 6/05/2013 10:56:00 AM 0 comments

PENGANTAR TEKNOLOGI GAME
Tugas ke 4 Game engine technology
 








Nama                    : Sandra Wulansari
NPM                     : 58410924
Kelas                 : 3IA12
Jurusan                : Teknik Informatika





UNIVERSITAS GUNADARMA
2013

A.   Game Engine
Game engine merupakan salah satu perangkat lunak yang digunakan untuk menciptakan perangkat lunak lain contohnya game authoring software, game creator tool, software pembuat game, dan sebagainya. Dulu, hampir semua perusahaan game memiliki game engine mereka sendiri. Sekarang terdapat beberapa developer menciptakan game engine yang terbuka karena game engine yang makin modern terus bertambah, mulai dirasa terlalu mahal untuk dikembangkan lebih lanjut.. Sebagai contoh adalah id Tech dan Unreal Engine. Game engine yang dijual dan di franchise kan secara umum disebutkan dengan middleware.
Game engine dibagi ke dalam dua bagian besar, yaitu API (application programming interfaces ) dan SDK. API merupakan bagian dari operating system, services dan libraries yang diperlukan untuk memanfaatkan beberapa feature yang diperlukan, dalam hal ini conthnya DirectX. SDK sendiri merupakan kumpulan dari libraries dan API yang sudah siap digunakan untuk memodifikasi program yang menggunakan operating system dan service yang sama. Biasanya game engine menyertakan keduanya.
Jenis-jenis Game engine untuk Freeware game engine/open source Blender (Cenderung bersifat 3d) adalah Golden T Game Engine, DXFramework, Ogre 3D, Aleph On dan Irrlicht. Serta jenis Game engine untuk Commercial engines/game engine berbayar (komersial) adalah Alamo, A.L.I.V.E, BigWorld, DXStudio, Dunia Engine, Euphoria dan GameStudio. Pada artikel ini membahas game engine pada OGRE 3D.

B.   Game Engine Ogre
OGRE (Object-Oriented Graphics Rendering Engine) adalah engine yang object oriented dan flexible 3D rendering pada game engine yang ditulis dalam bahasa C++ serta didesain untuk mampu men-developer dengan intuitif dan mudah kepada aplikasi produksi dengan menggunakan utility hardware-accelerated 3D graphic. Gambaran abstraknya OGRE menggunakan sistem library seperti Direct3D & OpenGL, serta menyediakan sebuah dasar interface di dunia objek dan class object yang lebih tinggi. OGRE mempunyai banyak komuniti yang aktif, salah satunya sourceforge.net yang berdiri sejak Maret 2005. Beberapa karyanya yang sudah ada dan dikomersialkan diantaranya game Ankh, Azathoth, & Pasific Strom. Serta baru-baru ini muncul lagi gamenya, yaitu Eihoth 1.4.9 yang rilis pada Mei 2008. Rilisnya dibawah istilah GNU Lesser General Public License.
Ogre berjalan pada berbagai tools graphics 3D yang sesuai compatible dengan Ogre, meskipun performa pasti akan berbeda-beda. Ogre didukung C + + compiler (misalnya VisualStudio atau Code:: Blocks / MinGW). Akhirnya, akan diperlukan sebuah tempat untuk isi program 3D. Ogre dijalankan dengan script C++, namun dapat pula dengan bahasa lainnya yaitu pada Python (Python-Ogre), Jawa (Ogre4j) dan untuk. NET languages – C # dan VB.NET – (MOGRE). Ogre adalah sebuah komponen dalam pengembangan yang lebih besar.
OGRE mempunyai banyak komuniti yang aktif, salah satunya sourceforge.net yang berdiri sejak Maret 2005. Beberapa karyanga yang sudah ada & dikomersialkan diantaranya game Ankh, Azathoth, & Pasific Strom. Serta baru-baru ini muncul lagi gamenya, yaitu Eihoth 1.4.9 yang rilis pada Mei 2008. Rilisnya dibawah istilah GNU Lesser General Public License.
OGRE hanyalah rendering engine. Seperti pada engine lainnya, hanya saja OGRE pada umumnya hanya sebagai graphic rendering. Dengan kata lain fitur OGRE hanya khusus menangani vector & matrix classes, memory handling, dan lain-lain. Ini bukanlah salah satu dari semua solusi dalam istilah game development / simulasi, OGRE tidak menyediakan audio / physics support.
Pada umumnya ini bisa dikatakan sebagai kelemahan utama dari OGRE, tetapi itu setara setelah melihat kemampuan grafis ada engine ini. Kemempuan utama 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 mensuport OIS, SDL, dan 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.


C.   Game Engine Irrlicht
IRRLICHT adalah platform 3D engine yang kenceng dan open source.dibawah lisensi libpng/zlib.Dibuat dengan menggunakan bahasa pemrograman C++ tetapi juga dapat menggunakan beberapa bahasa pemrograman lain yang dikembangkan oleh komunitas. Pengembangan IRRLICHT didasarkan pada dua jenis bagian rendering API yaitu DirectX ,OpenGL dan dua bagian software render. IRRLICHT didesain dengan filosofi ringan, sederhana namun tetap merupakan sebuah grafik engine yang powerfull, serta memberikan kemudahan untuk dipelajari dibandingkan dengan engine yang ada saat ini akan tetapi tidak mengorbankan kualitas dari grafik engine ini.
IRRLICHT adalah grafik engine dan bukan game engine (jadi jangan menyalah artikan sebagai game engine), dedesain dengan beberapa fasilitas yaitu simple collision detection dan user input berupa keyboard/mouse/joystick, tidak disebut sebagai game engine karena tidak dilengkapi dengan fasilitas AI ,path finding, sound (see irrKlang), networking dan fasilitas yang lain seperti yang terdapat di dalam paket game engine pada umumnya. Meskipun tidak mendukung fasilitas untuk kelengkapan segabai sebuah game engine tetapi IRRLICHT mempunyai fondasi yang kuat untuk dikembangkan sebagai sebuah game engine karena mempunya grafik render yang powerfull dan ini adalah bagian yang paling penting untuk membuat sebuah game yang berkualitas.
Berdasarkan pada lisensi yang dimiliki oleh IRRLICHT, kita bisa menggunakan source code dan memodifikasinya You never have to release to the public any programs you make, any changes you make to the engine, or pay royalties. The engine is free to use for commercial use without debilitating restriction. Of course the community would be happy to receive any donation of code you would be willing to make.





Referensi :
http://magetagame.wordpress.com/2-game-engine/ogre/ Waktu akses : 5 juni 2013, pukul 10:40
http://resariski.wordpress.com/2011/03/10/pengenalan-ogre/ Waktu akses : 5 juni 2013, pukul 10:35
http://magetagame.wordpress.com/2-game-engine/ogre/ Waktu akses : 5 juni 2013, pukul 09:42




Game Design Concept

Posted by Unknown at 6/05/2013 10:56:00 AM 0 comments

PENGANTAR TEKNOLOGI GAME
Tugas Ke 3 Game Design Concept







Nama                    : Sandra Wulansari
NPM                     : 58410924
Kelas                 : 3IA12
Jurusan                : Teknik Informatika





UNIVERSITAS GUNADARMA
2013



A.    Gameplay Addictive
Game ini termasuk gameplay yang sangat mudah di mainkan,jadi semua kalangan dari anak kecil sampe orang dewasa bisa maininnya. Lagipula apa hubungannya si pacman dengan hantu yang terus mengejarnya ?? lagipula pacman memakan bulatan kuning saja. Tetapi anehnya tidak ada suatu halpun yang menyebabkan mengapa hantunya terus ngejar si pacman ?? kemana-mana si pacman dikejar ga ada alesannya juga tu hantu hihi.  toh hantunya juga gak makan bulatan kuning itukan jadi gak perlu marah dong.. Apa dia iseng aja ya ngejar si pacman ? hihi hantunya juga warna-warni yang sangat lucu bukannya seram.

B.   Alur Cerita Game Pacman
Cara Bermain Game Pac Man adalah pemain harus mengontrol tokoh berwarna kuning bernama Pac-Man dan membawanya mengelilingi lorong berlika-liku sambil memakan titik-titik kecil dan benda-benda khusus lainnya. Pada saat yang sama, terdapat empat hantu yang berkeliling di lorong tersebut yang bertugas menangkap Pac-Man. Sang pemain dapat menyelesaikan satu level (tingkat) jika berhasil memakan seluruh titik dan benda khusus. Secara teori, permainan dapat terus berlanjut tanpa batasan tingkat, namun tingkat ke-256 memiliki bug yang menyebabkan gambar di layar tidak beraturan dan karena itu Pac-Man tidak dapat terus dimainkan melewati tingkat tersebut.

C.    Karakter dalam Game Pacman
Pac-Man termasuk gameplay yang cara maininnya gampang banget. Karakter utama (Pac-Man) harus berusaha menghabiskan bulatan-bulatan kuning yang tersedia sepanjang jalan pada maze, dalam perjalanannya Pac-Man harus berusaha menghindari para pengganggu berupa hantu warna-warni. Kita kenalan dulu deh yu sama hantunya yang unyu itu hihi


D.    Game yang menyerupai game pacman diantaranya ;

1.      Bombermania
Bombermania adalah game Arcade yang bercerita tentang bomberman(kita) yang bermisi untuk membunuh musuh dan meledakkan tembok batu-bata. kalau menurut saya, game ini lebih mirip dengan game Pacman karena didalam game ini terdapat labirin dan musuh-musuh yang beraneka ragam.

2.    EVAC
Evac adalah sebuah game puzzle maze, dimana kita sebagai tokoh utama harus menyusuri maze, mengambil titik-titik berwarna di sepanjang perjalanan sambil menghindari banyak musuh yang berpatroli. Setiap kita melakukan mekamisme tertentu, kita bisa melewati (sambil mengalahkan) musuh, namun musuh yang telah kita kalahkan akan respawn dan terus memburu. Sampai sini, gameplaynya masih mirip dengan Pac Man, bukan? Tujuan dari game ini adalah mengambil semua titik berwarna dari maze. Jika seluruh titik berwarna telah diambil, pintu keluar akan terbuka dan kita harus menggerakkan si tokoh utama ke arah sana. Proses ini tentu akan membawa kita ke stage berikutnya.





Referensi :
http://www.retropacman.com/id/history.html Waktu akses : 2 april 2013 pukul 20:25
http://rivafauziah.wordpress.com/2010/05/21/pac-man-game/ Waktu akses : 5 juni 2013 pukul 10:33
http://jos998.wordpress.com/tag/game-mirip-pacman/ Waktu akses : 5 juni 2013 pukul 10:25



Friday, May 3, 2013

Rendering Farm

Posted by Unknown at 5/03/2013 11:12:00 PM 3 comments

Sejarah Rendering Farm

Final Fantasy VII Advent Children, Resident Evil: Degeneration, UP, Toy Story 1-3, The Incredibles, Monster Inc, Finding Nemo dan lainnya yang berupa Film 3D adalah hasil dari rendering. Film gabungan 3D dan real person seperti Transformer, Star Wars dan film yang memiliki efek komputer juga merupakan hasil rendering. Render atau Rendering adalah proses akhir dari pembuatan gambar 3D aktual dari gambar yang telah di siapkan sehingga menyerupai bentuk nyata dengan warna cahaya, bayangan dan sudut pandang yang nyata. Sehingga menghasilkan gambar yang real dan tampak seperti sebuah hasil foto yang hidup dan nyata. Selain untuk film, rendering dapat juga digunakan untuk Arsitektur, video game, simulator dan lainnya.

Untuk yang pernah mencoba merendering sendiri hasil dari pekerjaannya atau seorang mahasiswa yang mendapat tugas membuat proyek 3D pasti merasakan bahwa merender itu membutuhkan waktu yang lama meskipun menggunakan komputer yang memiliki spek tinggi. Bagaimana dengan film 3D yang memiliki durasi yang cukup lama sampai misalnya berdurasi sampai 1 setengah jam? Tentunya sangat lama waktu yang dibutuhkan untuk merendernya. Misalnya, waktu render mencapai 40 juta jam untuk Monsters vs Aliens, 30 juta jam untuk Madagaskar: Escape 2 Africa, dan 6,6 juta jam untuk Revenge of the Sith. Beberapa frame resolusi IMAX diperlukan untuk Devastator, tokoh dalam Transformers 2: Revenge of the Fallen, mengambil hingga 72 jam per frame.

            Untuk mensiasati hal tersebut maka dirancanglah sebuah sistem bernama “rendering Farm”.  Pada faktanya hitungan waktu rendering itu berdasarkan waktu yang diperlukan sebuah core processor untuk melakukan rendering. Denganrendering farm akan terdiri dari ribuan core processor yang digabung untuk melakukan rendering. Sehingga waktu yang dibutuhkan untuk merender akan lebih singkat dengan menggunakan beberapa komputer.







Apa itu Rendering Farm ?



Rendering adalah suatu proses untuk mengubah model geometri menjadi suatu gambar. Untuk melakukan proses render biasanya membutuhkan waktu yang lama, terutama untuk rendering gambar yang photo-realistic. Untuk mengatasi masalah tersebut pemanfaatan sumber daya grid sebagai suatu rendering farm dapat dijadikan sebagai salah satu alternatif pilihan.

Rendering farm adalah sekumpulan dari komputer yang bekerja secara bersama sama untuk melakukan proses render.



Konsep Rendering Farm

            Pada dasarnya konsep kerja rendering farm adalah membagi tugas renderingke beberapa komputer. Apabila kita merender single frame saja maka render farmakan “keroyokan” dalam melakukan render karena akan terbagi secara otomatis. Namun apabila melakukan rendering animasi atau multiple frame maka tiap-tiap komputer akan dapat merender tugasnya masing-masing yang dapat dibagi secaramanual oleh kita. Misalnya komputer A akan merender frame 1 sampai 50, komputer B akan merender frame 51 sampai 100, komputer C akan merender fram 101 sampai 150 dan seterusnya sesuai yang kita tentukan.



Render Farm atau Peternakan Render adalah suatu kumpulan komputer (Computer Cluster) yang dibangun untuk mempercepat rendering suatu animasi atau image yang biasanya digunakan untuk keperluan pembuatan film dan visual-visual efek untuk siaran TV.

Mari kita mengambil contoh film Transformers 2, jika kita merender keseluruhan film dengan menggunakan 1 unit komputer dengan spesifikasi terbaru akan memakan waktu selama 16.000 tahun, tetapi dengan menggunakan teknologi Render Farm hanya butuh beberapa tahun saja termasuk proses pembuatannya. Begitulah hebatnya teknologi Render Farm.

Seperti yang dijelaskan diatas bahwa Render Farm merupakan kumpulan banyak komputer yang membentuk sebuah Cluster dalam satu jaringan. Konsepnya seperti ini, coba anda bayangkan ada 5 unit komputer dengan spesifikasi utama menggunakan 6 Core prosesor berkecepatan 3Ghz. Sekarang kita bentuk itu menjadi suatu Farm maka kekuatan Render Farm ini akan menjadi 6 Core prosesor x 5 unit = 30 Core. Setiap Core prosesor tersebut berkecepatan 3Ghz, jadi total kecepatan Render Farm tersebut adalah 3Ghz x 30 Core = 90Ghz. Dengan contoh sebuah Render Farm sederhana diatas, dapat kita bayangkan bagaimana cepatnya sebuah Render Farm sederhana dalam merender gambar resolusi tinggi atau animasi singkat.




Skema Render Farm



Sifat Rendering Farm



Ada dua macam sifat rendering, biased dan unbiased rendering. Unbiased rendering dapat memberikan hasil yang lebih baik dari biased rendering karena pada unbiased rendering tidak ada penyederhanaan proses rendering, tetapi waktu yang dibutuhkan untuk melakukan unbiased rendering lebih lama dan sumber daya komputasi yang dibutuhkan semakin besar. Untuk mengatasi hal tersebut pemanfaatan cloud computing di lab B201 untuk membangun suatu render farm dapat dijadikan alternatif.

Untuk membangun suatu rendering farm maka dibutuhkan suatu software pembantu yang dapat difungsikan sebagai tools untuk melakukan proses parallel rendering. Yadra adalah salah satu tools yang dapat digunakan untuk membangun sebuah rendering farm. Yadra akan sangat efektif bila digunakan untuk merender suatu animasi, sebab yadra bekerja dengan cara memecah dan mendistribusikan frame dari le animasi kepada setiap komputer. Proses memecah frame dilakukan secara manual oleh user dengan cara melakukan ssh pada tiap komputer client. Dalam tugas akhir ini yadra akan diimplementasikan pada sistem grid yang telah ada di Jurusan Tehnik Elektro, selain itu program bantuan juga akan dibuat untuk mempermudah user dalam menggunakan yadra

Luxrender digunakan sebagai software untuk melakukan proses unbiased rendering karena luxrender menggunakan teknik ray tracing yang mampu menghasilkan tingkat ketajaman gambar yang sangat tinggi. untuk mengatur kerja tiap komputer pada render farm digunakan condor karena condor dapat melakukan penjadwalan job secara paralel pada tiap komputer. Implementasi dari penelitian ini adalah render farm yang dapat melakukan unbiased rendering dan memberikan hasil rendering dengan prosentase kesalahan sebesar 66,54%-78,65% untuk proses rendering selama 5 menit dan sebesar 52.53%-61.1% untuk proses rendering selama 150 menit.



Tujuan Rendering Farm

Tujuan dari penggunaan rander farm adalah untuk mempermudah proses rendering file blender, dimana file blender tersebut di-copy-kan ke server, lalu server mebagikan tugas kepada client-nya untuk merender file tersebut, hasil render akan tersimpan di server.

Ada beberapa software yang bisa digunakan untuk melakukan rendering farm. Disini saya akan memberikan langkah-langkah bagaimana melakukan rendering farm dengan menggunakan software Blender. Proses rendering pada file blender, dimana file blender tersebut di-copy-kan ke server, lalu server mebagikan tugas kepada  client-nya untuk merender file tersebut, hasil render akan tersimpan di server.



Langkah-langkah adalah sebagai berikut:

1.      Siapkan 1 server, dan 3 client,  pastikan PC atau laptop terkoneksi ke jaringan, jika menggunakan koneksi wireless, maksimal 4 client.

2.      Untuk  server, pastikan kapasitas  hard disk besar, karena akan digunakan sebagai tempat  penyimpanan hasil render.

3.      Server dan client tersebut terkoneksi dengan wireless.

4.      Siapkan file BRFServer.exe, BRFClient.exe dan folder master yang terkumpul dalam folder RenderFarm.

5.      Sekarang, saatnya menciptakan access point di server, langkah pertama adalah pilih menu Start –Control Panel –  Network Sharing and Centre –  Manage Wireless Network –  Add –Create an ad hoc network  –  Beri nama jaringan pada  Network Name  –  pilih  No Authentication  pada Security type – centang Save this network – Next

6.      Back, setting IP pada server tersebut dan pada PC/Laptop client, untuk IP Server misalkan kita menggunakan IP : 192.168.7.1 sedangkan untuk 2 clientnya menggunakan IP: 192.168.7.2, 192.168.7.3 dan 192.168.7.4

7.      Untuk  client dan server, pada Home Group, pilih radio button Turn Off Password Protected  Sharing

8.      Pada client, search dan connect wireless server, dengan mencari nama jaringan yang telah  dibangun server pada proses 4.

9.      Kemudian tes koneksi dengan ping client ke server dan sebaliknya.

10.  Pada server dan client, copy file  REnderFarm  ke direktori  C:.  Aktifkan renderfarm pada server dan client.

11.   Pada server, buat  direktori baru misalnya di  D:, beri nama  proyek, lalu klik kanan, Properties, Sharing, Share, pilih Everyone, Add, pilih Read/Write pada Permission level.

12.   Pada client, masuk ke direktori C:, buka folder RenderFarm,  klik BRFClient, masukkan lokasi file blender.exe pada path url yang muncul, yaitu: c:\RenderFarm\master\blender.exe

13.  Maka akan muncul waiting for a job.. ini berarti, client sedang menunggu proses rendering yang yang ditugaskan oleh server.

14.   Pada client, coba akses folder proyek dengan pilih menu Start – Run - \\192.168.7.1

15.  Pada server, ambil data  *.blend  (misalnya  pena.blend), pindahkan ke folder proyek. Dalam folder yang di-sharing  tadi, buat folder  rander1  dalam folder proyek, ganti nama file blend tersebut, lalu pindahkan ke folder render1.

16.   Pada server, buat file .csv di folder proyek

17.  Caranya, create new text, save as  csv,  beri nama ip  sehingga menjadi file ip.csv.  Check ekstensi folder, jangan sampai di hidden.

18.   Pada server, double click BRFServer.exe dalam folder C:\RenderFarm

19.  Kemudian search.

20.   Buka file ip.csv, ketikkan ip server pakai koma enter, dan ip client, seperti ini:

192.168.7.1,

192.168.7.2,

192.168.7.3,

192.168.7.4

Lalu  save.

21.  Kemudian di BRFServer.exe, browse file ip.csv, maka akan tampil di client

22.  Shared Folder Name: proyek

23.  Project Folder Name: render1

24.  Blender file name: proyek1.blend

25.  Check terlebih dahulu, apakan yang Anda ketikkan itu benar adanya.

26.   Lalu klik Start, maka proses rendering dimulai, baik itu di server dan di client.



Referensi


http://www.panduaji.net/2011/03/blender-template.html waktu akses : 3 mei 2013 pukul 21:17





http://tommymarbun.blogspot.com/2011/11/render-farm.html waktu akses : 3 mei 2013 pukul 21:58




 

sandraaws Template by Ipietoon Blogger Template | Gadget Review