|
|
RT
VS代码如下
float4x4 matViewProjection;
float4x4 matWorldView;
float4 PointLightPos;
struct VS_INPUT
{
float4 Position : POSITION;
float4 Normal : NORMAL0;
};
struct VS_OUTPUT
{
float4 Position : POSITION;
float4 Diffuse : COLOR;
};
VS_OUTPUT vs_main( VS_INPUT Input )
{
VS_OUTPUT Output = (VS_OUTPUT)0;
float4 lightvec = PointLightPos - Input.Position ;
float lightdist = length(lightvec);
lightvec = normalize(lightvec);
Input.Normal = normalize(Input.Normal);
float attenuation = dot( lightvec, Input.Normal );
Output.Position = mul( Input.Position, matViewProjection );
Output.Diffuse = saturate ( float4(0.8, 0.8, 0.8, 1 )*attenuation );
return (Output);
}
float4 ps_main( float4 color : COLOR ) : COLOR
{
return( color );
}
上面一个是DX的

下面以个是rendermonkey下HLSL的截图

|
|