pada penulisan saya kali ini merupakan kelanjutan dari penulisan saya yang berjudul Game Engine

sekarang saya akan membahas lebih khusus lagi tentang salah satu Game Engine yang bernama OGRE.
saya memilih OGRE dalam pembahasan kali ini karena OGRE adalah salah satu Game Engine yang berbasis open source alias gratis….tiss….tiss…. jadi lebih mudah untuk mencari tutorialnya jika Anda ingin belajar lebih dalam lagi tentang OGRE itu sendiri….


Ogre atau object-oriented Graphics Rendering Engine adalah open source rendering engine grafik yang ditulis dan dimaintain oleh tim inti kecil. Ogre merupakan suatu aplikasi 3D yang bersifat open source. Berikut ini adalah file-file yg dibutuhkan untuk membuat aplikasi 3D dengan library OGRE3D (Object Oriented Graphics Rendering Engine) antara lain :

# Eclipse-CPP ganymede sebagai IDE C++

# MinGW toolbox sebagai GCC opensource compiler

# MYSYS sebagai GNU Terminal environment

# OGRE3D SDK sebagai rendering engine di OGRE SDK for Code::Blocks + MinGW C++ Toolbox , perlu diperhatikan bahwa kita menggunakan MinGW sebagai c++ compilernya

1. Pertama install MinGW Toolbox dan setelah itu lakukan setting environment variable, misalkan anda menginstalnya di D:\mingw, maka dalam environment variable kita set path dengan nilai D:\mingw\bin
Mingw

2. untuk mengecheck apakah MinGW sudah terinstall dengan benar, ketik gcc –v pada command prompt

3. kemudian install MYSYS, jalankan setup MYSYS-1.0.10, kemudian setting path seperti yang dilakukan untuk menginstall MinGW seperti gambar dibawah berikut
mysys

4. untuk mengechecknya ketikan uname –a dicommand prompt

5. selanjutnya install OGRE, kemudian setting variable seperti MinGW dan MYSYS diatas, tetapi kita membuat variabel system baru yang bernama OGRE_HOME
ogrehome

6. Lalu extractlah file eclipse hasil download dan jalankan file eclipse.exe dalam folder eclipse

7. Setelah itu kita buat project baru dengan menekan alt+shift+n lalu pilihlah C++ Project, perhatikan gambar berikut :

cpp-proj

8. Lalu selanjutnya kita akan membuat sebuah project aplikasi 3D yang memanfaatkan OGRE.

9. pilih empty project dengan toolchains MinGW

10. lalu klik project pada bagian project explorer lalu tekan alt+enter

11. Arahkan kebagian C/C++ Build -> Settings, Klik Manage Configurations lalu klik baris Release dan tekan Set Active dan klik OK.

12. Masuk ke bagian GCC C++ Compiler pada Tool Settings, selanjutnya ikutilah petunjuk table berikut ini untuk bagian-bagian properties pada pilihan Debug dan Release. Pastikan yang aktif adalah Release.
DEBUG
Preprocessor
Defined Symbols (-D):
• WIN32
• _WINDOWS
• _DEBUG

Directories
Include Paths (-l):
• “${OGRE_HOME}\include”
• “${OGRE_HOME}\samples\include”
Beserta kutip ” ”

Miscellaneous
Bag. Other flags :
-c -fmessage-length=0 -mthreads -fexceptions -fident

RELEASE
Preprocessor
Defined Symbols (-D):
• WIN32
• _WINDOWS
• NDEBUG

Directories
Include Paths (-l):
• “${OGRE_HOME}\include”
• “${OGRE_HOME}\samples\include”
Beserta kutip ” ”

Miscellaneous
Bag. Other flags :
-c -fmessage-length=0 -mthreads -fexceptions -fident

13. Mash pada bagian Tool Setting, masuk ke bagian MinGW C++ Linker ikutilah petunjuk table berikut ini untuk bagian-bagian properties pada pilihan Debug dan Release. Pastikan yang aktif adalah Release.
DEBUG
Libraries
Libraries (-l):
• OgreMain_d
• OIS_d

Library search path (-L):
• “${OGRE_HOME}\bin\debug”
Beserta kutip “

Miscellaneous
Bag. Other Options (-Xlinker[option]):
• –enable-auto-image-base
• –add-stdcall-alias

RELEASE
Libraries
Libraries (-l):
• OgreMain
• OIS

Beserta kutip “ Library search path (-L):
• “${OGRE_HOME}\bin\release”
Beserta kutip “

Miscellaneous
Bag. Other Options (-Xlinker[option]):
• –enable-auto-image-base
• –add-stdcall-alias

14. Masuk kebagian sourcecode, masukkan sourcecode berikut untuk testing :

#include “ExampleApplication.h”

class BelajarOgre : public ExampleApplication {
public:
BelajarOgre(){

}

~BelajarOgre(){

}
protected:
void createScene(void){
//mSceneMgr utk manage semua semua yg tampil pd screen
mSceneMgr->setAmbientLight(ColourValue(1,1,1));
//Entity ad objek yg bs dirender discene
Entity *ent1 = mSceneMgr->createEntity(“Robot”,”robot.mesh”);
Entity *ent2 = mSceneMgr->createEntity(“Robot2″,”robot.mesh”); //membuat robot kedua

SceneNode *node1 = mSceneMgr->getRootSceneNode()->createChildSceneNode(“RobotNode”);
SceneNode *node2 = mSceneMgr->getRootSceneNode()->createChildSceneNode(“Robot2Node”);

//attach entity ke scenenode ut beri lokasi render robot
node1->attachObject(ent1);
node2->attachObject(ent2); //mengattach robot 2
node2->translate(20,0,0);
}
};

#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
#define WIN32_LEAN_AND_MEAN
#include “windows.h”

INT WINAPI WinMain(HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT)
#else
int main(int argc, char **argv)
#endif
{
//bikin objek aplikasi
BelajarOgre app;
try {
app.go();
} catch (Exception e) {
#if OGRE_PLATFORM == OGRE_PLATFORM_WIN32
MessageBox(NULL,e.what(),”Terjadi Error!”,MB_OK | MB_ICONERROR |MB_TASKMODAL);
#else
fprintf(stderr,”Terjadi Error = %s\n”,e.what());
#endif
}
return 0;
}

15. Build project tersebut, dan masuk kedalam direkori OgreSDK\bin\release lalu buka file resource.cfg

16. Ganti bagian ../../../ dengan fullpath lokasi OgreSDK

17. Savelah file tersebut, lalu copy semua isi direktori OgreSDK\bin\release kedalam workspace project anda khusunya direkori nama_workspace\nama_project\Release

18. Masuk ke direktori nama_workspace\nama_project\Release, jalankan file executablenya biasanya nama_project.exe maka akan muncul dialog seperti ini,
ogrerender

19. Disini kita mengkonfigurasi output yang ditampilkan, tekan OK, maka hasilnya adalah sbb:
output

Sumber : LAPORAN AKHIR PRAKTIKUM GRAFKOM2