Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

17 februari 2011 PJ : Nuraini Purwandari

Presentasi serupa


Presentasi berjudul: "17 februari 2011 PJ : Nuraini Purwandari"— Transcript presentasi:

1 17 februari 2011 PJ : Nuraini Purwandari
Training OGRE 17 februari 2011 PJ : Nuraini Purwandari This presentasion is dedicated to Laboratory of Information of Universitas Gunadarma

2 PEMBAHASAN Dalam Materi Training ini akan dibahas antara lain :
Pengenalan & Instalasi Ogre Pewarnaan pada Ogre Shadowing / Bayangan pada Ogre Ligthing, Viewport dan Camera Rotasi pada Ogre Translasi pada Ogre Penskalaan pada Ogre Sky, Fog dan Terrain pada Ogre Particle dan Material pada Ogre Animasi dengan Ogre

3 Pengenalan & Instalasi Ogre
(Object-oriented Graphics Rendering Engine) adalah open source rendering engine grafik yang ditulis dan dimaintain oleh tim inti kecil. Telah berkembang luas menjadi komunitas. Tutorial

4 Pengenalan & Instalasi Ogre
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 Setelah proses penginstalan selesai maka langkah selanjutnya adalah mengetikkan source code pada Eclipse dan melakukan penyetingan pada Menu Setting di properties Setelah itu baru di Build All dan akan muncul outputnya.

5 Tampilan Awal window Ogre

6 Pewarnaan pada Ogre Model warna dimana warna yang dihasilkan merupakan kombinasi warna RED, GREEN dan BLUE. Dalam API yang terdapat dalam OGRE, model ini biasa dijadikan pada parameter pemanggilan fungsi ColourValue(float red,float green, float blue) dimana parameter fungsi ini memiliki range antara 0.0f sampai 1.0f. Contoh constanta warna built-in yang terdapat pada OGRE, diantaranya : static const Black = ColourValue(0.0,0.0,0.0) static const White=ColourValue(1.0,1.0,1.0) static const Red = ColourValue(1.0,0.0,0.0) static const Green = ColourValue(0.0,1.0,0.0) static const Blue = ColourValue(0.0,0.0,1.0)

7 Shadowing pada Ogre SceneManager memiliki fungsi setShadowTechnique untuk menset type bayangan yang kita inginkan Untuk mencoba shadow pada Ogre, tambahkan kode berikut pada TutorialApplication::createScene(); void createScene(void) { Entity *ent; Light *light; mSceneMgr->setAmbientLight( ColourValue( 0, 0, 0 ) ); mSceneMgr->setShadowTechnique( SHADOWTYPE_STENCIL_ADDITIVE ); ent = mSceneMgr->createEntity("Ninja", "ninja.mesh"); ent->setCastShadows(true); mSceneMgr->getRootSceneNode()->createChildSceneNode()->attachObject(ent); Plane plane(Vector3::UNIT_Y, 0); MeshManager::getSingleton().createPlane("ground", ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME, plane, 1500,1500,20,20,true,1,5,5,Vector3::UNIT_Z); ent = mSceneMgr->createEntity("GroundEntity", "ground"); ent->setMaterialName("Examples/Rockwall"); ent->setCastShadows(false);

8 Light, Viewport dan Camera pada Ogre
Cahaya / Light Point (LT_POINT) cahaya point memancarkan cahaya dari titik ke semua arah Spotlight (LT_SPOTLIGHT) Cahaya akan keluar melalui suatu arah tertentu Bisa ditentukan besar sudut lingkaran dalam dan lingkaran luar terang pada center, dan lebih redup pada bagian luar Directional (LT_DIRECTIONAL) mensimulasikan cahaya jarak jauh yang menabrak apapun pada scene dari satu arah menset directional light

9 Membuat Viewport pada Ogre
Tambahkan kode berikut pada TutorialApplication::createViewport() // Create one viewport, entire window virtual void createViewports(void) { Viewport* vp = mWindow->addViewport(mCamera); vp->setBackgroundColour(ColourValue(0,0,0)); mCamera->setAspectRatio(Real(vp->getActualWidth()) / Real(vp->getActualHeight())); } Perintah membuat viewport dengan menempelkan sebuah kamera pada viewport. Perintah kedua menset background dari viewport. Menset aspect ratio dari viewport.

10 Membuat Kamera pada Ogre
Tambahkan kode berikut pada TutorialApplication::createCamera() protected: virtual void createCamera(void) { mCamera = mSceneMgr->createCamera("PlayerCam"); mCamera->setPosition(Vector3(0,10,500)); mCamera->lookAt(Vector3(0,0,0)); mCamera->setNearClipDistance(5); } Perintah pertama membuat kamera dengan nama “PlayerCam” Perintah kedua menset posisi dari kamera, sedang perintah berikutnya menset arah pandang kamera Perintah terakhir menentukan jarak terdekat yang terlihat kamera. Untuk menset jarak terjauh gunakan setFarClipDistance

11 Contoh Output menggunakan Light, Viewport, Camera dan Shadowing

12 Contoh Output menggunakan Light, Viewport, Camera dan Shadowing

13 Rotasi pada Ogre Di Ogre, kita dapat merotasikan objek dengan mempergunakan method yaw, pitch, dan roll baik dalam degree atau dalam radian.

14 Contoh Output Rotasi

15 Translasi pada Ogre Translasi merupakan suatu proses yang menyebabkan perpindahan objek dari satu titik ke titik lain. Method : node1->translate( Vector3( 10, 0, 10 ) );

16 Penskalaan pada Ogre Penskalaan dalam OGRE merupakan salah satu bagian dari hubungan spasial transformasi yang dinyatakan dengan koordinat dinyatakan dalam sumbu X, Y, dan Z.

17 Contoh Output Skala

18 Sky, Fog dan Terrain pada Ogre
Sky / Langit Ogre menyediakan tiga jenis langit: SkyBoxes, SkyDomes, dan SkyPlanes SkyBox pada dasarnya adalah sebuah kubus raksasa yang mengelilingi semua objek dalam scene. SkyDomes sangat mirip dengan SkyBoxes. SkyPlanes sangat berbeda dari SkyBoxes dan SkyDomes. Fog / kabut Pada Ogre, setFog adalah jenis kabut (dalam kasus ini, linear). Parameter kedua untuk setFog adalah warna kabut yang kita gunakan (dalam hal ini yang sangat sangat ringan abu-abu atau "WhiteSmoke" untuk C #). Parameter ketiga tidak digunakan dalam linear kabut. Keempat dan kelima parameter menentukan rentang di mana mendapatkan kabut tebal.

19 Sky, Fog dan Terrain pada Ogre
Dasar dari SceneManager mendefinisikan method setWorldGeometry, yang subclass-subclass-nya menggunakan hampir semua scene dalam pembuatannya. Dengan menngunakan class TerrainSceneManager, kita menginginkan nama file yang memuat konfigurasi dataran (terrain). Cari TutorialApplication:: createScene fungsi anggota dan tambahkan baris kode ini: mSceneMgr->setWorldGeometry("terrain.cfg"); Kompilasi dan jalankan program, maka akan muncul dataran dari file terrain. Ada banyak pilihan dalam file terrain.cfg, namun disini kita akan membahas yang paling sederhananya saja. Satu hal yang perlu diketahui tentang TerrainSceneManager adalah bahwa hal itu telah dirancang dengan fungsi paging.

20 Contoh Output SkyBox SkyDome

21 Contoh Output SkyPlane

22 Contoh Output Terrain Fog / kabut

23 Particle dan Material pada Ogre
Particle merupakan pondasi dari sebagian besar spesial efek visual dalam aplikasi 3D. Ketika kita tidak membutuhkan sebuah particle system untuk menarik bagian efek visual tertentu, mereka membuat hidup lebih mudah ketika kita membutuhkan sebuah efek. Materials mendefinisikan bagaimana objek mencerminkan cahaya, tetapi tidak bagaimana cahaya yang dipantulkan berinteraksi dengan objek lainnya dalam scene. Dengan kata lain, objek yang kita buat tidak menjadi sumber cahaya tambahan dalam scene ketika objek tersebut merefleksikan dan/atau memancarkan cahaya.

24 Contoh Output Material
Kita menggunakan material yang telah disediakan oleh Ogre di C:\OgreSDK\media\materials\texture untuk macam-macam gambar tekstur yang dapat digunakan dan C:\OgreSDK\media\materials\scripts\Example.material untuk script code bentukan material yang ingin dibentuk.

25 Contoh Output Particle
Smoke Sun

26 Animasi pada Ogre Animasi, secara umum tidak berbeda dalam usia komputer daripada ketika beberapa seniman pertama dengan cepat membalik halaman yang berisi serangkaian gambar yang sedikit berbeda dan melihat bahwa hal tersebut memberikan ilusi gerak. Secara umum, Ogre mendukung dua cara yang berbeda untuk memanipulasi objek-objek di functional basis. Pertama adalah keyframed animation dan yang kedua adalah sebuah controller. Berikut macam-macam animasi yang terdapat pada Ogre : Animation State : interaksi utama antara aplikasi dan animasi di Ogre adalah melalui animation state. Dalam alat pemodelan kita, kita dapat menetapkan beberapa animasi unuk kerangka atau mesh sepanjang waktu. Skeletal Animation : skeletal animasi mungkin jenis animasi yang paling umum digunakan. Dengan skeletal animasi, simpul dalam mesh terikat dalam ”tulang” yang membuat sebuah kerangka.

27 Animasi pada Ogre Vertex Animation : mengacu pada fakta bahwa bukannya menghidupkan tulang dalam kerangka dan perhitungan posisi vertices sebagai fungsi dari tulang-tulang tersebut, yang sebenarnya posisi verteks animasi. Tipe dari animasi ini adalah morph animation dan pose animation. Blending Animation : kita dapat memadukan berbagai tipe animasi untuk membuat animasi kompeks dalam scene, tetapi kita tidak dapat memadukan moprh dan pose bersamaan, kita juga tidak bisa memadukan beberapa animasi morph. Controllers Saat animasi keyframed mengatur bagaimana kita menghidupkan mesh kita, sebuah controller akan menjadikan apa yang dapat bergerak, mengatakan, scenenode yang masih melekat di mesh kita, disekitar scene, dibawah kendali fungsi apa saja. Controllers mengacu pada kenyataan bahwa posisi, orientasi, skala dan sebagainya, dari satu atau lebih objek dalam scene kita yang dikendalikan oleh perhitungan nilai, melainkan melacak ke data keyframe.

28 Contoh output Animasi

29 Contoh Output Fresnel Reflection and Refractions pada Ogre

30 Contoh Output Objek Mesh Car

31 PENUTUP Slide ini dapat di download di blog :
Sekian presentasi dari saya. Terimakasih.


Download ppt "17 februari 2011 PJ : Nuraini Purwandari"

Presentasi serupa


Iklan oleh Google