vs.1.1 // Transform position to clip space and output it dp4 oPos.x, v0, c[2] dp4 oPos.y, v0, c[3] dp4 oPos.z, v0, c[4] dp4 oPos.w, v0, c[5] add r4, -v0, c[56] mul r3, r4, c[42].zzxx dp3 r3.w, r3, r3 // 3 instruction normalization rsq r3.w, r3.w mul r3.xyz, r3, r3.w mad r7, r3, c[55].wwxx, c[55].xxyx mad r8, r3.yxzz, c[55].wzxx, c[55].xxyx dp3 r4.w, r4, r4 rsq r4.w, r4.w mul r4.xyz, r4, r4.w max r4.z, r4.z, -r4.z add r5, c[1], -r4.zzzz mul r10, r5, r5 mul r10, r10, r10 mul r10, r10, c[42].w // mult by two mul r10, r10, c[52] add r10, c[1], -r10 sge r10.w, r10.x, c[42].x mul r10, r10, r10.w mul r7.xy, r7, r10 mul r8.xy, r8, r10 mul r5, r5, r5 mul r5, r5, c[42].y //mov oD0, r5 // Option for diagnosis -- // display the result as color mad oT2.z, r5, r3.x, r7.z mad oT3.z, r5, r3.y, r8.z mul oT2.xy, r7, c[53] mul oT3.xy, r8, c[53] mad oD0, r4, c[42].y, c[42].y mov oT0.xy, v1