|
|
发表于 2007-8-27 09:13:00
|
显示全部楼层
Re:请问有没有办法把Z-buffer的数据转化到Texture中去,以便P
//AdaptDepthVS.cg
//取得顶点的深度值,并且插值到PS中去
uniform float4x4 modelViewProj : state.matrix.mvp;
uniform float farclip; //远裁剪面距离
void main(float4 inPos : POSITION,
out float4 oPos : POSITION,
out float oDepth : TEXCOORD0)
{
float4 OutPos;
oPos = OutPos = mul(modelViewProj, inPos);
oDepth = OutPos.w / farclip;
}
//AdaptDepthPs.cg
//将插值的深度转换成颜色
//白色越近,黑色越远。
void main(float4 inDepth : TEXCOORD0,
out float4 color : COLOR0)
{
float depthColor = inDepth.r;
color = float4(depthColor, depthColor, depthColor, 1.0);
}
|
|