?? 3dobjects.h
字號:
/*
*
============================================================================
* Name : 3DObjects.h
* Part of : Example3D
* Created : 12/14/2003 by Forum Nokia
* Description:
* This is the project specification file for Example3D.
* Initial content was generated by Series 60 AppWizard.
*
* Version : 1.0.0
* Copyright: Forum Nokia
*
============================================================================
*/
#ifndef __3DOBJECTS_H__
#define __3DOBJECTS_H__
/*
* 3D objects are defined by vertices and faces
* vertices are x,y,z coordinates in 3D-space
* faces are triangles with indexes to vertices
* and texture coordinates x1,y1,x2,y2,x3,y3
* faces must define triangle vertices to be
* clockwise arranged because of backface culling
* ( only one side of face is visible
*
*/
//
// Car 3D object
//
const TInt KNumCarVertices = 18;
const TInt KNumCarFaces = 24;
const TInt KCarVertexData[] = {
-600,-500,-250, // box right side
100,-500,-250,
100, 000,-250,
-600, 000,-250,
-600,-500, 250, // box left side
100,-500, 250,
100, 000, 250,
-600, 000, 250,
100,-300,-250, // windscreen low
100,-300, 250,
200,-200,-200, // enginebox right
500,-200,-200,
500, 0,-200,
200, 0,-200,
200,-200, 200, // enginebox right
500,-200, 200,
500, 0, 200,
200, 0, 200,
};
const TInt KCarFaceData[] = {
0,4,5, 5,10, 5,5, 12,5, // box top
0,5,1, 5,10, 12,5, 12,10,
0,1,2, 0,0, 7,0, 7,5, // box left
0,2,3, 0,0, 7,5, 0,5,
5,4,7, 7,0, 0,0, 0,5, // box right
5,7,6, 7,0, 0,5, 7,5,
4,0,3, 0,5, 5,5, 5,10, // box back
4,3,7, 0,5, 5,10, 0,10,
1,5,9, 7,0, 12,0, 12,2, // windscreen
1,9,8, 7,0, 12,2, 7,2,
9,14,10, 11,2, 12,2, 12,3, // box->enginebox joint top
9,10,8, 11,2, 12,3, 11,3,
8,10,13, 7,2, 8,3, 8,5, // right
8,13,2, 7,2, 8,5, 7,5,
14,9,6, 8,3, 7,2, 7,5, // left
14,6,17, 8,3, 7,5, 8,5,
14,15,11, 8,2, 11,2, 11,3, // enginebox top
14,11,10, 8,2, 11,3, 8,3,
10,11,12, 8,3, 11,3, 11,5, // right
10,12,13, 8,3, 11,5, 8,5,
15,14,17, 11,3, 8,3, 8,5, // left
15,17,16, 11,3, 8,5, 11,5,
11,15,16, 11,3, 12,3, 12,5, // front
11,16,12, 11,3, 12,5, 11,5
};
//
// Road 3D object
//
const TInt KNumRoadVertices = 4;
const TInt KNumRoadFaces = 2;
const TInt KRoadVertexData[] = {
-1500, 0, -1500,
-1500, 0, 1500,
1500, 0, 1500,
1500, 0, -1500
};
const TInt KRoadFaceData[] = {
0,1,2, 128,128, 255,128, 255,255,
0,2,3, 128,128, 255,255, 128,255
};
//
// Grass 3D object
//
const TInt KNumGrassVertices = 4;
const TInt KNumGrassFaces = 2;
const TInt KGrassVertexData[] = {
-1500, 0, -1500,
-1500, 0, 1500,
1500, 0, 1500,
1500, 0, -1500
};
const TInt KGrassFaceData[] = {
0,1,2, 128,128, 255,128, 255,255,
0,2,3, 128,128, 255,255, 128,255
};
//
// House 3D object
//
const TInt KNumHouseVertices = 8;
const TInt KNumHouseFaces = 10;
const TInt KHouseVertexData[] = {
-1500, -2000, -1500,
-1500, -2000, 1500,
1500, -2000, 1500,
1500, -2000, -1500,
-1500, 0, -1500,
-1500, 0, 1500,
1500, 0, 1500,
1500, 0, -1500
};
const TInt KHouseFaceData[] = {
0,1,2, 0,0, 127,0, 127,127,
0,2,3, 0,0, 127,127, 0,127,
0,3,7, 0,128, 127,128, 127,255,
0,7,4, 0,128, 127,255, 0,255,
2,1,5, 0,128, 127,128, 127,255,
2,5,6, 0,128, 127,255, 0,255,
3,2,6, 0,128, 127,128, 127,255,
3,6,7, 0,128, 127,255, 0,255,
1,0,4, 0,128, 127,128, 127,255,
1,4,5, 0,128, 127,255, 0,255,
};
//
// Tilemapped city
// x = grass
// a = house
// 0-3 = road east, south, west, north
//
const TInt KMapWidth = 16;
const TInt KMapHeight = 16;
const TUint8 KMap[16][17]={
"xxxxxxxxxxxxxxxx",
"xxxxxxxxxxxxxxxx",
"xx30000000000xxx",
"xx3xxxx1xxxx1xxx",
"xx3x3000001x1xxx",
"xx3x3a1a1a1x1xxx",
"xx3x3000001x1xxx",
"xx303a1a1a101xxx",
"xx3x3000001x1xxx",
"xx3x3a1a1a1x1xxx",
"xx3x3222221x1xxx",
"xx3xxxx1xxxx1xxx",
"xx32222222221xxx",
"xxxxxxxxxxxxxxxx",
"xxxxxxxxxxxxxxxx",
"xxxxxxxxxxxxxxxx"
};
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -