想要在某页(Surface)做为渲染对相页(RenderTarget)时,在 hlsl的ps中直接取得这页中指定贴图坐标上的颜色值。
如下
void PixShadow( float2 texCoord: TEXCOORD0, out float4 Color : COLOR )//输出颜色灰度{ //在此想取得RenderTarget页 中texCoord坐标上,已经存在的颜色
float4 colRT = ?;
if(colRT.r>0.5)
Color = tex2D( g_samTex, texCoord);
else
Color =0;
}
如下
void PixShadow( float2 texCoord: TEXCOORD0, out float4 Color : COLOR )//输出颜色灰度{ //在此想取得RenderTarget页 中texCoord坐标上,已经存在的颜色
float4 colRT = ?;
if(colRT.r>0.5)
Color = tex2D( g_samTex, texCoord);
else
Color =0;
}
有篇叫《Shadow Map在DirectX9.0 SDK Sample 的实现方法》的文章,你可以找了参考一下:http://dev.gameres.com/Program/Visual/3D/ShadowMap.mht
想到了自己曾经学HLSL的那个痛苦