Ogre中创建基本的图形,比如圆,有一个很好的对象,ManualObject.
ManualObject是MoveObject类的派生类,所以可以移动,同时它内部包含一个Renderable列表
可以向里面填充数据
现在就以产生一个矩形为例子
OGRE::ManualObject *pRectManual = g_SenceMgr->createManualObject("Rect"); // 名字可以随便写
g_SenceMgr->getRootSceneNode()->createChildSceneNode("TerrainShapeNode")->attachObject(pRectManual );
//填充数据
ManualObject内部维护一个Renderable列表,填充数据的时候是按顺序填充的,第一次是写入第一个Renderable
对每一个Renderable操作都是由beign开始,end结束
pRectManual ->setCastShadows(false);
pRectManual->begin(mat,Ogre::RenderOperation::OT_LINE_STRIP);
int nIndex = 0;
for(int i=0.i<10;i++)
{
pRectManual->position(,,,);
...
pRectManual->index(nIndex++);
}
pRectManual->index(0);
pRectManual->end();
本文介绍如何使用Ogre中的ManualObject创建基本图形,如矩形。通过实例演示了如何设置阴影、渲染模式,并填充顶点数据。
853

被折叠的 条评论
为什么被折叠?



