void makeScene(IVideoDriver *driver)
{
int x,y;
float hold;
float x1,y1,x2,y2;
u16 list[] = {0,1,2, 2,1,3};
S3DVertex ver[4];
//テクスチャ読み込み
ITexture* Texture;
Texture = driver->getTexture("wall.bmp");
SMaterial Material;
Material.Lighting = false;
Material.BackfaceCulling = false;
Material.TextureLayer[0].Texture = Texture;
driver->setMaterial(Material);
|
for(x=0;x<div-1;x++)
{
for(y=0;y<div-1;y++)
{
x1 = float(x )/(div-1);
y1 = float(y )/(div-1);
x2 = float(x+1)/(div-1);
y2 = float(y+1)/(div-1);
ver[0] = S3DVertex(
vertex[x ][y ][0],
vertex[x ][y ][1],
vertex[x ][y ][2],
0,0,1, 0xFFFFFFFF, x1,y1);
ver[1] = S3DVertex(
vertex[x+1][y ][0],
vertex[x+1][y ][1],
vertex[x+1][y ][2],
0,0,1, 0xFFFFFFFF, x2,y1);
ver[2] = S3DVertex(
vertex[x ][y+1][0],
vertex[x ][y+1][1],
vertex[x ][y+1][2],
0,0,1, 0xFFFFFFFF, x1,y2);
ver[3] = S3DVertex(
vertex[x+1][y+1][0],
vertex[x+1][y+1][1],
vertex[x+1][y+1][2],
0,0,1, 0xFFFFFFFF, x2,y2);
driver->drawIndexedTriangleList(&ver[0], 4, &list[0], 2);
}
}
|
//カメラ設定
smgr->addCameraSceneNode(0, vector3df(0,0,-5), vector3df(0,0,0));//通常カメラ
init();
while(device->run())
{
|