這個demo中演示了如何動態設置Camera
效果圖:

Source Code and Executable:
http://m.shnenglu.com/Files/sandy/fly.rar
struct camera
{
D3DXMATRIX view_matrix;
D3DXVECTOR3 eye_vector;
D3DXVECTOR3 lookat_vector;
D3DXVECTOR3 up_vector;
D3DXMATRIX & getMatrix()
{
D3DXMatrixLookAtLH(&view_matrix,&eye_vector,
&lookat_vector,
&up_vector);
return view_matrix;
}
};
const float CAMERA_SPEED = 0.01f;
camera g_camera;
g_camera.eye_vector.z += CAMERA_SPEED;
g_d3d_device->SetTransform(D3DTS_VIEW,&g_camera.getMatrix());
{
D3DXMATRIX view_matrix;
D3DXVECTOR3 eye_vector;
D3DXVECTOR3 lookat_vector;
D3DXVECTOR3 up_vector;
D3DXMATRIX & getMatrix()
{
D3DXMatrixLookAtLH(&view_matrix,&eye_vector,
&lookat_vector,
&up_vector);
return view_matrix;
}
};
const float CAMERA_SPEED = 0.01f;
camera g_camera;
g_camera.eye_vector.z += CAMERA_SPEED;
g_d3d_device->SetTransform(D3DTS_VIEW,&g_camera.getMatrix());
效果圖:

Source Code and Executable:
http://m.shnenglu.com/Files/sandy/fly.rar