Otnielwindwalk's Blog

Just another WordPress.com weblog

Game Engine June 27, 2011

Filed under: Uncategorized — otnielwindwalk @ 12:52 pm

orang-orang mungkin sudah sering mendengar apa itu game, tapi mereka belum begitu mengetahui bagaimana game itu dibuat dan dengan apa game itu dibuat. nah kali ini saya akan membahas mengenai game engine yang akan digunakan untuk membuat game.
jadi Game Engine itu adalah perangkat lunak yang dirancang untuk membuat dan mengembangkan video game. Fungsi utama yang diberikan oleh game engine meliputi rendering untuk 2D atau 3D graphic, collision detection, sound, scripting, animasi, artificial intelligence, networking, memory management, threading dan scene graph. Game engines memberikan perangkat untuk visual development dengan tambahan komponen perangkat lunak yang dapat dipakai berulang kali. Perangkat ini pada umumnya memberikan integrated development environment yang dapat mempermudah, serta mempercepat pengembangan game.
Game engine juga sering disebut juga “Game Middleware”. Game Middleware adalah software yang didalamnya sudah terdapat elemen-elemen yang dibutuhkan oleh seorang game developer, kebanyakan dari game middleware memberikan fasilitas guna menunjang pengembangan game dengan mudah seperti graphics, sound dan Artificial intelligence.

dan ini adalah beberapa elemen yang ada di dalam game engine :
a. 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.

b. System
System sendiri 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 satu-satunya 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.

c. 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.

d. Support
Support adalah bagian yang paling sering digunakan oleh system di dalam game engine. Support sendiri berisi rumus-rumus matematika yang biasa digunakan, vector, matrix, memory manager, file loader. Merupakan dasar dari game engine dan hampir digunakan semua projek game engine.

e. 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.

f. 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.

g. The Game
Merupakan inti dari penggunaan game engine sendiri, sehingga terserah kita bagaimana mengembangkan game tersebut.

memang sebagian besar game engine telah dikomersilkan, tapi ada beberapa game engine yang gratis atau disebut juga open source. jadi tanpa harus membayar mahal untuk membeli software game engine kita sudah dapat membuat game walaupun hasilnya tidak sedsyat dengan game yg dihasilkan dari game engine yang komersil.
dan ini adalah beberapa open source game engine tersebut :

Cafu
Delta3D
Panda3D
jMonkeyEngine
Cube 2 : Sauerbraten

Sumber:
http://en.wikipedia.org/wiki/Game_engine
http://en.wikipedia.org/wiki/List_of_game_engines
http://en.wikipedia.org/wiki/Torque_Game_Engine
http://en.wikipedia.org/wiki/Unity_(game_engine)

Tag: source, open, engine, game, game engine
tidak ada komentar bagi

Panda3d Game Engine Mar 18, ’11 2:12 AM
untuk semuanya
Sebelum kita membahas tentang Panda3d Game Engine, lebih baik jia kita mengetahui apa itu game engine. Game Engine adalah adalah sebuah sistem perangkat lunak yang dirancang untuk penciptaan dan pengembangan video game. Ada banyak mesin permainan yang dirancang untuk bekerja pada video game konsol dan komputer pribadi. Fungsionalitas inti biasanya disediakan oleh mesin permainan mencakup mesin rendering untuk grafis 2D atau 3D, mesin fisika atau deteksi tabrakan, suara, script, animasi, kecerdasan buatan, jaringan, streaming, memori manajemen, threading, dukungan lokalisasi, dan grafik adegan. Proses pengembangan game sering dihemat dengan menggunakan kembali sebagian besar / mengadaptasi mesin permainan yang sama untuk membuat game yang berbeda.

sekarang saya kan membahas apa itu Panda3d Game Engine[http://www.panda3d.org]. Panda3D adalah sebuah game engine berbasis open source yang berupa framework untuk rendering grafik 3D dan juga pengembangan game menggunakan bahasa pemrograman Python dan C++. Lisensi open source dari Panda3D adalah pengembangan dari lisensi BSD. Hal ini mengakibatkan Panda3D bisa digunakan secara bebas (free), bahkan untuk proyek game komersial sekalipun.

Panda3D pertama kali dikembangkan oleh pihak Disney bekerjasama dengan Universitas Carnegie Mellon. Saat ini, Panda3D di-maintain oleh Carnegie Mellon Entertainment Technology Center. Core Engine dari Panda3D ditulis dengan menggunakan bahasa pemrograman C++, membuat performa game engine ini menjadi cepat. Meskipun nanti game yang dikembangkan menggunakan bahasa pemrograman Python, namun hasil kompilasi programnya memanfaatkan library yang ditulis dalam bahasa C++ tersebut sehingga game yang dihasilkan memiliki performa yang tinggi.

Fitur-fitur dan teknologi yang terdapat dalam Panda3D adalah sebagai berikut :

a. Shader Generation
Panda3D bisa melakukan shader rendering langsung dari core engine-nya. Misalkan untuk Maps Rendering seperti normal maps, gloss map, glow map. Atau untuk High Dynamic Range (HDR) rendering seperti tone mapping, dan bloom filter. Atau untuk Cel Shading seperti threshold lighting, dan inking.

b. 3D Audio
Untuk melakukan rendering multichannel three dimensional positional audio, Panda3D melakukan utilisasi terhadap library FMOD dari Fireflight Technologies (propietary library), Open Audio Library (OpenAL), atau Miles Sound System (MSS) dari RAD Game Tools.

c. Integration with Graphics API
Akses langsung terhadap modern Graphics API seperti OpenGL atau DirectX tersedia bagi pengguna Panda3D. Misalnya High-level shader language dari NVidia yakni NVidia Cg.

d. Powerful Debugging Tools
Untuk memudahkan debugging bagi developer, Panda3D menyediakan debugging tools yang powerful. Extreme crash-resistance, memory leaks monitoring, lebih dari 5000 assertion-checks untuk menangkap error lebih awal, dan sebagainya.

e. Performance Monitoring
Untuk memudahkan developer mengawasi performa dari game yang sedang dibuat. Misalkan untuk mengidentifikasi bottlenecks baik pada CPU ataupun GPU, tools untuk merge texture dan minimalisasi texture-switch, tools untuk process batching dan minimalisasi state-change, dan sebagainya.

f. Collision Detection
Fungsi-fungsi native langsung pada game engine untuk membantu programmer melakukan collision detection.

g. Support many kind of I/O devices
Dukungan terhadap banyak tipe alat input-output.

h. Mature and Complete System
Hal-hal yang seharusnya memang ada dalam sebuah game engine, sudah terdapat dalam Panda3D, bahkan menjadi solusi yang sudah stabil. Misalkan, tampilan GUI, networking, dan sebagainya.

Instalasi Panda3D Game Engine cukup mudah. Sudah tersedia aplikasi untuk instalasinya. Bahkan tersedia untuk sistem operasi Windows, Linux, dan juga MacOSX. Untuk Linux, tersedia dalam paket file instalasi RPM (ekstensi .rpm) untuk distro linux turunan RedHat (misalkan : Fedora), dan DEB (ekstensi .deb) untuk distro linux turunan Debian (misalkan : Ubuntu).

Bagi developer yang hendak meng-install Panda3D SDK bisa mengikuti link [http://www.panda3d.org/download.php?sdk] , dan kemudian memilih versi yang hendak di-install. Versi stabil saat ini adalah 1.6.2, dan versi yang unstable adalah 1.7.0, dan versi yang dalam pengembangan saat ini adalah 1.7.1. Disarankan memilih versi yang sudah stabil. Setelah itu bisa memilih paket file instalasi sesuai dengan sistem operasi yang digunakan. Setelah itu, hanya tinggal dijalankan saja file instalasi tersebut.

Bagi gamer (end-user) yang hendak menggunakan game yang dikembangkan menggunakan Panda3D, bisa melakukan instalasi Panda3D Runtime (lihat di link [http://www.panda3d.org/download.php?runtime]), dan pilih sesuai dengan sistem operasi yang digunakan oleh end-user tersebut. Setelah instalasi Panda3D Runtime, hanya tinggal menjalankan distribusi game yang dikembangkan dengan Panda3D tersebut.

Berikut ini adalah sebagian daftar game atau aplikasi 3D yang dikembangkan menggunakan Panda3D (dikutip dari Wikipedia) :

Disney’s Pirates of the Caribbean Online
Disney’s ToonTown
Autumn Moon Entertainment : Ghost Pirates of Vooju Island
Autumn Moon Entertainment : A Vampire Story
SimOps Studios : Code3D
MSA’s Thermal Enforcer
Little Mermaid Pinball, Aladdin Pinball, dan Pirates Pinball
Angels Fall First : Second Antarean War
7million

Dan masih banyak lagi contohnya. Aplikasi-aplikasi di atas jika dilihat merupakan aplikasi game atau simulasi 3D yang sangat kompleks. Jadi, bisa dikatakan bahwa Panda3D merupakan game engine yang powerful. Sayangnya, meskipun Panda3D bisa menggunakan bantuan Eclipse dan Netbeans sebagai IDE untuk pengembangan melalui bantuan plugins PyPE, tetapi Panda3D tidak memiliki IDE native yang khusus untuk Panda3D tersebut agar bisa membantu programmer menjadi jauh lebih cepat dan produktif dalam mengembangkan games.

SUMBER :

Home


http://en.wikipedia.org/wiki/Panda3D
http://gpwiki.org/index.php/Panda3D
http://lordjames88.multiply.com/tag/game%20engine