http://blog.csdn.net/loveclover

第三步:定义投影变换矩阵

投影变换矩阵决定了几何形体如何从3-D视图空间变换到2-D视口空间。

下面的代码段创建了一个投影矩阵,并加以设置。

D3DXMATRIX matProj;
D3DXMatrixPerspectiveFovLH( 
&matProj, D3DX_PI/41.0f1.0f100.0f );
g_pd3dDevice
->SetTransform( D3DTS_PROJECTION, &matProj );

首先调用D3DXMatrixPerspectiveFovLH来设置投影矩阵。第一个参数是一个指向D3DXMATRIX结构的指针,它同样也是此函数执行的结果。第二个参数定义了视口的范围,规定了在多远处的物体应该变小。一个典型的视口范围是1/4π,本例中也使用这个值。第三个参数定义了空间高与宽的比,本例中设置为1。第四,第五个参数定义了近裁剪面和远裁剪面。它们决定了在某个距离范围内的几何形体,哪些该被渲染,哪些不该被渲染。Matrices示例工程中,近裁剪面设置为1,远裁剪面设置为100(z轴坐标)

下一步则是调用IDirect3DDevice9::SetTransform来应用变换。第一个参数告知Direct3D需要设置哪一种变换矩阵。本例中使用D3DTS_PROJECTION标识来指定设置投影矩阵。第二个参数是一个指向当前设置矩阵的指针。

本次指南向你展示了怎样使用矩阵。指南4:创建并使用灯光 展示了如何在你的场景中添加灯光,从而使它更加真实。

posted on 2008-03-18 15:04 Sure 阅读(1473) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
<2008年2月>
272829303112
3456789
10111213141516
17181920212223
2425262728291
2345678

导航

统计

常用链接

留言簿(5)

随笔分类

随笔档案

相册

搜索

最新评论

阅读排行榜

评论排行榜