// 世界变换 D3DXMATRIX matWorld; D3DXMatrixIdentity(&matWorld); // 设置世界矩阵 g_pd3dDevice->SetTransform(D3DTS_WORLD , &matWorld); // Set up our view matrix. A view matrix can be defined given an eye point, // a point to lookat, and a direction for which way is up. Here, we set the // eye five units back along the z-axis and up three units, look at the // origin, and define "up" to be in the y-direction. // 视口变换 D3DXMATRIX matView; D3DXMatrixLookAtLH(&matView , &D3DXVECTOR3(0 , 0 , -5) , &D3DXVECTOR3(0 , 0 , 0) , &D3DXVECTOR3(0 , 1 , 0)); g_pd3dDevice->SetTransform(D3DTS_VIEW , &matView); // For the projection matrix, we set up a perspective transform (which // transforms geometry from 3D view space to 2D viewport space, with // a perspective divide making objects smaller in the distance). To build // a perpsective transform, we need the field of view (1/4 pi is common), // the aspect ratio, and the near and far clipping planes (which define at // what distances geometry should be no longer be rendered). D3DXMATRIXA16 matProj; D3DXMatrixPerspectiveFovLH( &matProj, D3DX_PI/4, 800.0f/600.0f, 1.0f, 100.0f ); g_pd3dDevice->SetTransform( D3DTS_PROJECTION, &matProj );