!!ARBfp1.0
	
# This is the fragment program for four
# component dependent data with no shading	

# We need some temporary variables		
TEMP temp1, temp2;
TEMP finalColor, finalOpacity;
	 
# We are going to use the first 
# texture coordinate		
ATTRIB tex0 = fragment.texcoord[0];
	
# This is our output color
OUTPUT out = result.color;

# Look up the color in the first volume
TEX finalColor, tex0, texture[0], 3D;
		
# Look up the fourth scalar / gradient
# magnitude in the second volume	
TEX temp1, tex0, texture[1], 3D;

# Swizzle this to use (a,r) as texture
# coordinates for color, and (g,b) for
# opacity		
SWZ temp2, temp1, a, r, 1, 1;

# Use the (a,r) coordinate to look up a 
# final opacity in the fourth texture
# (this is a 2D texture)			
TEX finalOpacity, temp2, texture[3], 2D;

# Combine these into the result
MOV out, finalColor;
MOV out.w, finalOpacity.w; 
END





	