|
|
??? ????quot rogramming Vertex and Pixel Shaders".
???@????"Chapter 24 - Shadow Mapping\Shadow Map Aliased"????.
????????quot;fOffsetX","fOffsetY"?"m_ScaleBias"???????????x???,??????????
?????????exture??????R?3D?Viewport????.
HRESULT RenderMeshes()
{
//
// render car
//
float fOffsetX = 0.5f + (0.5f / (float)SHADOW_MAP_SIZE);
float fOffsetY = 0.5f + (0.5f / (float)SHADOW_MAP_SIZE);
D3DXMATRIX mScaleBias( 0.5f, 0.0f, 0.0f, 0.0f,
0.0f, -0.5f, 0.0f, 0.0f,
0.0f, 0.0f, 0.0f, 0.0f,
fOffsetX, fOffsetY, 0.5f, 1.0f );
// transform car
// mS * mT * mR * m_mWorld * m_mView * m_mProj
if(m_hmWorldViewProj != NULL)
{
g_pEffect->SetMatrix(
m_hmWorldViewProj,
&(m_matL * m_matWorld * m_matView * m_matProj)
);
}
// transform projected textures
// mS * mT * mR * mView * mProj * mScaleBias
D3DXMATRIX matTemp = m_matL * m_matLightVP * mScaleBias;
if(m_hmLightViewProjTexAdj != NULL)
{
g_pEffect->SetMatrix(m_hmLightViewProjTexAdj, &matTemp);
} |
|