Selasa, 10 April 2012

ARSITEKTUR MESIN GAME

Game Engine

Sebuah mesin permainan adalah sebuah sistem perangkat lunak yang dirancang untuk penciptaan dan pengembangan video game. Ada banyak mesin permainan yang dirancang untuk bekerja pada konsol video games dan sistem operasi desktop seperti Microsoft Windows, Linux, dan Mac OS X. Fungsional inti biasanya disediakan oleh mesin permainan yang mencakup mesin render ("renderer") untuk 2D atau 3D grafis, physics engine dan collision detection (dan collision response), suara, script, animasi, kecerdasan buatan, jaringan, streaming, manajemen memori, threading, dan scene graph. Proses pengembangan permainan sering dihemat karena sebagian besar permainan menggunakan kembali mesin permainan yang sama untuk menciptakan permainan yang berbeda.

Game engine menyediakan tool pengembangan visual dengan tujuan komponen- komponen perangkat lunak tersebut dapat digunakan kembali. Alat-alat ini umumnya diberikan dalam sebuah lingkungan pengembangan terintegrasi untuk memungkinkan disederhanakan, perkembangan pesat game di data-cara didorong. Mesin permainan ini kadang-kadang disebut "permainan middleware" karena, seperti bisnis dengan pengertian, mereka menyediakan fleksibel dan dapat digunakan kembali platform perangkat lunak yang menyediakan semua fungsionalitas inti yang diperlukan, langsung dari kotak, untuk mengembangkan suatu aplikasi permainan sambil mengurangi biaya, kompleksitas, dan waktu-ke-pasar-semua faktor-faktor kritis yang sangat kompetitif industri permainan video.

Seperti solusi middleware lain, mesin permainan biasanya menyediakan platform abstraksi, yang memungkinkan permainan yang sama untuk dijalankan pada berbagai platform termasuk game konsol dan komputer pribadi dengan sedikit, jika ada, perubahan yang dibuat untuk permainan kode sumber. Sering kali, permainan middleware 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 seperti fisika Havok, FMOD untuk suara, atau Scaleform untuk UI dan video. Beberapa mesin permainan seperti RenderWare bahkan dirancang sebagai serangkaian komponen terhubung secara longgar middleware selektif yang dapat dikombinasikan untuk membuat mesin custom, bukan pendekatan yang lebih umum untuk memperpanjang atau menyesuaikan solusi terintegrasi yang fleksibel. Namun kemungkinan diperpanjang tercapai, hal itu tetap menjadi prioritas tinggi dalam permainan mesin karena berbagai menggunakan yang mereka diterapkan. Meskipun kekhasan nama, mesin permainan yang sering digunakan untuk jenis aplikasi interaktif real-time dengan persyaratan grafis seperti pemasaran demo, visualisasi arsitektur, latihan simulasi, dan pemodelan lingkungan.

Beberapa mesin permainan hanya menyediakan waktu-nyata, bukan kemampuan render 3D dari beragam fungsi yang diperlukan oleh permainan. Mesin ini mengandalkan permainan pengembang untuk melaksanakan seluruh fungsi ini atau merakit dari komponen middleware permainan lainnya. Mesin jenis ini umumnya disebut sebagai "mesin grafis," "mesin rendering," atau "mesin 3D" bukannya yang lebih mencakup istilah "mesin permainan." Namun, terminologi ini tidak konsisten digunakan sebagai banyak fitur lengkap mesin game 3D disebut hanya sebagai "mesin 3D." Beberapa contoh dari mesin grafis adalah: RealmForge, Truevision3D, ogre, Crystal Space, Genesis3D, Irrlicht dan JMonkey Engine. Permainan modern atau mesin grafis umumnya memberikan adegan grafik, yang merupakan berorientasi objek representasi dari dunia permainan 3D yang sering menyederhanakan desain permainan dan dapat digunakan untuk rendering lebih efisien dari dunia maya yang luas.

Abstraksi perangkat keras

Paling sering, 3D rendering mesin atau sistem dalam mesin permainan dibangun di atas sebuah API grafis seperti Direct3D atau OpenGL yang menyediakan abstraksi perangkat lunak dari GPU atau video card. Perpustakaan tingkat rendah seperti DirectX, SDL, dan OpenAL juga umum digunakan dalam permainan ketika mereka menyediakan akses independen hardware-hardware komputer lain seperti perangkat input (mouse, keyboard, dan joystick), kartu jaringan, dan kartu suara. Sebelum hardware-accelerated 3D grafis, renderers perangkat lunak telah digunakan. Software rendering masih digunakan di beberapa model tools atau untuk yang masih diberikan gambar bila akurasi visual dinilai lebih real-time performance (frame per detik) atau ketika perangkat keras komputer tidak memenuhi persyaratan seperti dukungan shader atau, dalam kasus Windows Vista, dukungan untuk Direct3D 10.

Dengan munculnya fisika akselerasi perangkat keras pengolahan, berbagai fisika API seperti PAL dan perluasan fisika COLLADA (format persimpangan 3D aset) menjadi tersedia untuk menyediakan abstraksi perangkat lunak Fisika unit pengolahan penyedia middleware yang berbeda platform dan konsol.

Sejarah

Sebelum mesin permainan, permainan yang biasanya ditulis sebagai entitas tunggal: sebuah game untuk Atari 2600, misalnya, harus dirancang dari bawah ke atas untuk membuat yang paling optimal penggunaan hardware layar tampilan inti ini rutin saat ini disebut sebagai retro pengembang kernel. Platform lain memiliki lebih banyak kelonggaran, tapi bahkan ketika layar bukan masalah, kendala memori biasanya menyabotase upaya untuk menciptakan data-desain yang berat memerlukan sebuah mesin. Bahkan pada platform lebih akomodatif, sangat kecil dapat digunakan kembali antara permainan. Kemajuan pesat dari hardware arcade pendarahan tepi pasar berarti bahwa sebagian besar kode itu harus dibuang setelah itu pula, sebagai generasi kemudian permainan akan menggunakan permainan yang sama sekali berbeda desain yang memanfaatkan sumber daya tambahan. Jadi desain paling permainan di tahun 1980 dirancang melalui kode ruleset keras dengan sejumlah kecil tingkat dan data grafis.
Generasi pertama dari mesin grafis pihak ketiga atau renderers (dan awal dari apa yang sekarang kita kenal sebagai mesin) didominasi oleh tiga pemain; BRender dari Argonaut Software, Software Renderware dari Kriteria Limited dan RenderMorphics 'Reality Lab. Realitas Lab adalah tercepat dari tiga dan yang pertama akan diambil alih dalam suatu langkah agresif oleh Microsoft. Tim yang RenderMorphics Servan Keondjian, Kate Seekings dan Doug Rabson kemudian bergabung dengan proyek Microsoft yang berubah Realita Lab ke Direct3D sebelum Keondjian dan Rabson kiri untuk memulai perusahaan middleware lain Qube Software. Renderware akhirnya dibeli oleh EA tetapi dikesampingkan oleh permainan raksasa.

Istilah "mesin permainan" muncul pada pertengahan 1990-an, terutama dalam kaitannya dengan game 3D seperti orang pertama shooters (FPS). (Lihat juga: pertama-orang jujur mesin). Begitulah popularitas id Software's Doom dan Quake permainan yang, alih-alih bekerja dari awal, pengembang lain berlisensi bagian inti dari perangkat lunak dan grafis yang dirancang mereka sendiri, karakter, dan tingkat-senjata "permainan isi" atau "permainan aset. " Pemisahan permainan-aturan tertentu dan data dari konsep-konsep dasar seperti permainan tabrakan dan entitas berarti bahwa tim bisa tumbuh dan mengkhususkan.

Kemudian permainan, seperti Quake III Arena dan Epic Game Unreal tahun 1998 dirancang dengan pendekatan ini dalam pikiran, dengan mesin dan konten dikembangkan secara terpisah. Praktek lisensi teknologi tersebut telah terbukti menjadi aliran pendapatan tambahan yang berguna untuk beberapa pengembang game, sebagai lisensi tunggal untuk high-end mesin permainan komersial dapat berkisar dari US $ 10.000 hingga jutaan dolar, dan jumlah pemegang lisensi dapat mencapai beberapa lusin perusahaan (seperti terlihat dengan Unreal Engine). Setidaknya, mesin dapat digunakan kembali membuat sekuel permainan berkembang lebih cepat dan lebih mudah, yang merupakan keuntungan berharga dalam persaingan industri video game.

Mesin permainan modern adalah beberapa aplikasi yang paling kompleks yang ditulis, sering menampilkan puluhan sistem tersetel berinteraksi untuk memastikan pengalaman pengguna yang dikontrol dengan tepat. Evolusi yang terus mesin permainan telah menciptakan pemisahan yang kuat antara rendering, scripting, karya seni, dan desain tingkat. Sekarang umum (seperti tahun 2003), misalnya, untuk permainan khas tim pengembangan untuk memiliki beberapa kali lebih banyak seniman sebagai programmer sebenarnya.

First-person shooter games tetap dominan pengguna pihak ketiga mesin permainan, tetapi mereka sekarang juga digunakan dalam genre lain. Sebagai contoh, Morrowind RPG dan MMORPG dari Dark Age Camelot didasarkan pada mesin Gamebryo, dan MMORPG Lineage II didasarkan pada Unreal Engine. Permainan mesin digunakan untuk permainan yang awalnya dikembangkan untuk konsol rumah juga; misalnya, mesin RenderWare digunakan di Grand Theft Auto dan Burnout waralaba.

Threading adalah mengambil lebih penting karena modern sistem multi-core (misalnya Sony's Cell) dan meningkatnya tuntutan dalam realisme. Khas benang melibatkan rendering, streaming, audio, dan fisika. Balapan permainan sudah biasanya berada di garis depan fisika threading dengan mesin menyala dalam thread terpisah jauh sebelum inti lainnya sub-sistem yang bergerak, rahantara lain karena rendering dan tugas-tugas yang terkait hanya membutuhkan update pada 30-60 Hz. Sebagai contoh, Need For Speed di Playstation berlari dengan fisika pada 100 Hz dibandingkan dengan Forza Motorsport 2 berjalan dengan fisika di 360 Hz.

Meskipun istilah yang digunakan pertama kali pada 1990-an, ada beberapa sistem sebelumnya pada tahun 1980 yang juga dianggap sebagai mesin game, seperti Sierra's AGI dan sistem SCI, LucasArts 'sistem dan Insentif SCUMM Software's Freescape mesin.
Namun, tidak seperti mesin permainan modern, mesin permainan ini tidak pernah digunakan dalam produk-produk pihak ketiga (kecuali untuk sistem yang SCUMM ini dilisensikan dan digunakan oleh Humongous Entertainment).

Trend terakhir

Sebagai teknologi mesin permainan matang dan menjadi lebih user-friendly, aplikasi mesin permainan telah diperluas dalam ruang lingkup, dan kini digunakan untuk permainan serius: visualisasi, pelatihan, kesehatan, dan aplikasi simulasi militer. [6] Untuk memfasilitasi aksesibilitas, platform perangkat keras baru kini sedang ditargetkan oleh mesin permainan, termasuk telepon selular (misalnya iPhone) dan web browser (misalnya Shockwave, Flash, Silverlight, Unity Web Player, O3D).

Selain itu, lebih banyak mesin permainan sedang dibangun atas bahasa tingkat tinggi seperti Java dan C # /. NET (misalnya TorqueX, Blade3D, dan Visual3D.NET) atau Python (Panda3D). Karena kebanyakan game 3D kaya sekarang kebanyakan GPU-terbatas (yaitu dibatasi oleh kekuatan kartu grafis), potensi slowdowns bahasa tingkat tinggi menjadi diabaikan, sementara produktivitas keuntungan yang ditawarkan oleh bahasa-bahasa ini bekerja untuk mesin permainan pengembang 'manfaat. [8] [9] tren baru-baru ini didorong oleh perusahaan-perusahaan seperti Apple Inc dan Microsoft untuk mendukung pengembangan permainan Indie lebih banyak platform, seperti iPhone dan Xbox360 menggunakan Java atau. NET Framework and OpenGL / OpenAL dan XNA untuk grafis dan audio rendering. Hal ini menjadi lebih mudah dan lebih murah daripada sebelumnya untuk mengembangkan mesin-mesin permainan untuk platform yang mendukung kerangka kerja dikelola.

Middleware

Beberapa perusahaan sekarang mengkhususkan diri dalam pengembangan software suite yang dikenal sebagai "middleware." Middleware pengembang usaha untuk "pra-menciptakan roda" dengan mengembangkan perangkat lunak kuat suite yang mencakup banyak unsur permainan pengembang mungkin perlu untuk membangun sebuah permainan. Sebagian besar program middleware menyediakan fasilitas yang mempermudah pembangunan, seperti grafik, suara, fisika dan AI fungsi. Gamebryo dan RenderWare banyak digunakan adalah seperti program middleware.


Beberapa middleware hanya melakukan satu hal, tetapi mereka melakukannya dengan lebih meyakinkan atau lebih efisien daripada mesin tujuan umum. Sebagai contoh, SpeedTree digunakan untuk menjadikan pohon-pohon dan vegetasi realistis dalam peran-playing game The Elder Scrolls IV: Oblivion.

Empat paling banyak digunakan middleware paket [13] yang menyediakan fungsionalitas subsistem meliputi RAD Game Tools 'Bink, api FMOD, Havok, dan Scaleform GFX. RAD Game Tools untuk mengembangkan Bink video dasar rendering, bersama dengan Miles audio, dan Nenek render 3D. Api FMOD adalah biaya rendah kuat dan toolset perpustakaan audio. Havok menyediakan sistem simulasi fisika yang kuat, bersama dengan paket solusi animasi dan perilaku. GFX Scaleform menyediakan kinerja tinggi Flash UI, bersama dengan playback video berkualitas tinggi solusi, dan Input Method Editor (IME) add-on untuk dalam game dukungan chatting Asia.

Beberapa middleware berisi kode sumber penuh, yang lain hanya menyediakan API acuan bagi biner terkompilasi perpustakaan. Beberapa program dapat middleware berlisensi cara baik, biasanya untuk biaya yang lebih tinggi penuh kode sumber.

MMOG Middleware

Middleware untuk massively-multiplayer online game ini jauh lebih kompleks daripada single-player video game. Namun, peningkatan popularitas MMOGs adalah pengembangan memacu middleware seperti paket. Beberapa solusi terkemuka, berdasarkan penjualan, termasuk:
• Unreal Engine 3 (klien-only)
• CryEngine2 (klien-only)
• RealmCrafter
• Gamebryo (klien-only)
• T (permainan mesin) (klien-only, tapi dengan solusi server sebagai 'Mesias')
• AbyssalEngine
• Multiverse Network
• Bigworld Teknologi
• HeroEngine
• Monumental Games
• Medusa Engine dan SDK (DarkSpace) (Free klien dan sumber)
• Keluar Games Neutron
• Project Darkstar (Open Source)
• DX Studio (klien-only)
• The Oktaf Engine (PS3 & Tekken 6 AC) (klien-only)

Mesin game FPS

Sebuah terkenal bagian dari mesin game 3D pertama-orang jujur (FPS) permainan mesin. Pengembangan inovatif dalam hal kualitas visual dilakukan dalam game FPS pada skala manusia. Sementara penerbangan dan mengemudi simulator dan real-time strategy (RTS) permainan semakin memberikan realisme dalam skala besar, pertama-orang penembak berada di garis depan komputer grafis yang lebih kecil, lebih manusiawi sisik.

Perkembangan FPD mesin grafis yang muncul dalam permainan dapat ditandai dengan peningkatan teknologi yang mantap, dengan beberapa terobosan. Usaha mendefinisikan generasi yang berbeda menyebabkan sewenang-wenang dari apa yang merupakan pilihan yang sangat versi modifikasi dari sebuah 'mesin tua' dan apa yang merupakan merek mesin baru.

Klasifikasi adalah mesin permainan rumit sebagai perpaduan teknologi lama dan baru. Fitur dianggap maju dalam permainan baru satu tahun, menjadi standar yang diharapkan tahun berikutnya. Permainan dengan campuran generasi tua dan fitur baru adalah norma. Sebagai contoh Jurassic Park: pelanggar (1998) memperkenalkan fisika ke game FPS, tapi tidak menjadi umum hingga sekitar 2002. Merah Fraksi (2001) menampilkan dpt dirusak dinding dan tanah, sesuatu yang masih belum umum di mesin tahun kemudian (misalnya di Unreal Tournament 2004 terdapat masih ada benda yg dpt dirusak). Battlezone (1998) dan Battlezone II: Combat Commander (1999) menambahkan berbasis kendaraan tempur ke campuran FPS biasa, yang tidak mencapai arus utama sampai nanti. Suku 2, Battlefield 1942, Halo: Combat Evolved dan Unreal Tournament 2004 sepenuhnya menyadari potensi untuk kendaraan-pertempuran dan orang jujur pertama integrasi.




Sumber :
http://www.google.co.id/url?sa=t&rct=j&q=arsitektur%20mesin%20game&source=web&cd=10&ved=0CGgQFjAJ&url=http%3A%2F%2Fgameprogramming.blog.ittelkom.ac.id%2Fblog%2Ffiles%2F2009%2F09%2F113071094-game-engine-n-tools-trans.docx&ei=2UaET6m6CYP5rQeM8sG-Bg&usg=AFQjCNH7EnlGc3mr9I3eU1VDyRD1K97jNg

Tidak ada komentar:

Posting Komentar