Senin, 04 April 2011

Mengenal Feature dari Ogre3D dan Penjelsan Lainnya

Dari pembahasan pada postingan sebelumnya, saya membahas sedikit tentang game engine yang saya pilih yaitu Ogre3D. Di awal saya hanya membahas apa sih Ogre3D itu., lalu pada postingan ini saya akan membahas Feature-feature apa saja yang ada di dalem Ogre3D dan cara penginstalan di dalam Windows dan Linux.

Ogre 3D Merupakan engine untuk rendering grafikal yang Open Source. Ogre3D tidak menyertakan komponen built-in seperti physics, penanganan input user dan kecerdasan buatan (Artificial Intellegence). Ogre ini bersifat hanya sebagai plug-in yang ditanam umum menambahkan library-nya yang merupakan sebagai mesin render yang tangguh dan banyak orang bilang ini sebagai game engine. Berdasar dari FAQ(Frequently Asked Question) dari Ogre 3D wiki, Ogre sebenarnya bukan Game Engine tetapi hanya merupakan Graphic Engine, Ogre 3D hanya fokus pada grafis 3D dan manipulasi adegan 3D. Ogre3D digambarkan cukup baik sehingga programmer tidak perlu memprogram bahasa spesifik untuk 3D seperti OpenGL atau DirectX. Namun, Ogre 3D dapat dengan mudah disatukan dengan library lain untuk membuat game. Untuk menggunakan engine ini dalam pembuatan game yang kompleks, maka kita perlu mengintegrasikannya dengan library physics yang tersedia, dan kita juga harus mencari library untuk suara. Ogre3D adalah game engine yang cukup baik untuk digunakan karena mudah digunakan dan kaya fitur. Dibuat oleh beberapa orang dari tim dari sebuah komunitas. Para developernya : Steve ’sinbad’ Streeting, Brian ‘praetor’ Johnstone, Assaf Raman, Holger ‘CABAListic’ Frydrych, Dave ‘masterfalcon’ Rogers, Noam ‘Noman’ Gat, Nir Hasson dan beberapa anggota lain yang sudah keluar/pensiun dari tim tersebut. Ogre 3D ini dapat dijalankan menggunakan beragam jenis hardware (support 3D) tentu dengan performa yang berbeda juga.
Fitur OGRE 3D:
  • 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 & Direct3D. Bisa merender konten yang sama di beda platform tanpa harus mempunyai content creator. Dapat diakses pada platform Linux, Mac OS X, 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 & manual.
  • Engine animasi yang mensuport penuh untuk multiple hardware.
  • OGRE mempunyai comositing manager dengan bahasa script dan full screen postprocessing untuk efek seperti HDR, blooming, satruation, brightness, blurring, & noise.
  • Libraries mempunyai fitur memory debugging & loading resource dari archive-nya.
  • Tersedia konten tools untuk 3D modeler, seperti 3D Studio Max, Maya, Blender, LightWare, Milkshape, Sketchup, dsb.

Berikut adalah langkah-langkah penginstalan Ogre3D dalam Windows:
Untuk  installasi OGRE memiliki beberapa tahapan agar bisa digunakan karena OGRE tidak berjalan sendiri melainkan membutuhkan applikasi lain untuk berjalan. User akan membutuhkan komponen-komponen berikut :

1.      Eclipse
AC / C + + ekstensi untuk Eclipse, WIT. Untuk program C + + di Eclipse,    instal ekstensi CDT.
2.     GCC (MinGW)
CDT bekerja dengan GCC, compiler gnu koleksi, awalnya ditulis untuk platform unix (seperti linux atau FreeBSD). Untuk menjalankannya di windows, kita perlu menciptakan lingkungan unix di windows agar gcc dapat berjalan. Ada dua pilihan.  Salah satu pilihan adalah Cygwin, yang hanya menerjemahkan semua sistem unix panggilan ke panggilan sistem windows, yang memungkinkan semua program unix untuk berjalan di windows. Pilihan kedua, kita akan gunakan adalah MinGW. MinGW merupakan kumpulan alat pengembangan linux (seperti compiler dan file header) yang terdiri dari gcc untuk windows.
3.      MSYS
Tools yang digunakan untuk mengkonfigurasi gcc. MSYS mengkonfigurasikan gcc di bawah platform windows.
4.      The Ogre SDK, Code:: Blocks versi

Untuk membuat program OGRE, kita perlu OGRE SDK. Ada beberapa SDK precompiled yang tersedia untuk platform pengembangan yang berbeda. Tidak ada SDK khusus untuk Eclipse.
5.      Install Eclipse
Sistem dasar Eclipse akan menampilkan lingkungan pemrograman Java yang dapat ditambahkan untuk bahasa lain. Install Eclipse, untuk praktikum kali ini, user menggunakan Eclipse Helios versi Eclipse IDE untuk C / C++ Developer. User dapat mendownload Eclipse IDE untuk C / C++ Developer, dengan C/C++ Development Tools Plugin sudah termasuk dalam paket installasi. Setelah didownload, extrak file tersebut dan jalankan Eclipse.exe .
6.      Install MinGW
MinGW adalah aplikasi gcc untuk Windows. Aplikasi ini seluruhnya berada dalam satu direktori. User akan menggunakan C:/mingw sebagai direktori file. Dalam direktori ini terdapat beberapa subdirektori seperti bin dan libs. MinGW terdiri dari beberapa paket distribusi yang masing-masing memiliki file dalam satu atau lebih dari direktori ini. untuk menginstall paket baru, cukup ekstrak ke direktori (misal) C:/mingw. Kemudian user perlu menambahkan direktori ini ke PATH variabel Windows juga, caranya:
+++  Klik kanan My Computer – Properties – Advanced – Environmental Variables  +++
Klik Path variable. Klik Edit, Add “;c:\mingw\bin” (tanpa tanda petik) pada Variable value. Tanda kutip ganda digunakan untuk memisahkan direktori yang berbeda.
7.     Install MSYS
Setelah mendownload MSYS.1.0.10.exe maka install ke direktori C:\msys. Skrip instalasi akan meminta anda untuk memberitahukan dimana anda menginstall MinGW. Agar program MSYS dapat dijalankan dimana saja, maka user perlu menambahkan direktori ini ke PATH windows juga. Caranya:
Klik kanan My Computer – Properties – Advanced – Environmental Variables.
Klik Path variable. Edit, tambahakan “;c\mysys\bin” (tanpa tanda kutip) pada Variable value. Tanda kutip digunakan untuk memisahkan direktori yang berbeda.
Untuk mengecek apakah hasil instalasi kita dapat bekerja dengan benar, maka user dapat mengeceknya melalui Command Prompt dan ketikkan perintah berikut:
“gcc –v”
“rm –versi”
Untuk kedua file, user harus mendapatkan beberapa informasi versi. Jika user mendapatkan pesan “is not recognized as an internal or external command, operable program or batch file” , itu artinya Windows tidak dapat menemukan program yang telah kita install. Periksa apakah Path variable telah diatur dengan benar.
8.      Install OgreSDK
Untuk membuat aplikasi Ogre3D kita harus menginstall OgreSDK. Download OGRE SDK for Code::Blocks + MinGW C++ Toolbox, kemudian install di suatu tempat. Disini user akan menggunakan C:\ogreSDK.
Yang support terhadap OGRE adalah :
· Direct3D (Supporting DirectX 9 and 10) and OpenGL support [DirectX 7 Unsupported as of Ogre 1.2.0].
· Windows (all major versions), Linux and Mac OS X support
· Builds on Visual C++ 2003, 2005, 2008 and 2010.
· Builds on gcc 4+ on Linux and Mac OS X and for iPhone.
Ogre ini dapat di-jalankan menggunakan beragam jenis hardware (support 3D) tentu dengan performa yang berbeda juga.
Berikut adalah langkah-langkah penginstalan Ogre3D dalam Linux:
Distro linux yang saya pilih sebagai media untuk instalasi OGRE adalah linux ubuntu.  Disini saya akan menjelaskan secara singkat langkah2 instalasi OGRE di ubuntu. Sebelum mulai menginstal setidaknya kita telah menyediakan paket libfreeimage, jadi kita tidak perlu download dari sourcenya). Selamat mengikuti !!!
Download beberapa paket yg belum ada, seperti : OIS dan Cg Tool kit .
kemudian lanjutkan dengan : 
1. Instalasi OIS
Install dulu dependency :
sudo apt-get install autoconf automake1.9 libtool libxaw6-dev build-essential
membutuhkan 63.3 MB
Kemudian mulai build
make clean # bersihkan folder objek hasil kompilasi sebelumnya
./bootstrap
./configure –disable-ogre # karena ogre yg akan memanggil ois
make
sudo make install

2. Instalasi Cg Toolkiet
extract Cg_toolkit, dan kopi ke /usr semuanya :
cd Cg
sudo cp usr/* /usr -R

3. Instalasi Ogre
Install dulu dependency :
sudo apt-get install libzzip-dev libxxf86vm-dev \
libxrandr-dev libxrandr-dev libfreeimage-dev \
libcegui-mk2-dev libfreetype6-dev libdevil-dev \
libgtk2.0-dev libcppunit-dev libglut3-dev
jalankan terlebih dahulu :
aclocal
Kemudian mulai build :
./bootstrap
./configure

Sumber: sumber1, sumber2, sumber3