RSS

GAME ENGINE AND FITURS

       Game Engine

       Game engine adalah perangkat lunak yang dirancang untuk membuat dan mengembangkan video game. Fungsi utama yang diberikan oleh game engine meliputi rendering untuk 2D atau 3D graphic, collision detection, sound, scripting, animasi, artificial intelligence, networking, memory management, threading dan scene graph. Game engines memberikan perangkat untuk visual development dengan tambahan komponen perangkat lunak yang dapat dipakai berulang kali. Perangkat ini pada umumnya memberikan integrated development environment yang dapat mempermudah, serta mempercepat pengembangan game.

      Game engine juga sering disebut juga “Game Middleware”. Game Middleware adalah software yang didalamnya sudah terdapat elemen-elemen yang dibutuhkan oleh seorang game developer, kebanyakan dari game middleware memberikan fasilitas guna menunjang pengembangan game dengan mudah seperti graphics, sound dan Artificial intelligence.

       Game Engine menyediakan fitur-fitur yang acapkali ada pada game namun sulit membuatnya. Bagaimana agar karakter kita tidak menembus tembok sebenarnya adalah hal yang sangat sulit programming-nya. Namun di game engine fitur tersebut automatis terpakai. Untuk game FPS, fitur yang tinggal pakai lain misalnya membuat dunia permainan 3D, menaruh objek-objek ke dalam dunia tersebut, animasi, kecerdasan musuh, dsb. Dengan demikian, waktu pembuatan game bisa dipangkas sangat signifikan. Namun, karena game engine berfungsi sebagai middleware, kekurangannya adalah kustomisasi kita menjadi terbatas.


Beberapa elemen yang ada di dalam game engine adalah :
a.     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.

b.     System
System sendiri 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.

c.     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.

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

e.     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.

f.       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.

g.     The Game
Merupakan inti dari penggunaan game engine sendiri, sehingga terserah kita bagaimana mengembangkan game tersebut.

Beberapa contoh game engine :

a.     RealmForge
Merupakan free dan open source game engine untuk Microsoft .Net Framework dan dikhususkan pada visual3D Game Engine, merupakan cross platform game engine untuk .NET 2.0 dan Microsoft XNA.
RealmForge dibangun diatas AXIOM 3D rendering engine. Di tulis dalam bahasa C# keseluruhan. Dibangun untuk pembuatan game berbasis .NET.

b.     Truevision3D
Merupakan game engine 3D yang dibangun dengan menggunakan visual basic 6 dan C++ dengan menggunakan Microsoft Directx  API. Mulai versi 6.5, engine ini menggunakan direct 9 dan shader support, serta ditulis ulang menggunakan C++. Sampai perkembangan terbaru, belum ada wacana untuk mengembangkannya untuk mendukung penggunaan directx9 serta Microsoft XNA.

c.     OGRE
OGRE (Object-Oriented Graphics Rendering Engine) merupakan engine yang mendukung 3D Graphic. Merupakan game engine yang fleksibel dalam melakukan 3D Rendering, ditulis dalam bahasa C++ sehingga memudahkan pengembang untuk membangun game yang mendukung 3D Graphics.

Beberapa contoh game middleware yang sering digunakan :

a.     Gamebryo
Merupakan game engine yang berawal dari perusahaan Numerical Design Limited (NDL) akan tetapi pada perkembangannya, perusahaan NDL bergabung dengan Emergent Game Technologies. Ditulis menggunakan bahasa C++, Gamebryo merupakan 3D Game engine yang memberikan support kepada beberapa platform sebagai berikut :
-          Windows (baik direct 9 dan 10)
-          Nintendo game cube
-          Nintendo WII
-          PS 2 dan PS 3
-          XBOX serta XBOX360

b.     Renderware
Merupakan salah satu saingan dari Gamebryo. Bergerak dalam bidang 3D API dan graphic rendering engine. Renderware digunakan pada computer games, Active Worlds serta beberapa VRML Browser. Merupakan game engine yang sering digunakan di PS2 sehingga sering disebut sebagai “Sony’S Directx”.

c.     Unreal Engine
Merupakan salah satu game engine yang cukup populer. Dikembangkan oleh Epic Games dalam bahasa C++, Unreal engine menjadi salah satu game engine yang mempunyai kemampuan portability yang baik. Dapat berjalan pada beberapa platform seperti Windows, Linux, MacOS dan beberapa video games console seperti Dreamcast, XBOX, XBOX360.
 
      Game Development Tools

          Game development tools adalah software yang mempunyai spesialisasi yang membantu atau memfasilitasi pembuatan computer atau video game. Beberapa tugas dapat ditangani oleh game development tools termasuk konversi beberapa kelengkapan dari video game seperti 3D model dan texture ke dalam format yang diperlukan oleh game, level editing serta script compilation.
Pada saat pengembangannya. Game development seringkali menemui kendala. Hal berikut ini adalah beberapa alasan kenapa game development tools dibilang gagal :

a.     Game development yang di design seiring waktu berjalan
Seringkali dalam merancang sebuah game tools. Perusahaan game terlalu terburu-buru dalam melakukan design awal dari game tools tersebut. Karena dituntut untuk selalu memberikan progress, biasanya para programmer merancang game tools tersebut seiring dengan coding yang telah dibuat.
Saat game tools menjadi makin komplek dan perlu di tinjau ulang, seringkali programmer kesulitan untuk merubah code yang mereka tulis diawal sehingga seringkali muncul opini untuk menulis ulang semua code daripada memperbaiki atau menambah fitur yg ada.

b.     System model dari design game development game tersebut
Saat programmer mendesign sebuah tampilan atau interface, seringkali mereka berusaha untuk memperlihatkan struktur data secara langsung. Hal ini mungkin akan berguna untuk orang yang mengerti cara kerja system, tetapi untuk end user, biasanya mereka tidak memperdulikan detail dari implementasi system, yang diperlukan hanyalah hasil akhir.

c.     Menerapkan teknologi yang salah untuk menekan biaya
Pada pengembangan game tools, seringkali pengembang berusaha menerapkan system yang sudah ada untuk mempersingkat biaya. Akan tetapi, pada kasus tertentu lebih baik kita membangun game tools tersebut dari awal sehingga dapat menghemat biaya serta waktu.

d.     Interface yang terlalu kompleks
Penerapan “The simple, The better” harus selalu dicamkan oleh setiap game tools designer. Semakin kompleks interface, semakin susah game tools tersebut digunakan oleh end user. Operasi yang paling umum dipakai harus selalu didesign untuk mudah dipakai dan paling gampang untuk diakses oleh end user. Sedangkan aplikasi yang jarang digunakan dapat disembunyikan di dalam menu bar.

e.     Terlalu banyak fitur-fitur tambahan
Seringkali pengembang membuang waku untuk mengembangkan fitur-fitur tambahan yang kurang berguna bagi user, daripada membuang waktu dan tenaga untuk fitur tambahan lebih baik pengembang lebih memfokuskan pada fungsionalitas fungsionalitas utama yang harus ada pada game tools.

f.       Merancang untuk user yang sudah advance
Game development tools seharusnya ditujukan untuk user bertipe intermediate. Dimana semua fungsionalitas utama harusnya lebih ditonjolkan dan beberapa fungsionalitas tambahan dapat ditemukan jika diperlukan.

Beberapa contoh game development tools :
a.     RAD Game tools
b.     Java Game Development Tools
c.     Garage games game development tools



Sumber :: http://gameprogramming.blog.ittelkom.ac.id/blog/files/2009/09/113040265-game-tools-and-game-engine.docx

Sejarah Game Komputer

Sejarah teknologi game komputer secara langsung berhubungan dengan perkembangan komputer itu sendiri. Komputer dengan kecepatan processor tinggi, grafis yang lebih mendekati realita, dan media penyimpanan yang lebih besar sebenarnya dimaksudkan untuk memenuhi kebutuhan dalam bermain games.
        Sebelum dimulai, akan kita pahami dulu apa arti dari game (game komputer). Game adalah sebuah permainan interactive yang membutuhkan komputer untuk bermain. Program komputer menerima input dari si pemain melalui pengendali dan menampilkan lingkungan buatan melalui TV atau layar monitor.

Game Generasi Pertama

Tahun 1952, di Universitas Cambridge, A.S Douglas menulis sebuah tesis untuk gelar sebuah PhD-nya mengenai interaksi antara komputer dan manusia. Dalam tesisnya itu ia menciptakan game komputer dari sebuah permainan tradisional bernama Tic-Tac-Toe. Game ini diprogram dengan memakai komputer EDVAC vacuum tube yang memiliki layer berupa cathode ray tube (CRT).
Kemudian di tahun 1958. William Haginbotham menciptakan video game pertamanya. Berbeda dengan Douglas, video game pertamanya yang berjudul Tennis for Two diciptakan dan dimainkan di osciloscope.
Tapi game komputer pertama yang benar-benar diciptakan menggunakan komputer betulan adalah Spacewar. Saat itu di tahun 60-an, komputer adalah barang sangat mewah. Dan biasanya komputer dipakai untuk kepentingan riset dalam dunia militer. Tapi seseorang bernama Steve Russel memiliki ketertarikan akan hal lain. Dia dan teman-temannya sangat nge-fan dengan kisah fiksi ilmiah berjudul Skylark karangan Edward E Smith. Dari situ mereka membuat sebuah game bernama Spacewar. Kebetulan juga, Steve Russel bekerja menggunakan sebuah komputer mainframe bernama MIT PDP-1 yang biasa dipakai untuk perhitungan statistik. Dengan komputer itulah dia membuat Spacewar di tahun 1961.

Game Generasi Kedua

Di tahun 1971, Nolan Bushnell bersama dengan Ted Dabney menciptakan game ber-genre arcade yang pertama. Dinamai Komputer Space, game itu didasari oleh Spacewar. Tahun 1972, Nolan dan Ted memulai Atari komputer. Kemudian dia mengembangkan game berjudul Pong yaitu game pertama yang tersedia untuk publik. Karena game-game sebelumnya hanya ada di dalam komputer mainframe untuk kesenangan sendiri saja. Asal usul Pong dimulai saat Nolan ingin membuat game sederhana dan mudah dimengerti. Dengan memory dan micro processor kelas rendah, kemampuan proses yang terbatas dan grafis yang sederhana, akhirnya dia membuat versi elektronik dari permainan ping pong yang kemudian menjadi Pong.
 

Sedikit selingan, Pong kemudian berevolusi menjadi sebuah game bernama Breakout. Game itu diciptakan oleh Steve Jobs untuk Atari. Dari situ, Steve Jobs dan temannya Steve Wozniak mulai berpikir untuk menciptakan sebuah PC. Kemudian mereka meminjam semua peralatan yang dipakai dalam proyek Breakout dan membuat sebuah prototype bernama Apple I. dan itu adalah cikal bakal dari komputer Apple Macintosh yang ada sekarang.
Pada tahun 1980, Atari mengeluarkan game berjudul Asteroid dan Lunar Lander. Kedua game tersebut adalah game pertama yang didaftarkan pada kantor hak cipta untuk mendapatkan paten. Asteroid merupakan game yang penuh inovasi baru dalam grafisnya. Daripada menggunakan metode raster, game ini merupakan grafis vector line seperti yang ada pada osciloscope.
Pengenalan Atari Video komputer System (Atari 2600) dengan CPU biasa dan slot untuk kasetnya, menjadi suatu era baru dalam dunia game. Di tahun 1980 itu juga menunjukkan penjualan yang meningkat dari PC yang biasa dipakai untuk game.
Dan kini komputer bersaing dengan mesin konsol seperti PS atau Xbox. Dan komputer tidak hanya sebagai mesin untuk kepentingan bisnis semata, tapi juga untuk hiburan seperti game.


Game Generasi Ketiga

Generasi video game ketiga ini dimulai pada tahun 1983 oleh Jepang melalui peluncuran Famicom yang sekarang dikenal sebagai NES (Nintendo Entertainment Sistem) dengan salah satu game terkenalnya yaitu mario bros. NES mempunyai saingan yaitu Sega Master System yang dibuat di Amerika.



Game Generasi Keempat

Generasi keempat dimulai pada tanggal 30 Oktober 1987 dengan dirilisnya Nippon Electric Company (NEC) PC Engine tetapi walaupun NEC telah dirilis sebagai yang pertama pada generasi ke empat, namun di era ini tetap didominasi oleh persaingan Nintendo dan Sega, Super Nintendo dan Sega Mega Drive. Beberapa perusahaan hiburan lainnya juga mulai hadir pada generasi ini, salah satunya adalah SNK Playmore's Neo Geo.



Game Generasi Kelima

Generasi kelima lebih dikenal sebagai era 32 bit, Generasi ini berlangsung dari sekitar 1993 sampai 2002 dan didominasi oleh tiga konsol, yang Sega Saturn (1994), yang Sony PlayStation (1994), dan Nintendo 64 (1996). Disini Game sudah tidak lagi menggunakan catridge yang dimasukan kedalam slot, tetapi sudah menggunakan cd untuk memainkan gamenya.


Game Generasi Keenam

Generasi keenam ini terdapat 4 console terkenal yaitu sega dreamcast, playstation 2, nintendo game cube dan x-box. Generasi ini dimulai pada saat tanggal 27 November 1998 dengan dirilisnya DreamCast, selanjutnya dikeluarkannya console Playstation 2 saat Maret 2000. Sedangkan untuk console Gamecube dan Xbox mulai dipasarkan sekitar bulan September dan November. Game pun sudah dikemas kedalam bentuk DVD, kecuali sega dreamcast yang menggunakan gd-rom.



Game Generasi Ketujuh

Pada generasi ini tiap console mulai diperlengkapi dengan sistem online; tambahannya, seluruh console tersebut memiliki fasilitas “broadband-ready”. Sega sudah meninggalkan dunia konsole dan berkosentrasi dalam pembuatan software game.
Generasi ini dimulai dari 22 November 2005 dengan dirilisnya Microsoft’s Xbox 360 dan diikuti oleh Sony’s Playstation 3 pada 11 November 2006 dan Nintendo’s Wii pada 19 November 2006. Masing-masing sarana permainan yang baru memperkenalkan type terbaru dalam teknologi. Sebagai contoh, Xbox 360 dan Playstation 3 menawarkan tampilan atau grafik dengan kualitas tinggi, pada saat yang sama Nintendo’s Wii fokus pada pengendali atau biasa yang disebut joystick dengan menggunakan sensor gerak. Ketiga saran permainan di atas mempunyai joystick tanpa kabel atau yang disebut dengan wireless.

Berikut kelebihan dan kekurangan console games pada generasi ini :

Xbox 360

Game ini mempunyai kelemahan yang biasa disebut dengan “Red Ring of Death” yang terjadi pada sistemnya. Oleh sebab itu pihak Microsoft memberikan garansi 3 tahun pada pemakai agar dapat memperbaikai segala kerusakan yang diakibatkan oleh system secara gratis. Model terbaru dari Xbox 360 telah dipatenkan daripada yang sebelumnya, mengurangi panas (tidak cepat panas) dan gagal system. Dalam memproduksi Xbox, tidak membutuhkan biaya yang mahal karena masih menggunkan teknologi DVD.

Video Output : RGB, VGA, Component, S-Video, Composite, SCART.

Playstation 3

Sony’s Playstation 3 dirilis pada tanggal 11 November 2006 dengan harga yang lebih mahal daripada Xbox. Playstation mempunyai system terbaru seperti Cell Microprocessor dan Blue Ray. Penggunaan Blue Ray sangat menguntungkan konsumen karena disc yang dipakai bisa tahan lama.

Video Output : HDMI, RGB, Component, Composite, S-Video, SCART

Wii

Nintendo memasuki generasi ini dengan pendekatan baru dalam Wii Console. Wii lebih memilih peningkatan kepuasan melalui interaksi pemakai dari pada menggunakan teknologi terbaru. Teknologi yang dipakai oleh Wii adalah sensor gerak yang dapat memnudahkan pemakai memainkan game. 




Berdasarkan Jenis Genrenya atau cara memainkannya : 
  1. RPG (Role Playing Game) : sebuah permainan yang para pemainnya memainkan peran tokoh-tokoh khayalan dan berkolaborasi untuk merajut sebuah cerita bersama. Contohnya Final Fantasy, Ragnarok, dsb. 
  2. RTS (Real TIme Strategy) : suatu permainan komputer yang memiliki ciri khas berupa permainan perang yang tiap pemainnya memiliki suatu negara, negara tersebut di kelola dalam hal pengumpulan sumberdaya (alam, manusia, ekonomi), pengaturan strategi pasukan-pasukan tempur, diplomasi dengan negara tetanga, peningkatan ekonomi, pengembangan keyakinan, pengembangan pendidikan dari negara primitif menuju peradaban modern. Contohnya : Age of Empire, Command n Conquer, Stronghold, Warcraft, dsb.
  3. FPS (First Person Shooter) : Jenis permainan dengan tampilan pada layar pemain adalah sudut pandang tokoh karakter yang dimainkan.
  4. Action games : Permainan yang banyak adegan fisik atau kekerasan.
  5. Simulation games : Video games yang menggambarkan kehidupan seperti biasa. game ini banyak jenisnya seperti Life Simulation Games contohnya the sims dan ada juga yang mengendarai suatu kendaraan seperti flight simulator, trains simulator, bis simulator dsb.


Sumber: Tabloid PC MILD Edisi 07/05 tanggal 14 Maret 2005
http://bhe-tha.blogspot.com/2010/02/jenis-jenis-dan-perkembangan-teknologi.html