|
COD4 已经非常注意优化了
抓出来的Shader 使用了大量的半精度 非常注意减少对硬件本身的压力
ps_3_0
def c1 , 1.000000000000000000000000, 9.377517700195312500000000, 8.000000000000000000000000, 6.000000000000000000000000
def c2 , 7.000000000000000000000000, -0.999249994754791260000000, 1.442695021629333500000000, 0.250000000000000000000000
def c3 , 1.000000000000000000000000, 0.000000000000000000000000, 0.000000000000000000000000, 0.000000000000000000000000
dcl_color0 v0.xyz
dcl_texcoord0 v1.xy
dcl_texcoord1 v2
dcl_texcoord4 v3
dcl_texcoord5 v4.xyz
dcl_texcoord6 v5.xyz
dcl_2d s0
dcl_cube s1
dcl_volume s4
dcl_2d s5
dcl_2d s6
dcl_2d s7
mov r0.xy , c3
mul r1 , r0.xxyy , c11.xyxx
mad r2 , v3.wwww , r1 , v3
mad r1 , v3.wwww , -r1 , v3
texld r2 , r2 , s5
texld r1 , r1 , s5
mov r2.y , r1.xxxx
mul r0 , r0.xxyy , c11.zwxx
mad r1 , v3.wwww , r0 , v3
mad r0 , v3.wwww , -r0 , v3
texld r1 , r1 , s5
mov r2.z , r1.xxxx
texld r0 , r0 , s5
mov r2.w , r0.xxxx
add r0 , r2 , -v3.zzzz
cmp r0 , r0 , c3.xxxx , c3.yyyy
dp4_pp r0.x , r0 , c2.wwww
nrm_pp r1.xyz , v2
max_pp r0.y , abs r1.yyyy , abs r1.zzzz
max_pp r2.x , abs r1.xxxx , r0.yyyy
rcp r0.y , r2.xxxx
mul r2.xyz , r1 , c5
mad_pp r0.yzw , r2.xxyz , r0.yyyy , v5.xxyz
texld_pp r2 , r0.yzww , s4
lrp_pp r1.w , c10.wwww , r0.xxxx , r2.wwww
add_pp r0.xyz , r2 , r2
add r2.xyz , c6 , -v4
dp3 r0.w , r2 , r2
rsq r0.w , r0.wwww
rcp r2.w , r0.wwww
mul_pp r2.xyz , r2 , r0.wwww
mul_sat r0.w , r2.wwww , c6.wwww
texld_pp r3 , r0.wwww , s7
dp3_pp r0.w , r2 , c9
mad_sat_pp r0.w , r0.wwww , c10.xxxx , c10.yyyy
pow_pp r2.w , r0.wwww , c10.zzzz
cmp_pp r0.w , -r0.wwww , c3.yyyy , r2.wwww
mul_pp r3.xyz , r3 , r0.wwww
mul_pp r3.xyz , r1.wwww , r3
nrm_pp r4.xyz , v4
dp3_pp r0.w , r4 , r1
add_pp r1.w , r0.wwww , r0.wwww
add_pp r0.w , -abs r0.wwww , c1.xxxx
mad_pp r4.xyz , r1 , -r1.wwww , r4
dp3_sat_pp r1.x , r2 , r1
dp3_pp r1.y , r4 , r2
add_pp r1.y , r1.yyyy , c2.yyyy
texld_pp r2 , v1 , s6
mul_pp r1.z , r2.wwww , c1.yyyy
exp_pp r1.z , r1.zzzz
add_pp r1.z , r1.zzzz , c2.xxxx
mul_pp r1.y , r1.yyyy , r1.zzzz
mul_pp r1.y , r1.yyyy , c2.zzzz
exp_sat_pp r1.y , r1.yyyy
mov_pp r1.w , c20.wwww
mul_pp r5.xyz , r1.wwww , c8
mul_pp r1.yzw , r1.yyyy , r5.xxyz
mad_pp r4.w , r2.wwww , -c1.zzzz , c1.wwww
texldl r4 , r4 , s1
mul_pp r4.xyz , r4.wwww , r4
mad_pp r1.yzw , r3.xxyz , r1 , r4.xxyz
pow_pp r2.w , r0.wwww , c20.zzzz
lrp_pp r0.w , r2.wwww , c20.yyyy , c20.xxxx
mul_pp r2.xyz , r2 , r0.wwww
mul_pp r1.yzw , r1 , r2.xxyz
mul_pp r2.xyz , r1.xxxx , c7
mad_pp r0.xyz , r3 , r2 , r0
texld_pp r2 , v1 , s0
mul_pp r2.xyz , r2 , v0
mad_pp r0.xyz , r2 , r0 , r1.yzww
add r0.xyz , r0 , -c0
mad oC0.xyz , v2.wwww , r0 , c0
mov oC0.w , c1.xxxx |
|