Minggu, 10 April 2011

Pengertian dan latar belakang OGRE


Sebelum kita membahas tentang OGRE, kita harus mengetahui dahulu apa sih game engine itu?

Game engine 
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 ("renderer") untuk grafis 2D atau 3D, mesin fisika atau deteksi tabrakan (dan tanggapan tabrakan), suara, script, animasi, kecerdasan buatan, jaringan, streaming, memori manajemen, threading, dukungan lokalisasi, dan grafik adegan. Proses pengembangan game sering dihemat oleh di menggunakan kembali sebagian besar / mengadaptasi mesin permainan yang sama untuk menciptakan permainan yang berbeda.

Contoh dari game engine
1. OGRE
2. Alice
3. D3D studio max

Disini penulis akan membahas tentang OGRE yag digunakan sebagai game engine.


Apa itu OGRE???
OGRE (Object-Oriented Graphics Rendering Engine) adalah sebuah mesin, adegan-berorientasi 3D fleksibel ditulis dalam C + + dirancang untuk membuatnya lebih mudah dan lebih intuitif bagi pengembang untuk menghasilkan aplikasi menggunakan grafis 3D hardware-accelerated. The abstrak perpustakaan kelas semua rincian penggunaan sistem perpustakaan yang mendasari seperti Direct3D dan OpenGL dan menyediakan sebuah antarmuka berbasis obyek kelas dunia dan intuitif lainnya.

Fitur OGRE

* Sederhana, mudah digunakan OO antarmuka yang dirancang untuk meminimalkan upaya yang diperlukan untuk membuat adegan 3D, dan menjadi independen dari 3D Direct3D/OpenGL yaitu implementasi.
* Contoh Extensible membuat kerangka mendapatkan aplikasi Anda berjalan cepat dan sederhana
* Persyaratan umum seperti manajemen membuat negara, pemusnahan spasial, berhubungan dengan transparansi dilakukan untuk anda secara otomatis menghemat waktu Anda yang berharga
* Bersihkan, desain rapi dan dokumentasi penuh dari semua kelas mesin
* Terbukti, mesin stabil digunakan dalam beberapa produk komersial

Platform & 3D dukungan API

* Direct3D dan dukungan OpenGL
* Windows (semua versi besar), Linux dan Mac OSX mendukung
* Membangun pada Visual C + + dan Code:: Blocks pada Windows
* Membangun di 3 gcc + di Linux / Mac OSX (menggunakan Xcode)

Material / Shader support

* Bahan bahasa deklarasi Powerfull memungkinkan Anda untuk mempertahankan aset material luar kode Anda
* Mendukung vertex dan program fragmen (shader), kedua program tingkat rendah ditulis dalam assembler, dan program-program tingkat tinggi ditulis dalam Cg, HLSL DirectX9, atau GLSL dan menyediakan dukungan otomatis untuk banyak parameter konstan seperti biasa terikat matriks pandangan dunia, informasi negara cahaya , benda antariksa posisi mata dll
* Mendukung lengkap fungsi operasi tetap seperti multitexture dan blending multipass, tekstur mengkoordinasikan generasi dan modifikasi, warna independen dan operasi alpha untuk perangkat keras non-programmable atau bahan biaya yang lebih rendah
efek lulus * Multiple, dengan iterasi lulus jika diperlukan untuk lampu 'n' terdekat
* Dukungan untuk teknik beberapa materi berarti Anda dapat merancang efek alternatif untuk berbagai kartu dan OGRE secara otomatis menggunakan yang terbaik didukung
* Material dukungan LOD; materi anda dapat mengurangi biaya sebagai objek dengan menggunakan mereka mendapatkan lebih jauh
* Load tekstur dari PNG, JPEG, TGA, BMP atau file DDS, termasuk format yang tidak biasa seperti 1D tekstur, tekstur volumetrik, cubemaps dan tekstur dikompresi (DXT/S3TC)
* Tekstur dapat disediakan dan diperbarui secara realtime oleh plugin, misalnya video feed
* Mudah digunakan mendukung texturing proyektif

Jerat

* Fleksibel format data mesh diterima, pemisahan konsep vertex buffer, buffer indeks, deklarasi dan mapping vertex buffer
* Biquadric Bezier patch untuk permukaan lengkung
* Progressive jerat (LOD), manual atau secara otomatis
* Batcher Statis geometri

Animasi

* Mendukung animasi canggih rangka
o campuran animasi berganda dengan bobot variabel
o variabel / tulang menguliti beberapa berat
o software dan jaringan pipa menguliti hardware-accelerated dengan berbagi buffer cerdas
manual o tulang kontrol
o interpolasi mode Dikonfigurasi, akurasi vs pengorbanan kecepatan
* Bentuk animasi dukungan Fleksibel
o Morph animasi untuk aplikasi warisan di mana Anda ingin melakukan campuran linear sederhana antara bentuk foto
o Pose animasi untuk animasi bentuk modern, memungkinkan Anda untuk campuran berbagai pose di bobot variabel sepanjang waktu, untuk ekspresi contoh / bentuk mulut untuk melakukan animasi wajah
o Kedua teknik dapat diimplementasikan dalam perangkat keras dan perangkat lunak tergantung pada dukungan hardware
* Animasi SceneNodes untuk path kamera dan teknik yang mirip, dengan menggunakan interpolasi spline jika diperlukan
* Generik trek animasi dapat menerima adapter objek pluggable untuk memungkinkan Anda untuk menghidupkan setiap parameter objek apapun dari waktu ke waktu

Fitur Scene

* Sangat disesuaikan, manajemen adegan fleksibel, tidak terikat untuk semua jenis adegan tunggal. Gunakan kelas standar untuk organisasi adegan jika mereka sesuai atau pasang di subclass Anda sendiri untuk mendapatkan kontrol penuh atas organisasi adegan
* Plugin Beberapa contoh menunjukkan berbagai cara penanganan adegan khusus untuk jenis tertentu dari tata letak (misalnya BSP, Octree)
* Grafik adegan hirarkis; node memungkinkan objek yang akan melekat satu sama lain dan mengikuti setiap gerakan lain, struktur diartikulasikan dll
* Teknik bayangan Multiple rendering, baik teknik modulative dan aditif, stensil dan tekstur berbasis, masing-masing sangat dapat dikonfigurasi dan mengambil keuntungan penuh dari setiap akselerasi perangkat keras yang tersedia.
* Scene query fitur

Efek visual

* Compositor sistem, memungkinkan untuk efek postprocessing layar penuh untuk didefinisikan dengan mudah, melalui script jika diinginkan
* Sistem Partikel, termasuk emitter mudah extensible, affectors dan renderers (disesuaikan dengan plugin). Sistem dapat didefinisikan dalam skrip teks untuk tweaker mudah. Otomatis penggunaan partikel pooling untuk kinerja maksimum
* Dukungan untuk skyboxes, skyplanes dan skydomes, sangat mudah digunakan
* Billboarding untuk grafis sprite
* Pita jalan
objek Transparan * otomatis dikelola (render order & pengaturan buffer mendalam semua diatur untuk Anda)

Misc fitur

* Infrastruktur sumber daya umum untuk manajemen memori dan loading dari arsip (ZIP, PK3)
* Fleksibel arsitektur plugin memungkinkan mesin yang akan diperpanjang tanpa kompilasi ulang
* 'Controller' memungkinkan Anda untuk dengan mudah mengatur nilai-nilai yang berasal antara objek misalnya mengubah warna kapal berdasarkan pelindung kiri
* Debugging memori manager untuk mengidentifikasi kebocoran memori
* ReferenceAppLayer memberikan contoh bagaimana menggabungkan OGRE dengan perpustakaan lain, misalnya ODE untuk tabrakan & fisika
* XMLConverter untuk mengkonversi format runtime efisien biner ke / dari XML untuk pertukaran atau mengedit





Sejarah

Sejarah singkat OGRE, dan tonggak-nya:

Sekitar 1999
Sinbad menyadari bahwa 'DIMClass' proyeknya, sebuah proyek untuk membuat mudah digunakan perpustakaan berorientasi obyek Direct3D, telah menjadi begitu disarikan bahwa itu benar-benar tidak perlu didasarkan pada Direct3D lagi. Dimulai perencanaan sebuah perpustakaan lebih ambisius yang bisa API dan platform independen.

25 Februari 2000
Proyek Sourceforge terdaftar, nama OGRE diciptakan. Tidak ada pembangunan mulai karena komitmen lain tetapi banyak merenungkan terjadi.

Februari 2005
Ogre v1.0.0 "Azathoth" Final Dirilis - perbaikan sumber daya sistem, perangkat keras buffer pixel, HDR, CEGui, XSI eksportir

Maret 2005
Raksasa adalah 'Proyek Bulan' di Sourceforge

November 4, 2005
Ankh dilepaskan sebagai produk komersial pertama yang menggunakan Ogre

Mei 7, 2006
Ogre 1.2 "Dagon" secara resmi dirilis

25 Maret 2007
Ogre 1.4 "Eihort" secara resmi dirilis

28 Agustus 2008
Ogre 1,6 "Shoggoth" secara resmi dirilis (Saat ini 1.6.5 Stable Release)

28 Februari 2010
Ogre 1.7 "Cthugha" secara resmi dirilis (Saat ini 1.7.2 Stable Release)


Sumber
http://en.wikipedia.org/wiki/Game_engine
http://www.ogre3d.org/about
http://www.ogre3d.org/about/features
http://en.wikipedia.org/wiki/OGRE

0 komentar:

Posting Komentar