//////////////////////// // Set UV coordinates // //////////////////////// // reflect UV1 into cube map add r0, v0, -c9 // DirFromCamera = Vector - CameraPos dp3 r1.x, r0, r0 // DirFromCameraLenSquared = DirFromCamera | DirFromCamera rsq r1.y, r1.x // OneOverDirFromCameraLen = 1.0f / sqrt(DirFromCameraLenSquared) mul r0, r0, r1.y // DirFromCamera *= OneOverDirFromCameraLen dp3 r1.z, r0, v1 // Mul = DirFromCamera | Normal mul r1.w, r1.z, -c94.x // Mul *= -2.0f mad r2, v1, r1.w, r0 // dir = Normal * Mul + DirFromCamera dp3 oT0.x, r2, c12 // u = dir | ModelMatrixRight dp3 oT0.y, r2, c13 // v = dir | ModelMatrixUp dp3 oT0.z, r2, c14 // w = dir | ModelMatrixLook // copy base UV's mov oT1, v3 mov oT2, v3