• Tidak ada hasil yang ditemukan

BAB II. TINJAUAN PUSTAKA

2.7. Unreal Engine

Dalam pengembangan tugas akhir ini, penulis akan menggunakan game engine yang tidak berbayar yaitu Unreal Engine 3. Teknologi Unreal merupakan sebuah teknologi yang dibangun oleh perusahaan game besar Epic Games dengan nama Unreal Engine. Unreal Engine merupakan sebuah engine yang biasanya digunakan untuk membuat suatu game. Game yang sudah dikembangkan dengan game ini seperti: Unreal Tournament, Sanctum, Hazard, AFF: Planetstorm, Dungeon Defense, Whizzle, Bounty Arms, The Ball, Prometheus, dan sebagainya.

Unreal Engine merupakan game engine dengan popularitas kedua setelah game engine tiga dimensi serupa yaitu Source Engine. Terdapat beberapa hal yang dipertimbangkan ketika seseorang, instansi atau perusahaan memilih game engine

yang akan digunakan sebagai game engine untuk mengembangkan suatu permainan atau visualisasi. Beberapa diantaranya dipilih berdasarkan lisensinya,

16

berbayar atau tidak. Unreal Engine merupakan salah satu game engine yang lisensinya adalah proprietary, namun untuk Unreal Development Kit lisensinya adalah tidak berbayar.

Tidak semua game engine dapat menangani grafik dua dimensi sekaligus tiga dimensi. Terdapat game engine yang hanya menangani grafik dua dimensi, hanya menangani tiga dimensi, atau dapat menangani keduanya. Unreal Engine merupakan game engine yang khusus menangani grafik tiga dimensi. Dari beberapa game engine yang sama-sama menangani grafik tiga dimensi, Unreal Engine dapat menangani lebih banya platform (Fritsch, 2004). Beberapa diantaranya yaitu Windows, Linux, MacOS X, iOS, Dreamcast, PS2, PS3, Xbox, Xbox 360 yang lebih banyak daripada game engine lain seperti Source Engine, GameMaker, Unigine, id Tech 3 Engine, id Tech 4 Engine, Blender Game Engine, NeoEngine, Unity, Quake Engine, C4 Engine atau game engine lain. Selain itu, Unreal Engine dapat menangani grafik tiga dimensi dengan dukungan seperti OpenGL, DirectX 9, DirectX10 dan DirectX 11. Game engine lain terkadang hanya dapat menangani salah satu saja.

Dengan membandingkan karakteristik tiga game engine yaitu Quest3D, Blender, Unreal Engine dan Unity (Petridis, 2009), kita dapat mengamati pengamatan berikut. Unreal 3 performanya melebihi semua game engine lainnya termasuk dalam perbandingan tersebut, dalam hal audio, visual, fungsional, dan penyusunan. Unreal Engine ini dapat digunakan sebagai patokan untuk membandingkan game engine yang berbeda dalam permainan serius.Namun, kelemahan utama dari game engine ini adalah aksesibilitas terbatas atau proprietary untuk Unreal Engine 3, konsekuensi biaya tinggi yang terkait dengan

engine.Untuk itu Unreal Development Kit yang lisensinya tidak berbayar dapat digunakan untuk menekan biaya yang tinggi tersebut.

CryEngine, id Tech 3 Engine, id Tech 4 Engine, Jupiter Extended (EX), Source Engine, Unreal Engine 2 sangat cocok untuk mengembangkan lingkungan virtual non-game. Keuntungan utama dari Unreal Engine 2 adalah bahwa game engine itu telah tersedia selama beberapa tahun sehingga ada sejumlah besar tutorial dan artikel tentang game engine tersebut (Smith, 2008). Kekurangan utama adalah bahwa sekarang ada game engine yang akan membantu untuk meningkatkan realism lingkungan virtual yang dikembangkan. Unreal Engine 3 merupakan versi terbaru dari game engine ini yang memuat fitur dan fungsional yang lebih baik daripada Unreal Engine 2.

Sebuah prototype dari instrumentasi di Unreal Engine yang digunakan oleh Epic Games telah dibuktikan melalui eksperimen dengan Unreal Tournament 2004 untuk secara efektif membantu dalam anilisis konten, dan menunjukkan hasil yang menjanjikan untuk masa depan (Bullen, 2006).

Unreal Engine memiliki kerangka kerja (framework) lengkap untuk pengembangan professional.Sistem inti engine ini menggunakan bahasa pemrograman C++, tetapi untuk pengembangannya digunakan bahasa pemrograman Java. Seperti kebanyakan game engine lainnya, Unreal Engine dapat mengolah beberapa data seperti obyek tiga dimensi, suara, teksture, dan lain sebagainya. Unreal Engine memiliki aliran data yang mengalir dalam engine yang diilustrasikan pada gambar 2.2 berikut ini.

18

Gambar 2.2.Aliran Data Pada Unreal Engine (Busby, 2004)

Unreal Engine memiliki beberapa komponen yang dapat berdiri sendiri-sendiri, namun tetap berada dalam kesatuan yang terpusat pada “core-engine” (Bubsy, 2004). Berikut adalah komponen-komponen dari Unreal Engine:

a. Graphics Engine. Modul ini mengatur apa yang akan ditampilkan ke layar pengguna. Seperti benda apa yang harus didepan. Menampilkan material sesuai yang diatur sebelumnya. Hingga mengatur pencahayaan dari lingkungan virtual yang dibuat.

b. Sound Engine. Modul ini mengatur efek suara dari lingkungan virtual.

c. Physics Engine. Modul ini digunakan untuk mengatur benturan antar dua obyek yang terjadi.

d. Input Manager. Modul ini digunakan untuk mengatur input, seperti tombol ditekan, tombol dilepas.

e. Network Infrastructure. Epic Games dengan gamenya Unreal Tournament telah berhasil mengembangkan network gaming yang efisien. Fitur network gaming yang efisien tersebut juga tersedia di Unreal Engine.

f. Unreal Script Interpreter. Salah satu bahasa scripting yang dapat dilakukan oleh engine, tanpa menyentuh source code asli. Script ini mirip dengan bahasa pemrograman terkenal lain seperti Java dan C++. Bahkan bahasa ini lebih mudah dari 2 bahasa pemrograman yang telah disebutkan sebelumnya. Unreal Script Interpreter adalah yang mengubah script yang dibuat oelh pengembang menjadi suatu yang bisa diproses oleh engine.

Unreal Development Kit menyediakan alat untuk membuat dunia virtual yaitu Unreal Editor.Editor ini juga bisa melakukan import dari perangkat lunak pembuat obyek tiga dimensi yang sudah banyak digunakan seperti 3D Studio Max dan Maya. Antarmuka pengguna menyerupai perangkat lunak pembuat obyek tiga dimensi seperti 3D Studio Max yang sudah dilihat pada gambar di bawah ini.

Gambar 2.3. Antarmuka Pengguna Unreal Editor, Editor Dari Unreal Development Kit

20

Unreal Development Kit juga menyediakan Unreal Fronted (UFE). UFE adalah sebuah alat yang menyediakan seragam untuk melakukan banyak tugas-tugas umum dalam ekosistem Unreal. Dimana pada umumnya mencakupi:

• Meluncurkan permainan

• Memulai server

• Menambahkan klien ke server untuk server lokal

• Menjalankan editor

• Kompilasi kode script

• Cooking data

Tanpa UFE banyak dari tugas-tugas ini akan membutuhkan file batch terpisah yang tidak perlu dan akan meningkatkan kompleksitas alur kerja sekaligus menciptakan sebuah mimpi buruk.

Dokumen terkait