Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
- //
- // fxc /Tps_3_0 /E PS_AllLighting /Gfp /Fc light1.txt light1.hlsl
- //
- //
- // Parameters:
- //
- // float3 cameraPos;
- // sampler2D colorMap;
- // float4 globalAmbient;
- //
- // struct
- // {
- // int type;
- // float3 dir;
- // float3 pos;
- // float4 ambient;
- // float4 diffuse;
- // float4 specular;
- // float spotInnerCone;
- // float spotOuterCone;
- // float radius;
- //
- // } lights[16];
- //
- // struct
- // {
- // float4 ambient;
- // float4 diffuse;
- // float4 emissive;
- // float4 specular;
- // float shininess;
- //
- // } material;
- //
- // sampler2D normalMap;
- // int numLights;
- //
- //
- // Registers:
- //
- // Name Reg Size
- // ------------- ----- ----
- // numLights i0 1
- // lights c0 144
- // material c144 5
- // cameraPos c149 1
- // globalAmbient c150 1
- // colorMap s0 1
- // normalMap s1 1
- //
- ps_3_0
- def c151, 1.25, 0.0795774683, 0.5, -0.00138883968
- def c152, -4, -5, -6, -7
- def c153, -8, -9, -10, -11
- def c154, -12, -13, -14, -15
- def c155, 6.28318548, -3.14159274, -2.52398507e-007, 2.47609005e-005
- def c156, 0.0416666418, 0, 0, 0
- def c157, 2, -1, 0, -3
- dcl_texcoord v0.xyz
- dcl_texcoord1 v1.xy
- dcl_texcoord2 v2.xyz
- dcl_texcoord3 v3.xyz
- dcl_texcoord4 v4.xyz
- dcl_2d s0
- dcl_2d s1
- nrm r0.xyz, v3
- nrm r1.xyz, v4
- nrm r2.xyz, v2
- add r3.xyz, c149, -v0
- dp3 r4.x, r3, r0
- dp3 r4.y, r3, r1
- dp3 r4.z, r3, r2
- dp3 r0.w, r4, r4
- rsq r0.w, r0.w
- texld r3, v1, s1
- mad r3.xyz, r3, c157.x, c157.y
- nrm r5.xyz, r3
- mul r1.w, r3.w, c148.x
- mov r3, c157.z
- mov r2.w, c157.z
- rep i0
- add r6, r2.w, -c157_abs.zyxw
- add r7, r2.w, c152
- add r8, r2.w, c153
- add r9, r2.w, c154
- mov r10.z, c157.z
- cmp r10.xyw, -r6_abs.x, c2.xyzz, r10.z
- cmp r10.xyw, -r6_abs.y, c11.xyzz, r10
- cmp r10.xyw, -r6_abs.z, c20.xyzz, r10
- cmp r10.xyw, -r6_abs.w, c29.xyzz, r10
- cmp r10.xyw, -r7_abs.x, c38.xyzz, r10
- cmp r10.xyw, -r7_abs.y, c47.xyzz, r10
- cmp r10.xyw, -r7_abs.z, c56.xyzz, r10
- cmp r10.xyw, -r7_abs.w, c65.xyzz, r10
- cmp r10.xyw, -r8_abs.x, c74.xyzz, r10
- cmp r10.xyw, -r8_abs.y, c83.xyzz, r10
- cmp r10.xyw, -r8_abs.z, c92.xyzz, r10
- cmp r10.xyw, -r8_abs.w, c101.xyzz, r10
- cmp r10.xyw, -r9_abs.x, c110.xyzz, r10
- cmp r10.xyw, -r9_abs.y, c119.xyzz, r10
- cmp r10.xyw, -r9_abs.z, c128.xyzz, r10
- cmp r10.xyw, -r9_abs.w, c137.xyzz, r10
- add r10.xyw, r10, -v0.xyzz
- dp3 r4.w, r10.xyww, r10.xyww
- rsq r4.w, r4.w
- rcp r4.w, r4.w
- cmp r5.w, -r6_abs.x, c8.x, r10.z
- cmp r5.w, -r6_abs.y, c17.x, r5.w
- cmp r5.w, -r6_abs.z, c26.x, r5.w
- cmp r5.w, -r6_abs.w, c35.x, r5.w
- cmp r5.w, -r7_abs.x, c44.x, r5.w
- cmp r5.w, -r7_abs.y, c53.x, r5.w
- cmp r5.w, -r7_abs.z, c62.x, r5.w
- cmp r5.w, -r7_abs.w, c71.x, r5.w
- cmp r5.w, -r8_abs.x, c80.x, r5.w
- cmp r5.w, -r8_abs.y, c89.x, r5.w
- cmp r5.w, -r8_abs.z, c98.x, r5.w
- cmp r5.w, -r8_abs.w, c107.x, r5.w
- cmp r5.w, -r9_abs.x, c116.x, r5.w
- cmp r5.w, -r9_abs.y, c125.x, r5.w
- cmp r5.w, -r9_abs.z, c134.x, r5.w
- cmp r5.w, -r9_abs.w, c143.x, r5.w
- mad r4.w, r5.w, -c151.x, r4.w
- cmp r4.w, r4.w, c157_abs.z, c157_abs.y
- cmp r11.x, -r6_abs.x, c0.x, r10.z
- cmp r11.x, -r6_abs.y, c9.x, r11.x
- cmp r11.x, -r6_abs.z, c18.x, r11.x
- cmp r11.x, -r6_abs.w, c27.x, r11.x
- cmp r11.x, -r7_abs.x, c36.x, r11.x
- cmp r11.x, -r7_abs.y, c45.x, r11.x
- cmp r11.x, -r7_abs.z, c54.x, r11.x
- cmp r11.x, -r7_abs.w, c63.x, r11.x
- cmp r11.x, -r8_abs.x, c72.x, r11.x
- cmp r11.x, -r8_abs.y, c81.x, r11.x
- cmp r11.x, -r8_abs.z, c90.x, r11.x
- cmp r11.x, -r8_abs.w, c99.x, r11.x
- cmp r11.x, -r9_abs.x, c108.x, r11.x
- cmp r11.x, -r9_abs.y, c117.x, r11.x
- cmp r11.x, -r9_abs.z, c126.x, r11.x
- cmp r11.x, -r9_abs.w, c135.x, r11.x
- cmp r11.y, -r11_abs.x, c157_abs.y, c157_abs.z
- add r4.w, r4.w, r11.y
- if_lt -r4.w, c157.z
- if_eq r11.x, c157.z
- cmp r11.yzw, -r6_abs.x, c1.xxyz, r10.z
- cmp r11.yzw, -r6_abs.y, c10.xxyz, r11
- cmp r11.yzw, -r6_abs.z, c19.xxyz, r11
- cmp r11.yzw, -r6_abs.w, c28.xxyz, r11
- cmp r11.yzw, -r7_abs.x, c37.xxyz, r11
- cmp r11.yzw, -r7_abs.y, c46.xxyz, r11
- cmp r11.yzw, -r7_abs.z, c55.xxyz, r11
- cmp r11.yzw, -r7_abs.w, c64.xxyz, r11
- cmp r11.yzw, -r8_abs.x, c73.xxyz, r11
- cmp r11.yzw, -r8_abs.y, c82.xxyz, r11
- cmp r11.yzw, -r8_abs.z, c91.xxyz, r11
- cmp r11.yzw, -r8_abs.w, c100.xxyz, r11
- cmp r11.yzw, -r9_abs.x, c109.xxyz, r11
- cmp r11.yzw, -r9_abs.y, c118.xxyz, r11
- cmp r11.yzw, -r9_abs.z, c127.xxyz, r11
- cmp r11.yzw, -r9_abs.w, c136.xxyz, r11
- dp3 r12.x, -r11.yzww, r0
- dp3 r12.y, -r11.yzww, r1
- dp3 r12.z, -r11.yzww, r2
- mov r4.w, -c157.y
- else
- rcp r5.w, r5.w
- mul r10.xyw, r5.w, r10
- dp3 r12.x, r10.xyww, r0
- dp3 r12.y, r10.xyww, r1
- dp3 r12.z, r10.xyww, r2
- dp3 r5.w, r12, r12
- add r5.w, -r5.w, -c157.y
- max r4.w, r5.w, c157.z
- endif
- nrm r13.xyz, r12
- if_eq r11.x, c157.x
- cmp r5.w, -r6_abs.x, c7.x, r10.z
- cmp r5.w, -r6_abs.y, c16.x, r5.w
- cmp r5.w, -r6_abs.z, c25.x, r5.w
- cmp r5.w, -r6_abs.w, c34.x, r5.w
- cmp r5.w, -r7_abs.x, c43.x, r5.w
- cmp r5.w, -r7_abs.y, c52.x, r5.w
- cmp r5.w, -r7_abs.z, c61.x, r5.w
- cmp r5.w, -r7_abs.w, c70.x, r5.w
- cmp r5.w, -r8_abs.x, c79.x, r5.w
- cmp r5.w, -r8_abs.y, c88.x, r5.w
- cmp r5.w, -r8_abs.z, c97.x, r5.w
- cmp r5.w, -r8_abs.w, c106.x, r5.w
- cmp r5.w, -r9_abs.x, c115.x, r5.w
- cmp r5.w, -r9_abs.y, c124.x, r5.w
- cmp r5.w, -r9_abs.z, c133.x, r5.w
- cmp r10.x, -r9_abs.w, c142.x, r5.w
- cmp r5.w, -r6_abs.x, c6.x, r10.z
- cmp r5.w, -r6_abs.y, c15.x, r5.w
- cmp r5.w, -r6_abs.z, c24.x, r5.w
- cmp r5.w, -r6_abs.w, c33.x, r5.w
- cmp r5.w, -r7_abs.x, c42.x, r5.w
- cmp r5.w, -r7_abs.y, c51.x, r5.w
- cmp r5.w, -r7_abs.z, c60.x, r5.w
- cmp r5.w, -r7_abs.w, c69.x, r5.w
- cmp r5.w, -r8_abs.x, c78.x, r5.w
- cmp r5.w, -r8_abs.y, c87.x, r5.w
- cmp r5.w, -r8_abs.z, c96.x, r5.w
- cmp r5.w, -r8_abs.w, c105.x, r5.w
- cmp r5.w, -r9_abs.x, c114.x, r5.w
- cmp r5.w, -r9_abs.y, c123.x, r5.w
- cmp r5.w, -r9_abs.z, c132.x, r5.w
- cmp r10.y, -r9_abs.w, c141.x, r5.w
- mad r10.xy, r10, c151.y, c151.z
- frc r10.xy, r10
- mad r10.xy, r10, c155.x, c155.y
- mul r10.xy, r10, r10
- mad r11.xy, r10, c155.z, c155.w
- mad r11.xy, r10, r11, c151.w
- mad r11.xy, r10, r11, c156.x
- mad r11.xy, r10, r11, -c151.z
- mad r10.xy, r10, r11, -c157.y
- cmp r11.xyz, -r6_abs.x, c1, r10.z
- cmp r11.xyz, -r6_abs.y, c10, r11
- cmp r11.xyz, -r6_abs.z, c19, r11
- cmp r11.xyz, -r6_abs.w, c28, r11
- cmp r11.xyz, -r7_abs.x, c37, r11
- cmp r11.xyz, -r7_abs.y, c46, r11
- cmp r11.xyz, -r7_abs.z, c55, r11
- cmp r11.xyz, -r7_abs.w, c64, r11
- cmp r11.xyz, -r8_abs.x, c73, r11
- cmp r11.xyz, -r8_abs.y, c82, r11
- cmp r11.xyz, -r8_abs.z, c91, r11
- cmp r11.xyz, -r8_abs.w, c100, r11
- cmp r11.xyz, -r9_abs.x, c109, r11
- cmp r11.xyz, -r9_abs.y, c118, r11
- cmp r11.xyz, -r9_abs.z, c127, r11
- cmp r11.xyz, -r9_abs.w, c136, r11
- dp3 r12.x, r11, r0
- dp3 r12.y, r11, r1
- dp3 r12.z, r11, r2
- nrm r11.xyz, r12
- dp3 r5.w, -r13, r11
- add r10.y, -r10.x, r10.y
- add r5.w, -r10.x, r5.w
- rcp r10.x, r10.y
- mul_sat r5.w, r5.w, r10.x
- mad r10.x, r5.w, -c157.x, -c157.w
- mul r5.w, r5.w, r5.w
- mul r5.w, r5.w, r10.x
- mul r4.w, r4.w, r5.w
- endif
- mad r10.xyw, r4.xyzz, r0.w, r13.xyzz
- nrm r11.xyz, r10.xyww
- dp3_sat r5.w, r5, r13
- dp3_sat r10.x, r5, r11
- pow r11.x, r10.x, r1.w
- cmp r12, -r6_abs.x, c4, r10.z
- cmp r12, -r6_abs.y, c13, r12
- cmp r12, -r6_abs.z, c22, r12
- cmp r12, -r6_abs.w, c31, r12
- cmp r12, -r7_abs.x, c40, r12
- cmp r12, -r7_abs.y, c49, r12
- cmp r12, -r7_abs.z, c58, r12
- cmp r12, -r7_abs.w, c67, r12
- cmp r12, -r8_abs.x, c76, r12
- cmp r12, -r8_abs.y, c85, r12
- cmp r12, -r8_abs.z, c94, r12
- cmp r12, -r8_abs.w, c103, r12
- cmp r12, -r9_abs.x, c112, r12
- cmp r12, -r9_abs.y, c121, r12
- cmp r12, -r9_abs.z, c130, r12
- cmp r12, -r9_abs.w, c139, r12
- cmp r10, -r6_abs.x, c5, r10.z
- cmp r10, -r6_abs.y, c14, r10
- cmp r10, -r6_abs.z, c23, r10
- cmp r6, -r6_abs.w, c32, r10
- cmp r6, -r7_abs.x, c41, r6
- cmp r6, -r7_abs.y, c50, r6
- cmp r6, -r7_abs.z, c59, r6
- cmp r6, -r7_abs.w, c68, r6
- cmp r6, -r8_abs.x, c77, r6
- cmp r6, -r8_abs.y, c86, r6
- cmp r6, -r8_abs.z, c95, r6
- cmp r6, -r8_abs.w, c104, r6
- cmp r6, -r9_abs.x, c113, r6
- cmp r6, -r9_abs.y, c122, r6
- cmp r6, -r9_abs.z, c131, r6
- cmp r6, -r9_abs.w, c140, r6
- mul r6, r11.x, r6
- cmp r6, -r5.w, c157.z, r6
- mad r6, c145, r12, r6
- mul r6, r5.w, r6
- mad r3, r6, r4.w, r3
- endif
- add r2.w, r2.w, -c157.y
- endrep
- mov r0, c144
- mov r1, c150
- mad r0, r0, r1, c146
- add r0, r0, r3
- texld r1, v1, s0
- mul oC0, r0, r1
- // approximately 258 instruction slots used (2 texture, 256 arithmetic)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement