D3DX中有几个现成的函数可以绘制常见的3D模型
-
D3DXCreateBox
-
D3DXCreateSphere
-
D3DXCreateCylinder //圆柱
-
D3DXCreateTeapot
-
D3DXCreatePolygon
-
D3DXCreateTorus //圆环体,类似于面包圈
这些函数有三个参数是一样的,它们分别是
1. 第一个参数 LPDIRECT3DDEVICE9 pDevice //这是用来绘图的device
2. 倒数第二个参数LPD3DXMESH * ppMesh //用来存储创建后的mesh
3. 最后一个参数LPD3DXBUFFER * ppAdjacency //用来优化mesh用的,我们这里设置为null即可
其他的参数则与具体的模型有关,比如Box要指定尺寸,Sphere要指定半径等。
下面以D3DXCreateSphere为例讲解一下使用这些函数的一般步骤
原型
HRESULT D3DXCreateSphere(
LPDIRECT3DDEVICE9 pDevice,
FLOAT Radius,
UINT Slices,
UINT Stacks,
LPD3DXMESH * ppMesh,
LPD3DXBUFFER * ppAdjacency
);