您的位置:首页 > 其它

Ogre 如何渲染简单的几何物体

2011-03-20 21:32 573 查看
使用ManualObject或者其派生类渲染简单的几何物体, 步骤如下:

1. 新创建一个ManualObject对象
mManualObj = new Ogre::ManualObject("SimpleStuff2");
2. 设置该ManualObject的参数
1) 设置其渲染序列组
mManualObj->setRenderQueueGroup(RENDER_QUEUE_OVERLAY);
2) 使用单元投影矩阵和单元视图矩阵, 这两个默认为false, 即使用相机的视图矩阵和投影矩阵
mManualObj->setUseIdentityProjection(true);
mManualObj->setUseIdentityView(true);
使用这两个函数之后, 所绘制的物体坐标范围位于(-1, -1, -1)至(1, 1, 1)之间
3) 设置查询参数
mManualObj = new Ogre::ManualObject("SimpleStuff2");
3. 调用绘制函数
mManualObj->clear();
mManualObj->begin("", RenderOperation::OT_LINE_STRIP);
for (int i = 0; i < 5; i++)
{
mManualObj->position(pos[i]);
}
mManualObj->end();
4. 创建场景节点挂接该对象
mSceneMgr->getRootSceneNode()->createChildSceneNode()->attachObject(mManualObj);



全部代码;

SimpleStuff.h

view sourceprint?
01 #ifndef __SIMPLE_STUFF_H__

02 #define __SIMPLE_STUFF_H__

03 #include "ExampleApplication.h"

04 class SimpleStuffApp : public ExampleApplication

05 {

06 public:

07 SimpleStuffApp() {}

08 ~SimpleStuffApp()

09 {

10 if(mManualObj)

11 {

12 delete mManualObj;

13 }

14 }

15 protected:

16 void createScene();

17 Ogre::ManualObject* mManualObj;

18 };

19 #endif


SimpleStuff.cpp



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/pizi0475/archive/2011/03/16/6254708.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: