polyvox/materials/programs/ColourMap2DFragmentProgram.cg
2007-08-15 23:03:23 +00:00

22 lines
819 B
Plaintext

struct v2f
{
float4 Position : POSITION; //in projection space
float4 Color : COLOR;
float4 TexCoordsXY : TEXCOORD0;
float4 TexCoordsYZ : TEXCOORD1;
float4 TexCoordsXZ : TEXCOORD2;
float4 Normal : TEXCOORD3;
};
float4 main(v2f IN, uniform sampler2D colourMap : TEXUNIT0) : COLOR
{
float3 colourMapValueXY = tex2D(colourMap, IN.TexCoordsXY.xy).rgb * abs(IN.Normal.z);
float3 colourMapValueYZ = tex2D(colourMap, IN.TexCoordsYZ.xy).rgb * abs(IN.Normal.x);
float3 colourMapValueXZ = tex2D(colourMap, IN.TexCoordsXZ.xy).rgb * abs(IN.Normal.y);
float3 colourMapValue = colourMapValueXY + colourMapValueYZ + colourMapValueXZ;
//colourMapValue /= 3.0;
return float4(colourMapValue/*IN.Color.rgb*/, pow(IN.Color.a,0.75));
}