进入了新的一章,light,camera,viewport之类的。第一小节说的是创建一个平面。先上代码:
#include "Ogre\ExampleApplication.h"
class Example1:public ExampleApplication
{
public:
void createScene()
{
Ogre::Plane plane(Ogre::Vector3::UNIT_Y, -10);
Ogre::MeshManager::getSingleton().createPlane("plane", ResourceGroupManager::DEFAULT_RESOURCE_GROUP_NAME,
plane, 1500, 1500, 20, 20, true, 1, 5, 5, Vector3::UNIT_Z);
Ogre::Entity* ent = mSceneMgr ->createEntity("LightPlaneEntity", "plane");
mSceneMgr ->getRootSceneNode() ->createChildSceneNode() ->attachObject(ent);
ent ->setMaterialName("Examples/BeachStones");
}
};
int main(void)
{
Example1 app;
app.go();
return 0;
}
首先创建一个平面,第一个参数是平面的法向量,第二个是离原点的距离。
接下来用createplane创建一个平面实体,两个1500分别代表长宽,20分别代表segment数量(理解为越大越精细就好了),true代表是否创建平面法线,1是多层纹理的数量,5分别代表纹理x,y方向的数量,最后一个是指平面的延展方向。
setMaterialName就是贴纹理。