GAME ENGINE (BAG.3) PRAKTEK

Posted: April 4, 2011 in tugas kampus

Yak!!!  Setelah perkenalan dan sedikit teori mengenai OGRE sebagai game engine, sekarang saya akan menjelaskan bagaimana membuat suatu objek 3D  sederhana menggunakan OGRE. Langsung aje deh. Check it out broo:

  • Langkah pertama tekan alt+shift+n lalu pilihlah C++ Project, perhatikan gambar berikut :

  • Lalu selanjutnya kita akan membuat sebuah project aplikasi 3D yang memanfaatkan OGRE.
  • pilih empty project dengan toolchains MinGW
  • lalu klik project pada bagian project explorer lalu tekan alt+enter
  • Arahkan kebagian C/C++ Build à Settings, Klik Manage Configurations lalu klik baris Release dan tekan Set Active dan klik OK.
  • 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 RELEASE
Preprocessor
Defined Symbols (-D):

  • WIN32
  • _WINDOWS
  • _DEBUG
Defined Symbols (-D):

  • WIN32
  • _WINDOWS
  • NDEBUG
Directories
Include Paths (-l):

  • “${OGRE_HOME}\include”
  • “${OGRE_HOME}\samples\include”

Beserta kutip “

Include Paths (-l):

  • “${OGRE_HOME}\include”
  • “${OGRE_HOME}\samples\include”

Beserta kutip “

Miscellaneous
Bag. Other flags :

-c -fmessage-length=0 -mthreads -fexceptions -fident

Bag. Other flags :

-c -fmessage-length=0 -mthreads -fexceptions –fident

  • 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 RELEASE
Libraries
Libraries (-l):

  • OgreMain_d
  • OIS_d
Libraries (-l):

  • OgreMain
  • OIS
Library search path (-L):

  • “${OGRE_HOME}\bin\debug”

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
Bag. Other Options (-Xlinker[option]):

  • –enable-auto-image-base
  • –add-stdcall-alias
  • 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; }

  • Build project tersebut, dan masuk kedalam direkori OgreSDK\bin\release lalu buka file resource.cfg
  • Ganti bagian ../../../ dengan fullpath lokasi OgreSDK
  • Savelah file tersebut, lalu copy semua isi direktori OgreSDK\bin\release kedalam workspace project anda khusunya direkori nama_workspace\nama_project\Release
  • Masuk ke direktori nama_workspace\nama_project\Release, jalankan file executablenya biasanya nama_project.exe maka akan muncul dialog seperti ini,

  • Berikut ini merupakan tampilan output dari listing yang telah kita masukkan. Tampilannya adalah sbb:

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s