#include "common.hlsli" float3 vMinBounds; float3 vMaxBounds; struct vf { float4 hpos : POSITION; float3 lightToPos : TEXCOORD0; // light center to plane vector float3 vPos : TEXCOORD1; // position in camera space float fDensity : TEXCOORD2; // plane density alon Z axis // float2 tNoise : TEXCOORD3; // projective noise }; vf main(v_static v) { vf o; float4 vPos; vPos.xyz = lerp(vMinBounds, vMaxBounds, v.P); // Position in camera space vPos.w = 1; o.hpos = mul(m_P, vPos); // xform, input in camera coordinates o.lightToPos = vPos.xyz - Ldynamic_pos.xyz; o.vPos = vPos; // o.fDensity = (vMaxBounds.z-vMinBounds.z)/2000.0h; // o.fDensity = (vMaxBounds.z-vMinBounds.z)/2000.0h*2; o.fDensity = 1.0h / 40.0h; // o.fDensity = 1.0h/20.0h; return o; }