Sabtu, 22 April 2017

Arsitektur Game Engine

10.20 Posted by Bima prasetya adi pratama , No comments


Nama  :  Bima Prasetya Adi Pratama
Kelas   :  3IA20
Npm    :   52414176

BAB 4

Arsitektur Game Engine
     Game engine adalah sebuah sistem perangkat lunak (software) yang dirancang untuk pembuatan dan pengembangan video game. Game engine memberikan kemudahan dalam menciptakan konsep sebuah game yang akan di buat. Mulai dari sistem rendering, physics, arsitektur, suara, scripting, A.I, dan bahkan sistem networking.
     Tujuan digunakannya game engine adalah untuk mempermudah pembuatan bagianbagian tertentu dalam game, membagibagi pengembangan game menjadi modulmodul tertentu, dan memudahkan kolaborasi antar pihak.
1.   Sejarah Game Engine
     Sebelum adanya Game Engine, permainan yang biasanya ditulis sebagai entitas tunggal: game untuk Atari 2600, misalnya, harus dirancang secara down-top untuk memanfaatkan hardware layar tampilan yang disebut kernel oleh pengembang retro.
     Generasi pertama dari mesin grafis pihak ketiga atau renderers (dan pelopor untuk apa yang sekarang kita kenal sebagai mesin) didominasi oleh tiga pemain; BRender dari Argonaut Software, Renderware dari Kriteria Software Limited dan RenderMorphics ‘Realitas Lab. Istilah “Game Engine (Mesin Permainan)” muncul pada pertengahan 1990an, terutama dalam kaitannya dengan game 3D seperti penembak orang pertama (FPS). Kemudian permainan, seperti Quake III Arena dan 1998 Epic’s Unreal Games dirancang dengan pendekatan ini dalam pikiran, dengan mesin dan konten dikembangkan secara terpisah.
     Game Engine modern adalah salah satu aplikasi yang paling kompleks yang ditulis, sering menampilkan puluhan sistem berinteraksi untuk memastikan pengalaman pengguna yang terkendali. Evolusi terus mesin permainan telah menciptakan sebuah pemisahan yang kuat antara rendering, scripting, karya seni, dan desain level.
     Threading penting karena sistem multicore modern (misalnya Cell) dan tuntutan meningkat pada realisme. Threading melibatkan rendering, streaming, audio, dan fisika. Permainan Balapan yang biasanya berada di garis depan threading dengan physics machine berjalan di sebuah thread terpisah jauh sebelum subsistem inti lainnya dipindahkan, sebagian karena rendering dan tugas terkait perlu update hanya pada 3060 Hz. Sebagai contoh, di PlayStation 3, fisika berlari di Need For Speed pada 100 Hz versus Forza Motorsport 2 pada 360 Hz.
     Meskipun istilah ini pertama kali digunakan pada 1990an, ada sistem sebelumnya beberapa tahun 1980an yang juga dianggap Game Engine, seperti Sierra’s Adventure Game Interpreter (AGI) dan SCI, LucasArts SCUMM dan Freescape. Tidak seperti kebanyakan Game Engine modern, Game Engine ini tidak pernah digunakan dalam produk pihak ketiga (kecuali untuk sistem SCUMM yang dilisensikan dan digunakan oleh humongous Entertainment).
2. Tipetipe Game Engine
Game memiliki berbagai macam jenis dan ditujukan untuk berbagai kemampuan pemrograman. Berikut ini adalah beberapa tipe dari game engine.
  • Roll YourGame Engine
Game engine tipe ini lebih disukai karena selain gratis, game engine ini juga memperbolehkan para developer lebih fleksibel dalam mengitegrasikan komponen yang diinginkan untuk dibentuk sebagai game engine mereka sendiri. Namun kelemahan dari tipe game engine ini banyak engine yang dibuat dengan cara semacam ini malah menyerang balik developernya.
  • MostlyReadyGame Engine
Engine ini biasanya sudah menyediakan semuanya begitu diberikan pada developer/programmer. Semuanya termasuk conth GUI, phisycs, libraries models, texture dan lainlain. Banyak dari mereka yang sudah benarbenar 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 benarbenar terbuka lebar. Hal ini ditujukan agar tidak banyak terjadi error yang mungkin terjadi setelah sebuah game yang menggunakan engine ini dirilis dan masih memungkinkan game enginenya tersebut untuk mengoptimalkan kinerja gamenya. Dengan hal ini dapat menghemat waktu dan biaya dari para developer game.
  • PointandClick Engine
Engine ini merupakan engine yang sangat dibatasi, tetapi 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. 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 gamegame mereka secepatnya.
3. Elemen pada Game Engine
Seperti halnya perangkat lunak lainnya, pada geme engine juga terdapat beberapa elemen diantaranya :
  • 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 satusatunya 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 rumusrumus 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.

Contoh game yang menggunakan game engine
1.Bad Piggies
Bad piggies merupakan Salah satu Game paling Funny untuk dimainkan, Game ini dirilis pertama kali pada tahun 2012 lalu oleh raksasa developer game asal findlandia bernama ROVIO.
badpiggie
tapi siapa sangka game yang memiliki kerumitan sangat tinggi ini ternyata dibuat menggunakan Game Engine Bernama UNITY.
2.Dread Out
game dreadout merupakan game yang boleh dibilang sebagai salah satu game karya anak bangsa paling mendunia, kita tidak bisa menyangkalnya lagi karena game satu ini pernah diriview oleh youtubers kelas dunia bernama piwdiepie dan mendapat respon positif di toko game steam. Game dreadout pertama kali dirilis pada mei 2014 lalu oleh developer game bernama Digital Happiness, Dan game ini dibuat menggunakan engine game UNITY
3.Temple Run 2
Salah satu game mobile terbaik yang dibuat menggunakan game engine UNITY, game ini dirilis pertama kali pada January 2013 dan dikembangkan oleh developer game asal amerika bernama imangi studios
4. Dead Trigger 2
deadtrigger2
Game fps bergenre horror yang dirilis khusus perangkat mobile android,ios dan windows phone pada tahun 2013 lalu dan dikembangkan oleh developer game bernama Madfinger Games ternyata dibuat menggunakan game engine UNITY
5.Angry Birds 2
Tepat tahun 2015 lalu rovio kembali mempercayakan UNITY sebagai game engine dari game angry birds 2 yang dirilis pada tahun 2015 lalu.

DAFTAR PUSTAKA
Mokodaser, Wilsen Grivin. Game Engine.
http://mylinggih.com/game/6-game-terbaik-dibuat-menggunakan-unity/

0 komentar:

Posting Komentar