天天看點

最簡單的Ogre系列之二——畫線

    在最簡單的Ogre程式(不使用ExampleListener/Application)中,我們從零開始建立了一個最簡單的Ogre程式架構,但它沒有任何功能。本節中,我們将嘗試繪制最基本的圖元,如點、線、面等。

    本文使用的是Ogre的ManualObject,官網上有一些例子。為了顯示相應的圖元,我們需要先設定錄影機的視角,以将其投向螢幕。

/**

----------------------------------------------------------------------

5 Create the camera

----------------------------------------------------------------------

*/

mCamera = mSceneMgr->createCamera("SimpleCamera");

mCamera->setPosition(Vector3(0, 0, 300));

mCamera->lookAt(Vector3(0, 0, -100)); 

并在第6步設定Viewport後添加顯示直線方框的程式。

ManualObject* manual = mSceneMgr->createManualObject("manual");

manual->begin("BaseWhiteNoLighting", RenderOperation::OT_LINE_STRIP);

manual->position(-100.0, -100.0, 0.0); // start position

manual->position( 100.0, -100.0, 0.0); // draw first line

manual->position( 100.0, 100.0, 0.0);

manual->position(-100.0, 100.0, 0.0);

manual->position(-100.0, -100.0, 0.0); // draw fourth line

manual->end();

mSceneMgr->getRootSceneNode()->createChildSceneNode()->attachObject(manual); 

這樣就可以顯示一個直線方框了。

最簡單的Ogre系列之二——畫線

繼續閱讀