// Composite the cosines together.
// Input map is cosine(pix) for each of
// the 4 waves.
//
// The constants are set up so:
//		Nx = -freq * amp * dirX * cos(pix);
//		Ny = -freq * amp * dirY * cos(pix);
//	So c[i].x = -freq[i] * amp[i] * dirX[i]
//	etc.
// All textures are:
//		(r,g,b,a) = (cos(), cos(), 1, 1)
//
// So c[0].z = 1, but all other c[i].z = 0
// Note also the c4 used for biasing back at the end.

ps.1.1

tex		t0;
tex		t1;
tex		t2;
tex		t3;

mul		r0, t0_bx2, c0;
mad		r0, t1_bx2, c1, r0;
mad		r0, t2_bx2, c2, r0;
mad		r0, t3_bx2, c3, r0;
// Now bias it back into range [0..1] for output.
mul		r0, r0, c4;		// c4 = (0.5, 0.5, 0.5, 1)
add		r0, r0, c4;
//mov		r0, c4;