// light shafts
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
//   sampler2D ColorSampler;
//   float4 Param;
//   float4 ScreenLightPos;
//
//
// Registers:
//
//   Name           Reg   Size
//   -------------- ----- ----
//   Param          c0       1
//   ScreenLightPos c1       1
//   ColorSampler   s0       1
//

    ps_3_0
	//def c222, Const1, Const2, Const3, Const4
	def c223, 0, 1, 0.85, 2	// new
    def c2, 0, 0.125, 1, 0
    defi i0, 8, 0, 0, 0
    dcl_texcoord v0.xy
    dcl_2d s0
    mov_sat r0.xy, c1
    add r0.xy, r0, -v0
    texld_pp r1, v0, s0
    mov_pp r2.xyz, r1
    mov r0.zw, v0.xyxy
    mov r1.w, c0.y
    rep i0
      mad r0.zw, r0.xyxy, c2.y, r0
      texld r3, r0.zwzw, s0
      lrp_pp r4.xyz, r1.w, r3, r2
      mul_pp r1.w, r1.w, c0.x
      mov_pp r2.xyz, r4
    endrep
// transperancy switch
	mov r30.x, c222.x
	if_eq r30.x, c223.y
		mul r2.x, r2.x,  c223.z
		mul r2.y, r2.y,  c223.z			
		mul r2.z, r2.z,  c223.z	
	endif	
    mov_pp oC0.xyz, r2
    mov_pp oC0.w, c2.z
	mov r30.x, c222.x	
	if_eq r30.x, c223.w
	// disable
		mov oC0.xyzw, c223.xxxx
	endif	

// approximately 18 instruction slots used (2 texture, 16 arithmetic)