apa itu game engine ? game engine (bahasa Indonesia: mesin permainan) adalah
sebuah sistem software yang dirancang untuk pembuatan dan pengembangan suatu
video game. Ada banyak sekali game engine yang dirancang untuk bekerja pada
beberapa konsol video game dan sistem operasi desktop seperti Microsoft
Windows, Linux dan Mac OS X. Fungsi utama yang secara khusus disediakan oleh
game engine meliputi mesin render (renderer) untuk grafik 2D atau 3D, mesin
fisika, deteksi tabrakan (dan tanggapan tabrakan), suara, script, animasi, kecerdasan
buatan, jaringan, streaming, manajemen momori, threading, dukungan lokalisasi
dan layar grafik. Proses pembuatan game seringkali dihemat oleh sebagian besar
developer dengan menggunakan kembali game engine yang sama untuk membuat game
yang berbeda. adapun tipe2 game engine yang dibuat pada saat ini berdasarkan keunggulan dan kelemahan masing yaitu :
- 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.
- 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.
- Point-and-click engines Engine ini merupakan engine yang sangat dibatasi, tapi 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, kamu sudah bisa merilis game point-and-click yang kamu banget. 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 game-game mereka secepatnya.
Pada genre Game Arcade saya menggunakan perbandingan Game
Engine sebagai berikut :
3D
engine dan scene graph :
Di dalam grafika komputer, 3D merupakan bentuk grafik yang
menggunakan representasi data geometri tiga dimensi. Grafik 3D ini tersimpan
didalam komputer untuk keperluan kalkulasi atau rendering gambar 3D. Pada 3D,
engine bukanlah exutable program, artinya engine tidak bisa dijalankan sebagai
program yang berdiri sendiri.
3D engine adalah sistem perangkat lunak yang dibuat dan
dirancang untuk menciptakan dan mengembangkan gambar 3D, fungsionalitas inti
biasanya disediakan oleh mesin permainan mencakup mesin render (renderer) untuk
2D/3D grafis.Berbeda dengan dukungan grafik 2D yang sudah built in, dukungan
Java terhadap grafik 3D diletakkan ke dalam API terpisah, yakni Java3D. Java3D
merupakan API 3D berbasis scene graph di platform Java, dimana scene graph merupakan
sebuah pohon yang berisi hierarki data scene. Di dalam api Java3D didefinisikan
sejumlah kelas dan interface yang menyediakan beragam operasi grafik 3D.
Konsep scene graph merupakan inti dari Java3D. Sebuah scene
graph merupakan g rafik yang mempresentasikan geometri, material, dan
pencahayaan. Scene graph dimulai dari root dengan sebuah Virtual Universe dan
mencakup transformasi serta geometri untuk mendefinisikan objek di dunia maya.
Secara garis besar, ada tiga tahap fundamental yang diperlukan untuk
menghasilkan objek 3D, yaitu:
- Menciptakan objek Canvas3D
- Menciptakan sebuah scene graph
- Menghubungkan objek Canvas3D ke objek BranchGroup yang
menunjuk root dari scene graph .
Ogre 3D
Objected-Oriented Graphics Rendering Engine atau bisa
disingkat dengan OGRE merupakan engine yang object oriented & flexible 3D
rendering pada game engine yang ditulis dengan menggunakan bahasa C++ serta
didesain agar mampu men-developer dengan 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 objek yang lebih tinggi.
OGRE hanya digunakan untuk me-render. Dengan kata lain,
fitur OGRE hanya khusus menangani vector & matOix classes, memory handling,
dan lain lain. Ini bukan lah salah satu dari semua solusi dalam istilah game
development/simulasi. OGRE tidak menyediakan audio/physics support.
Walaupun penjelasan diatas bisa dikatakan sebagai kelemahan
dari OGRE itu sendiri, akan tetapi semua itu sebanding dengan kemampuan grafis
yang ada pada game engine tersebut. Kelebihan yang paling menonjol pada 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 mendupport OIS, SDL,
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.
Fitur-fitur pada OGRE:
- Desain yang object-oriented dengan menggunakan plugin untuk mempermudah memasukkan fitur lainnya
- Engine berbasis scane graph dengan bantuan untuk sebuah varietas yang luas, octree, BSP, & paging landscape scene manager
- Multi-platform dengan dukungan OpenGL & Direct 3D. Bisa me-render konten yang sama di beda platform tanpa harus mempunyai content creator. dapat diakses pada platform Linux, Mac OS, dan semua versi Windows
- OGRE mendukung program vertex dan fragment selama ditulis dengan GLSH, HLSL, Cg, dan assembler
- The landscape scene manager untuk progressive LOD, yang mana bisa dibuat secara otomatis dan manual
- Engine annimasi yang men-support penuh untuk multiple hardware
No comments:
Post a Comment