第一个目标是用Ogre来绘制一个立方体
Scene代码如下:
ManualObject* cube;
cube = mSceneMgr->createManualObject("cube");
cube->begin("cubeMaterial");
// 顶点
cube->position( -100, -100, -100); //0
cube->colour(0.0, 0.0, 0.0);
cube->position( 100, -100, -100); //1
cube->colour(1.0, 0.0, 0.0);
cube->position( 100, -100, 100); //2
cube->colour(1.0, 0.0, 1.0);
cube->position( -100, -100, 100); //3
cube->colour(0.0, 0.0, 1.0);
cube->position( -100, 100, -100); //4
cube->colour(0.0, 1.0, 0.0);
cube->position( 100, 100, -100); //5
cube->colour(1.0, 1.0, 0.0);
cube->position( 100, 100, 100); //6
cube->colour(1.0, 1.0, 1.0);
cube->position( -100, 100, 100); //7
cube->colour(0.0, 1.0, 1.0);
索引
cube->triangle(0, 2, 1);
cube->triangle(0, 2, 3);
cube->triangle(3, 4, 0);
cube->triangle(3, 7, 4);
cube->triangle(4, 7, 6);
cube->triangle(4, 6, 5);
cube->triangle(5, 2, 1);
cube->triangle(5, 6, 2);
cube->triangle(0, 4, 1);
cube->triangle(5, 1, 4);
cube->triangle(3, 6, 7);
cube->triangle(3, 2, 6);
cube->end();
SceneNode* sn = mSceneMgr->getRootSceneNode()->createChildSceneNode();
sn->attachObject(cube);
Scene代码如下:
ManualObject* cube;
cube = mSceneMgr->createManualObject("cube");
cube->begin("cubeMaterial");
// 顶点
cube->position( -100, -100, -100); //0
cube->colour(0.0, 0.0, 0.0);
cube->position( 100, -100, -100); //1
cube->colour(1.0, 0.0, 0.0);
cube->position( 100, -100, 100); //2
cube->colour(1.0, 0.0, 1.0);
cube->position( -100, -100, 100); //3
cube->colour(0.0, 0.0, 1.0);
cube->position( -100, 100, -100); //4
cube->colour(0.0, 1.0, 0.0);
cube->position( 100, 100, -100); //5
cube->colour(1.0, 1.0, 0.0);
cube->position( 100, 100, 100); //6
cube->colour(1.0, 1.0, 1.0);
cube->position( -100, 100, 100); //7
cube->colour(0.0, 1.0, 1.0);
索引
cube->triangle(0, 2, 1);
cube->triangle(0, 2, 3);
cube->triangle(3, 4, 0);
cube->triangle(3, 7, 4);
cube->triangle(4, 7, 6);
cube->triangle(4, 6, 5);
cube->triangle(5, 2, 1);
cube->triangle(5, 6, 2);
cube->triangle(0, 4, 1);
cube->triangle(5, 1, 4);
cube->triangle(3, 6, 7);
cube->triangle(3, 2, 6);
cube->end();
SceneNode* sn = mSceneMgr->getRootSceneNode()->createChildSceneNode();
sn->attachObject(cube);