CSDN博客

img caimouse
博客专家

D3DXMatrixShadow 函数

发表于2004/10/11 13:21:00  3051人阅读

分类: Direct3D

D3DXMatrixShadow 函数


创建一个平面的阴影矩阵。

定义:

D3DXMATRIX *WINAPI D3DXMatrixShadow(      

    D3DXMATRIX *pOut,
    CONST D3DXVECTOR4 *pLight,
    CONST D3DXPLANE *pPlane
);

参数:

pOut

[in, out] 指向D3DXMATRIX 结构的操作结果矩阵。  

pLight

[in] 指向D3DXVECTOR4 结构的光线位置向量。

pPlane

[in] 指向D3DXPLANE 结构的平面方程。

返回值:

指向D3DXMATRIX 结构的矩阵,它是用来把几何在平面阴影变换矩阵。

 

说明:

如果从光线照射几何物体有阴影,就可以用函数D3DXMatrixShadow 计算阴影变换矩阵。

函数返回值跟pOut 参数返回值是一样的。这样可以让函数D3DXMatrixShadow作为其它函数的参数使用。

用下面的方法计算这个矩阵:

P = normalize(Plane);
L = Light;
d = dot(P, L)
 
P.a * L.x + d  P.a * L.y      P.a * L.z      P.a * L.w  
P.b * L.x      P.b * L.y + d  P.b * L.z      P.b * L.w  
P.c * L.x      P.c * L.y      P.c * L.z + d  P.c * L.w  
P.d * L.x      P.d * L.y      P.d * L.z      P.d * L.w + d
如果光线的W分量是0,表示从原点发出的方向光。如果W分量是1,表示它是一个点光源。

函数信息:

Header

d3dx9math.h

Import library

d3dx9.lib

Minimum operating systems

Windows 98



阅读全文
0 0

相关文章推荐

img
取 消
img