Nama : Bismantaka Prizna
NPM : 52414203
Kelas : 3IA22
Mata Kuliah : Pengantar Teknologi Game #
Nama Dosen : Rifki Amalia
Tugas : Penulisan 3
NPM : 52414203
Kelas : 3IA22
Mata Kuliah : Pengantar Teknologi Game #
Nama Dosen : Rifki Amalia
Tugas : Penulisan 3
Arsitektur Game Engine
Game
Engine adalah system perangkat lunak yang dirancang untuk menciptakan dan
pengembangan video game. Ada banyak mesin permainan yang dirancang untuk
bekerja pada konsol permainan video dan sistem operasi desktop seperti
Microsoft Windows, Linux, dan Mac OS X. fungsionalitas inti biasanya
disediakan oleh mesin permainan mencakup mesin render ( “renderer”) untuk 2D
atau 3D grafis, mesin fisika atau tabrakan (dan tanggapan tabrakan), suara,
script, animasi, kecerdasan buatan, jaringan, streaming, manajemen memori,
threading, dukungan lokalisasi, dan adegan grafik. Proses pengembangan
permainan sering dihemat oleh sebagian besar menggunakan kembali mesin
permainan yang sama untuk menciptakan permainan yang berbeda.
Engine
bukanlah executable program, artinya engine tidak bisa dijalankan sebagai
program yang berdiri sendiri. Diperlukan sebuah program utama sebagai entry
point atau titik awal jalannya program. Pada C++, entry point-nya adalah fungsi
‘main().’ Biasanya program utama ini relatif pendek. Game engine adalah program
yang ‘memotori’ jalannya suatu program game. Kalau game diilustrasikan sebagai
‘musik’ yang keluar dari mp3 player, maka engine adalah ‘mp3 player’ dan
program utama adalah ‘data mp3’ yang dimasukkan ke dalam mp3 player tersebut.
Dengan adanya engine, waktu, tenaga dan biaya yang dibutuhkan untuk membuat
game software menjadi berkurang secara signifikan.
Beberapa
game dengan jenis dan gameplay yang hampir sama bisa dibuat dengan sedikit
usaha bila terlebih dulu dibuat engine-nya. Setelah engine diselesaikan,
programmer hanya perlu menambahkan program utama, memakai resources (objek 3D,
musik, efek suara) yang baru, dan, jika benar-benar dibutuhkan, sedikit
memodifikasi engine sesuai kebutuhan spesifk dari game yang bersangkutan.
Program game engine seluruhnya berorientasi objek. Dia lebih bersifat reaktif
daripada prosedural. Sulit untuk menggambarkan engine secara keseluruhan dalam
flow-chart, karena alur program bisa diatur sesuai dengan keinginan pemakai
engine, yaitu game programmer.
Tujuan Penggunaan Game Engine
Game
engine menyediakan seperangkat alat pengembangan visual di samping komponen
software digunakan kembali. Alat-alat ini umumnya diberikan dalam suatu
lingkungan pengembangan terpadu untuk mengaktifkan disederhanakan, perkembangan
pesat dari permainan dengan cara data-driven. Mesin pengembang Game upaya untuk
“pra-menciptakan roda” dengan mengembangkan suite perangkat lunak kuat yang
mencakup banyak unsur pengembang game mungkin perlu untuk membangun sebuah
permainan.
Kebanyakan
mesin permainan suite menyediakan fasilitas yang memudahkan pengembangan,
seperti grafik, suara, fisika dan fungsi AI. Mesin permainan ini kadang-kadang
disebut “middleware” karena, seperti dengan istilah naluri bisnis, mereka
menyediakan sebuah platform perangkat lunak yang fleksibel dan dapat digunakan
kembali yang menyediakan semua fungsionalitas inti yang dibutuhkan, langsung
dari kotak, untuk mengembangkan sebuah aplikasi permainan sambil mengurangi
biaya , kompleksitas, dan waktu-ke-pasar-semua faktor penting dalam industri
video game yang sangat kompetitif. Gamebryo dan RenderWare adalah seperti
program middleware banyak digunakan.
Seperti
solusi middleware lainnya, mesin permainan biasanya menyediakan abstraksi
platform, yang memungkinkan permainan yang sama untuk dijalankan pada berbagai
platform termasuk game konsol dan komputer pribadi dengan sedikit, jika ada,
perubahan yang dibuat ke kode sumber permainan. Seringkali, mesin permainan
dirancang dengan arsitektur berbasis komponen yang memungkinkan sistem tertentu
dalam mesin yang akan diganti atau diperpanjang dengan lebih khusus (dan sering
kali lebih mahal) komponen middleware game seperti Havok untuk fisika, Miles
Sound System untuk suara, atau Bink untuk Video.
Beberapa
mesin permainan seperti RenderWare bahkan dirancang sebagai rangkaian
dihubungkan secara longgar komponen middleware permainan yang bisa selektif
dikombinasikan untuk membuat mesin khusus, bukan pendekatan yang lebih umum
dari memperluas atau menyesuaikan solusi terintegrasi yang fleksibel. Namun
diperpanjang tercapai, hal itu tetap menjadi prioritas tinggi dalam mesin game
karena berbagai kegunaan yang mereka diterapkan. Meskipun kekhususan nama,
mesin permainan yang sering digunakan untuk jenis lain aplikasi interaktif
dengan kebutuhan grafis real-time seperti demo pemasaran, visualisasi
arsitektur, simulasi pelatihan, dan lingkungan pemodelan.
Beberapa
mesin permainan hanya menyediakan 3D real-time rendering kemampuan bukan
berbagai fungsi yang dibutuhkan oleh game. Mesin ini mengandalkan pengembang
game untuk melaksanakan seluruh fungsi ini atau merakit dari komponen
middleware permainan lainnya. Jenis mesin umumnya disebut sebagai “mesin
grafis,” “mesin render,” atau “mesin 3D” bukan meliputi lebih istilah “mesin
permainan.” Terminologi ini tidak konsisten banyak digunakan sebagai fitur
lengkap mesin permainan 3D disebut hanya sebagai “mesin 3D.”
Beberapa
contoh mesin grafis adalah: Crystal Space, Genesis3D, Irrlicht, JMonkey Engine,
OGRE, RealmForge, Truevision3D, dan Visi Engine. Modern permainan atau mesin
grafis umumnya memberikan grafik adegan, yang merupakan representasi
berorientasi objek dari dunia permainan 3D yang sering menyederhanakan desain
game dan dapat digunakan untuk rendering yang lebih efisien dari dunia maya
yang luas.
Tipe Game Engine
Game
engine biasanya datang dengan berbagai macam jenis dan ditujukan untuk berbagai
kemampuan pemrograman. Ada 3 tipe game engine yang ada saat ini, diantaranya :
·
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 Engine.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.
Beberapa
Contoh Game Engine Open Source :
·
3D Game Studio
·
Delta 3D
·
Unreal Engine
·
Panda 3D
·
Torque
·
Quake Engine
SUMBER :
https://raflyjuninton93.wordpress.com/2015/05/06/arsitektur-game-engine/
Tidak ada komentar:
Posting Komentar