//////////////////////////////////////////////// // transform vertex pos into homogeneous xyzw // //////////////////////////////////////////////// dp4 oPos.x, v0, c0 dp4 oPos.y, v0, c1 dp4 oPos.z, v0, c2 dp4 r0.x, v0, c3 mov oPos.w,r0.x mad r0.x, r0.x , c90.x, c90.y min r0.x, r0.x , c90.w max r0.x, r0.x , c90.z mov oFog.x,r0.x