2
0

cg_texture_fp.cg 725 B

123456789101112131415161718192021222324252627282930313233
  1. //
  2. // Fragment Program
  3. //
  4. // - Blends four textures
  5. //
  6. struct vert2Frag
  7. {
  8. float4 Position : POSITION;
  9. float4 Tex0 : TEXCOORD0;
  10. float4 Tex1 : TEXCOORD1;
  11. float4 Tex2 : TEXCOORD2;
  12. float4 Tex3 : TEXCOORD3;
  13. };
  14. fragout main( vert2Frag IN,
  15. uniform sampler2D Map0,
  16. uniform sampler2D Map1,
  17. uniform sampler2D Map2,
  18. uniform sampler2D Map3,
  19. uniform float4 weights
  20. )
  21. {
  22. fragout OUT;
  23. OUT.col = f4tex2D(Map0,IN.Tex0.xyz) * weights[0];
  24. OUT.col += f4tex2D(Map1,IN.Tex1.xyz) * weights[1];
  25. OUT.col += f4tex2D(Map2,IN.Tex2.xyz) * weights[2];
  26. OUT.col += f4tex2D(Map3,IN.Tex3.xyz) * weights[3];
  27. return OUT;
  28. }