Advertisement
Guest User

Untitled

a guest
Oct 10th, 2018
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // Compiled shader for PC, Mac & Linux Standalone
  2.  
  3. //////////////////////////////////////////////////////////////////////////
  4. //
  5. // NOTE: This is *not* a valid shader file, the contents are provided just
  6. // for information and for debugging purposes only.
  7. //
  8. //////////////////////////////////////////////////////////////////////////
  9. // Skipping shader variants that would not be included into build of current scene.
  10.  
  11. Shader "Vertex Shader Transforms" {
  12. Properties {
  13.  _TextureSample0 ("Texture Sample 0", 2D) = "bump" { }
  14.  _t ("t", Range(0.000000,30.000000)) = 0.000000
  15.  _PopInTime ("Pop In Time", Float) = 1.000000
  16. [HideInInspector]  _tex4coord ("", 2D) = "white" { }
  17. [HideInInspector]  __dirty ("", Float) = 1.000000
  18. }
  19. SubShader {
  20.  Tags { "QUEUE"="Geometry+0" "RenderType"="Opaque" }
  21.  
  22.  
  23.  // Stats for Vertex shader:
  24.  //        d3d11: 82 avg math (71..94)
  25.  // Stats for Fragment shader:
  26.  //        d3d11: 57 math, 5 texture, 4 branch
  27.  Pass {
  28.   Name "FORWARD"
  29.   Tags { "LIGHTMODE"="FORWARDBASE" "QUEUE"="Geometry+0" "RenderType"="Opaque" }
  30.   //////////////////////////////////
  31.   //                              //
  32.   //      Compiled programs       //
  33.   //                              //
  34.   //////////////////////////////////
  35. //////////////////////////////////////////////////////
  36. Keywords set in this variant: DIRECTIONAL
  37. -- Hardware tier variant: Tier 1
  38. -- Vertex shader for "d3d11":
  39. // Stats: 71 math, 10 temp registers
  40. Uses vertex data channel "Vertex"
  41. Uses vertex data channel "Normal"
  42. Uses vertex data channel "Color"
  43. Uses vertex data channel "TexCoord"
  44. Uses vertex data channel "TexCoord0"
  45. Uses vertex data channel "TexCoord1"
  46. Uses vertex data channel "TexCoord2"
  47. Uses vertex data channel "Tangent"
  48.  
  49. Constant Buffer "$Globals" (96 bytes) on slot 0 {
  50.   Float _t at 64
  51.   Float _PopInTime at 68
  52.   Vector4 _tex4coord_ST at 80
  53. }
  54. Constant Buffer "UnityLighting" (768 bytes) on slot 1 {
  55.   Vector4 unity_SHBr at 672
  56.   Vector4 unity_SHBg at 688
  57.   Vector4 unity_SHBb at 704
  58.   Vector4 unity_SHC at 720
  59. }
  60. Constant Buffer "UnityPerDraw" (160 bytes) on slot 2 {
  61.   Matrix4x4 unity_ObjectToWorld at 0
  62.   Matrix4x4 unity_WorldToObject at 64
  63. }
  64. Constant Buffer "UnityPerFrame" (368 bytes) on slot 3 {
  65.   Matrix4x4 unity_MatrixVP at 272
  66. }
  67.  
  68. Shader Disassembly:
  69. //
  70. // Generated by Microsoft (R) D3D Shader Disassembler
  71. //
  72. //
  73. // Input signature:
  74. //
  75. // Name                 Index   Mask Register SysValue  Format   Used
  76. // -------------------- ----- ------ -------- -------- ------- ------
  77. // POSITION                 0   xyzw        0     NONE   float   xyzw
  78. // TANGENT                  0   xyzw        1     NONE   float   xyz
  79. // NORMAL                   0   xyz         2     NONE   float   xyz
  80. // TEXCOORD                 0   xyzw        3     NONE   float   xyzw
  81. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  82. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  83. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  84. // COLOR                    0   xyzw        7     NONE   float   xyzw
  85. //
  86. //
  87. // Output signature:
  88. //
  89. // Name                 Index   Mask Register SysValue  Format   Used
  90. // -------------------- ----- ------ -------- -------- ------- ------
  91. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  92. // TEXCOORD                 0   xyzw        1     NONE   float   xyzw
  93. // TEXCOORD                 1   xyzw        2     NONE   float   xyzw
  94. // TEXCOORD                 2   xyzw        3     NONE   float   xyzw
  95. // TEXCOORD                 3   xyzw        4     NONE   float   xyzw
  96. // COLOR                    0   xyzw        5     NONE   float   xyzw
  97. // TEXCOORD                 4   xyz         6     NONE   float   xyz
  98. //
  99.       vs_4_0
  100.       dcl_constantbuffer CB0[6], immediateIndexed
  101.       dcl_constantbuffer CB1[46], immediateIndexed
  102.       dcl_constantbuffer CB2[7], immediateIndexed
  103.       dcl_constantbuffer CB3[21], immediateIndexed
  104.       dcl_input v0.xyzw
  105.       dcl_input v1.xyz
  106.       dcl_input v2.xyz
  107.       dcl_input v3.xyzw
  108.       dcl_input v4.xyzw
  109.       dcl_input v5.xyzw
  110.       dcl_input v6.xyzw
  111.       dcl_input v7.xyzw
  112.       dcl_output_siv o0.xyzw, position
  113.       dcl_output o1.xyzw
  114.       dcl_output o2.xyzw
  115.       dcl_output o3.xyzw
  116.       dcl_output o4.xyzw
  117.       dcl_output o5.xyzw
  118.       dcl_output o6.xyz
  119.       dcl_temps 10
  120.    0: add r0.x, cb0[4].y, cb0[4].x
  121.    1: ge r0.x, v3.z, r0.x
  122.    2: and r0.x, r0.x, l(0x3f800000)
  123.    3: add r0.y, -v3.z, cb0[4].x
  124.    4: div_sat r0.y, r0.y, v3.w
  125.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  126.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  127.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  128.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  129.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  130.   10: sincos r2.x, r3.x, r1.y
  131.   11: mov r4.z, r2.x
  132.   12: mov r4.y, r3.x
  133.   13: mov r4.x, -r2.x
  134.   14: sincos r1.x, r2.x, r1.x
  135.   15: sincos r3.x, r5.x, r1.z
  136.   16: mov r6.z, r1.x
  137.   17: mov r6.y, r2.x
  138.   18: mov r6.x, -r1.x
  139.   19: mov r1.z, r3.x
  140.   20: mov r1.y, r5.x
  141.   21: mov r1.x, -r3.x
  142.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  143.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  144.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  145.   25: mov r3.x, v4.w
  146.   26: mov r3.y, v5.w
  147.   27: mov r3.z, v6.w
  148.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  149.   29: dp2 r5.x, r1.zyzz, r5.yzyy
  150.   30: dp2 r7.y, r6.zyzz, r5.xwxx
  151.   31: dp2 r8.y, r6.yxyy, r5.xwxx
  152.   32: dp2 r7.x, r1.yxyy, r5.yzyy
  153.   33: dp2 r8.x, r4.yzyy, r7.xyxx
  154.   34: dp2 r8.z, r4.xyxx, r7.xyxx
  155.   35: add r5.xyz, r3.xyzx, r8.xyzx
  156.   36: add r0.xyz, r0.xzwx, r5.xyzx
  157.   37: mul r5.xyzw, r0.yyyy, cb2[1].xyzw
  158.   38: mad r5.xyzw, cb2[0].xyzw, r0.xxxx, r5.xyzw
  159.   39: mad r0.xyzw, cb2[2].xyzw, r0.zzzz, r5.xyzw
  160.   40: add r5.xyzw, r0.xyzw, cb2[3].xyzw
  161.   41: mad r0.xyz, cb2[3].xyzx, v0.wwww, r0.xyzx
  162.   42: mul r7.xyzw, r5.yyyy, cb3[18].xyzw
  163.   43: mad r7.xyzw, cb3[17].xyzw, r5.xxxx, r7.xyzw
  164.   44: mad r7.xyzw, cb3[19].xyzw, r5.zzzz, r7.xyzw
  165.   45: mad o0.xyzw, cb3[20].xyzw, r5.wwww, r7.xyzw
  166.   46: mad o1.xy, v3.xyxx, cb0[5].xyxx, cb0[5].zwzz
  167.   47: mov o1.zw, v3.zzzw
  168.   48: mad r5.yzw, v1.xxyz, r2.xxyz, -r3.xxyz
  169.   49: div r2.xyz, v2.xyzx, r2.xyzx
  170.   50: add r2.yzw, -r3.xxyz, r2.xxyz
  171.   51: dp2 r5.x, r1.zyzz, r5.yzyy
  172.   52: dp2 r2.x, r1.zyzz, r2.yzyy
  173.   53: dp2 r7.y, r6.zyzz, r5.xwxx
  174.   54: dp2 r8.y, r6.zyzz, r2.xwxx
  175.   55: dp2 r9.y, r6.yxyy, r2.xwxx
  176.   56: dp2 r6.y, r6.yxyy, r5.xwxx
  177.   57: dp2 r7.x, r1.yxyy, r5.yzyy
  178.   58: dp2 r8.x, r1.yxyy, r2.yzyy
  179.   59: dp2 r6.x, r4.yzyy, r7.xyxx
  180.   60: dp2 r9.x, r4.yzyy, r8.xyxx
  181.   61: dp2 r9.z, r4.xyxx, r8.xyxx
  182.   62: dp2 r6.z, r4.xyxx, r7.xyxx
  183.   63: add r1.xyz, r3.xyzx, r6.xyzx
  184.   64: add r2.xyz, r3.xyzx, r9.xyzx
  185.   65: mul r3.xyz, r1.yyyy, cb2[1].xyzx
  186.   66: mad r1.xyw, cb2[0].xyxz, r1.xxxx, r3.xyxz
  187.   67: mad r1.xyz, cb2[2].xyzx, r1.zzzz, r1.xywx
  188.   68: dp3 r0.w, r1.xyzx, r1.xyzx
  189.   69: rsq r0.w, r0.w
  190.   70: mul r1.xyz, r0.wwww, r1.xyzx
  191.   71: mov o2.x, r1.x
  192.   72: dp3 r3.x, r2.xyzx, cb2[4].xyzx
  193.   73: dp3 r3.y, r2.xyzx, cb2[5].xyzx
  194.   74: dp3 r3.z, r2.xyzx, cb2[6].xyzx
  195.   75: dp3 r0.w, r3.xyzx, r3.xyzx
  196.   76: rsq r0.w, r0.w
  197.   77: mul r2.xyzw, r0.wwww, r3.xyzz
  198.   78: mov o2.z, r2.x
  199.   79: mov o2.y, l(0)
  200.   80: mov o2.w, r0.x
  201.   81: mov o3.w, r0.y
  202.   82: mov o4.w, r0.z
  203.   83: mov o3.x, r1.y
  204.   84: mov o4.x, r1.z
  205.   85: mov o3.z, r2.y
  206.   86: mov o3.y, l(0)
  207.   87: mov o4.z, r2.w
  208.   88: mov o4.y, l(0)
  209.   89: mov o5.xyzw, v7.xyzw
  210.   90: mul r0.x, r2.y, r2.y
  211.   91: mad r0.x, r2.x, r2.x, -r0.x
  212.   92: mul r1.xyzw, r2.ywzx, r2.xyzw
  213.   93: dp4 r2.x, cb1[42].xyzw, r1.xyzw
  214.   94: dp4 r2.y, cb1[43].xyzw, r1.xyzw
  215.   95: dp4 r2.z, cb1[44].xyzw, r1.xyzw
  216.   96: mad o6.xyz, cb1[45].xyzx, r0.xxxx, r2.xyzx
  217.   97: ret
  218. // Approximately 0 instruction slots used
  219.  
  220.  
  221. -- Hardware tier variant: Tier 1
  222. -- Fragment shader for "d3d11":
  223. // Stats: 57 math, 5 temp registers, 5 textures, 4 branches
  224. Set 2D Texture "_TextureSample0" to slot 0 sampler slot 1
  225. Set 3D Texture "unity_ProbeVolumeSH" to slot 1 sampler slot 0
  226.  
  227. Constant Buffer "$Globals" (96 bytes) on slot 0 {
  228.   Vector4 _LightColor0 at 32
  229. }
  230. Constant Buffer "UnityLighting" (768 bytes) on slot 1 {
  231.   Vector4 _WorldSpaceLightPos0 at 0
  232.   Vector4 unity_SHAr at 624
  233.   Vector4 unity_SHAg at 640
  234.   Vector4 unity_SHAb at 656
  235.   Vector4 unity_OcclusionMaskSelector at 736
  236. }
  237. Constant Buffer "UnityProbeVolume" (112 bytes) on slot 2 {
  238.   Matrix4x4 unity_ProbeVolumeWorldToObject at 16
  239.   Vector4 unity_ProbeVolumeParams at 0
  240.   Vector3 unity_ProbeVolumeSizeInv at 80
  241.   Vector3 unity_ProbeVolumeMin at 96
  242. }
  243.  
  244. Shader Disassembly:
  245. //
  246. // Generated by Microsoft (R) D3D Shader Disassembler
  247. //
  248. //
  249. // Input signature:
  250. //
  251. // Name                 Index   Mask Register SysValue  Format   Used
  252. // -------------------- ----- ------ -------- -------- ------- ------
  253. // SV_POSITION              0   xyzw        0      POS   float      
  254. // TEXCOORD                 0   xyzw        1     NONE   float   xy  
  255. // TEXCOORD                 1   xyzw        2     NONE   float   xyzw
  256. // TEXCOORD                 2   xyzw        3     NONE   float   xyzw
  257. // TEXCOORD                 3   xyzw        4     NONE   float   xyzw
  258. // COLOR                    0   xyzw        5     NONE   float   xyz
  259. // TEXCOORD                 4   xyz         6     NONE   float   xyz
  260. //
  261. //
  262. // Output signature:
  263. //
  264. // Name                 Index   Mask Register SysValue  Format   Used
  265. // -------------------- ----- ------ -------- -------- ------- ------
  266. // SV_Target                0   xyzw        0   TARGET   float   xyzw
  267. //
  268.       ps_4_0
  269.       dcl_constantbuffer CB0[3], immediateIndexed
  270.       dcl_constantbuffer CB1[47], immediateIndexed
  271.       dcl_constantbuffer CB2[7], immediateIndexed
  272.       dcl_sampler s0, mode_default
  273.       dcl_sampler s1, mode_default
  274.       dcl_resource_texture2d (float,float,float,float) t0
  275.       dcl_resource_texture3d (float,float,float,float) t1
  276.       dcl_input_ps linear v1.xy
  277.       dcl_input_ps linear v2.xyzw
  278.       dcl_input_ps linear v3.xyzw
  279.       dcl_input_ps linear v4.xyzw
  280.       dcl_input_ps linear v5.xyz
  281.       dcl_input_ps linear v6.xyz
  282.       dcl_output o0.xyzw
  283.       dcl_temps 5
  284.    0: sample r0.xyzw, v1.xyxx, t0.xyzw, s1
  285.    1: mul r0.x, r0.w, r0.x
  286.    2: mad r0.xy, r0.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
  287.    3: dp2 r0.w, r0.xyxx, r0.xyxx
  288.    4: min r0.w, r0.w, l(1.000000)
  289.    5: add r0.w, -r0.w, l(1.000000)
  290.    6: sqrt r0.z, r0.w
  291.    7: eq r0.w, cb2[0].x, l(1.000000)
  292.    8: if_nz r0.w
  293.    9:   eq r1.x, cb2[0].y, l(1.000000)
  294.   10:   mul r1.yzw, v3.wwww, cb2[2].xxyz
  295.   11:   mad r1.yzw, cb2[1].xxyz, v2.wwww, r1.yyzw
  296.   12:   mad r1.yzw, cb2[3].xxyz, v4.wwww, r1.yyzw
  297.   13:   add r1.yzw, r1.yyzw, cb2[4].xxyz
  298.   14:   mov r2.y, v2.w
  299.   15:   mov r2.z, v3.w
  300.   16:   mov r2.w, v4.w
  301.   17:   movc r1.xyz, r1.xxxx, r1.yzwy, r2.yzwy
  302.   18:   add r1.xyz, r1.xyzx, -cb2[6].xyzx
  303.   19:   mul r1.yzw, r1.xxyz, cb2[5].xxyz
  304.   20:   mad r1.y, r1.y, l(0.250000), l(0.750000)
  305.   21:   mad r2.x, cb2[0].z, l(0.500000), l(0.750000)
  306.   22:   max r1.x, r1.y, r2.x
  307.   23:   sample r1.xyzw, r1.xzwx, t1.xyzw, s0
  308.   24: else
  309.   25:   mov r1.xyzw, l(1.000000,1.000000,1.000000,1.000000)
  310.   26: endif
  311.   27: dp4_sat r1.x, r1.xyzw, cb1[46].xyzw
  312.   28: dp3 r2.x, v2.xyzx, r0.xyzx
  313.   29: dp3 r2.y, v3.xyzx, r0.xyzx
  314.   30: dp3 r2.z, v4.xyzx, r0.xyzx
  315.   31: dp3 r0.x, r2.xyzx, r2.xyzx
  316.   32: rsq r0.x, r0.x
  317.   33: mul r2.xyz, r0.xxxx, r2.xyzx
  318.   34: mul r0.xyz, r1.xxxx, cb0[2].xyzx
  319.   35: if_nz r0.w
  320.   36:   eq r0.w, cb2[0].y, l(1.000000)
  321.   37:   mul r1.xyz, v3.wwww, cb2[2].xyzx
  322.   38:   mad r1.xyz, cb2[1].xyzx, v2.wwww, r1.xyzx
  323.   39:   mad r1.xyz, cb2[3].xyzx, v4.wwww, r1.xyzx
  324.   40:   add r1.xyz, r1.xyzx, cb2[4].xyzx
  325.   41:   mov r3.y, v2.w
  326.   42:   mov r3.z, v3.w
  327.   43:   mov r3.w, v4.w
  328.   44:   movc r1.xyz, r0.wwww, r1.xyzx, r3.yzwy
  329.   45:   add r1.xyz, r1.xyzx, -cb2[6].xyzx
  330.   46:   mul r1.yzw, r1.xxyz, cb2[5].xxyz
  331.   47:   mul r0.w, r1.y, l(0.250000)
  332.   48:   mul r1.y, cb2[0].z, l(0.500000)
  333.   49:   mad r3.x, -cb2[0].z, l(0.500000), l(0.250000)
  334.   50:   max r0.w, r0.w, r1.y
  335.   51:   min r1.x, r3.x, r0.w
  336.   52:   sample r3.xyzw, r1.xzwx, t1.xyzw, s0
  337.   53:   add r4.xyz, r1.xzwx, l(0.250000, 0.000000, 0.000000, 0.000000)
  338.   54:   sample r4.xyzw, r4.xyzx, t1.xyzw, s0
  339.   55:   add r1.xyz, r1.xzwx, l(0.500000, 0.000000, 0.000000, 0.000000)
  340.   56:   sample r1.xyzw, r1.xyzx, t1.xyzw, s0
  341.   57:   mov r2.w, l(1.000000)
  342.   58:   dp4 r3.x, r3.xyzw, r2.xyzw
  343.   59:   dp4 r3.y, r4.xyzw, r2.xyzw
  344.   60:   dp4 r3.z, r1.xyzw, r2.xyzw
  345.   61: else
  346.   62:   mov r2.w, l(1.000000)
  347.   63:   dp4 r3.x, cb1[39].xyzw, r2.xyzw
  348.   64:   dp4 r3.y, cb1[40].xyzw, r2.xyzw
  349.   65:   dp4 r3.z, cb1[41].xyzw, r2.xyzw
  350.   66: endif
  351.   67: add r1.xyz, r3.xyzx, v6.xyzx
  352.   68: max r1.xyz, r1.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  353.   69: log r1.xyz, r1.xyzx
  354.   70: mul r1.xyz, r1.xyzx, l(0.416667, 0.416667, 0.416667, 0.000000)
  355.   71: exp r1.xyz, r1.xyzx
  356.   72: mad r1.xyz, r1.xyzx, l(1.055000, 1.055000, 1.055000, 0.000000), l(-0.055000, -0.055000, -0.055000, 0.000000)
  357.   73: max r1.xyz, r1.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  358.   74: dp3 r0.w, r2.xyzx, cb1[0].xyzx
  359.   75: max r0.w, r0.w, l(0.000000)
  360.   76: mul r0.xyz, r0.xyzx, v5.xyzx
  361.   77: mul r1.xyz, r1.xyzx, v5.xyzx
  362.   78: mad o0.xyz, r0.xyzx, r0.wwww, r1.xyzx
  363.   79: mov o0.w, l(1.000000)
  364.   80: ret
  365. // Approximately 0 instruction slots used
  366.  
  367.  
  368. //////////////////////////////////////////////////////
  369. Keywords set in this variant: DIRECTIONAL LIGHTPROBE_SH
  370. -- Hardware tier variant: Tier 1
  371. -- Vertex shader for "d3d11":
  372. // Stats: 71 math, 10 temp registers
  373. Uses vertex data channel "Vertex"
  374. Uses vertex data channel "Normal"
  375. Uses vertex data channel "Color"
  376. Uses vertex data channel "TexCoord"
  377. Uses vertex data channel "TexCoord0"
  378. Uses vertex data channel "TexCoord1"
  379. Uses vertex data channel "TexCoord2"
  380. Uses vertex data channel "Tangent"
  381.  
  382. Constant Buffer "$Globals" (96 bytes) on slot 0 {
  383.   Float _t at 64
  384.   Float _PopInTime at 68
  385.   Vector4 _tex4coord_ST at 80
  386. }
  387. Constant Buffer "UnityLighting" (768 bytes) on slot 1 {
  388.   Vector4 unity_SHBr at 672
  389.   Vector4 unity_SHBg at 688
  390.   Vector4 unity_SHBb at 704
  391.   Vector4 unity_SHC at 720
  392. }
  393. Constant Buffer "UnityPerDraw" (160 bytes) on slot 2 {
  394.   Matrix4x4 unity_ObjectToWorld at 0
  395.   Matrix4x4 unity_WorldToObject at 64
  396. }
  397. Constant Buffer "UnityPerFrame" (368 bytes) on slot 3 {
  398.   Matrix4x4 unity_MatrixVP at 272
  399. }
  400.  
  401. Shader Disassembly:
  402. //
  403. // Generated by Microsoft (R) D3D Shader Disassembler
  404. //
  405. //
  406. // Input signature:
  407. //
  408. // Name                 Index   Mask Register SysValue  Format   Used
  409. // -------------------- ----- ------ -------- -------- ------- ------
  410. // POSITION                 0   xyzw        0     NONE   float   xyzw
  411. // TANGENT                  0   xyzw        1     NONE   float   xyz
  412. // NORMAL                   0   xyz         2     NONE   float   xyz
  413. // TEXCOORD                 0   xyzw        3     NONE   float   xyzw
  414. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  415. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  416. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  417. // COLOR                    0   xyzw        7     NONE   float   xyzw
  418. //
  419. //
  420. // Output signature:
  421. //
  422. // Name                 Index   Mask Register SysValue  Format   Used
  423. // -------------------- ----- ------ -------- -------- ------- ------
  424. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  425. // TEXCOORD                 0   xyzw        1     NONE   float   xyzw
  426. // TEXCOORD                 1   xyzw        2     NONE   float   xyzw
  427. // TEXCOORD                 2   xyzw        3     NONE   float   xyzw
  428. // TEXCOORD                 3   xyzw        4     NONE   float   xyzw
  429. // COLOR                    0   xyzw        5     NONE   float   xyzw
  430. // TEXCOORD                 4   xyz         6     NONE   float   xyz
  431. //
  432.       vs_4_0
  433.       dcl_constantbuffer CB0[6], immediateIndexed
  434.       dcl_constantbuffer CB1[46], immediateIndexed
  435.       dcl_constantbuffer CB2[7], immediateIndexed
  436.       dcl_constantbuffer CB3[21], immediateIndexed
  437.       dcl_input v0.xyzw
  438.       dcl_input v1.xyz
  439.       dcl_input v2.xyz
  440.       dcl_input v3.xyzw
  441.       dcl_input v4.xyzw
  442.       dcl_input v5.xyzw
  443.       dcl_input v6.xyzw
  444.       dcl_input v7.xyzw
  445.       dcl_output_siv o0.xyzw, position
  446.       dcl_output o1.xyzw
  447.       dcl_output o2.xyzw
  448.       dcl_output o3.xyzw
  449.       dcl_output o4.xyzw
  450.       dcl_output o5.xyzw
  451.       dcl_output o6.xyz
  452.       dcl_temps 10
  453.    0: add r0.x, cb0[4].y, cb0[4].x
  454.    1: ge r0.x, v3.z, r0.x
  455.    2: and r0.x, r0.x, l(0x3f800000)
  456.    3: add r0.y, -v3.z, cb0[4].x
  457.    4: div_sat r0.y, r0.y, v3.w
  458.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  459.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  460.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  461.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  462.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  463.   10: sincos r2.x, r3.x, r1.y
  464.   11: mov r4.z, r2.x
  465.   12: mov r4.y, r3.x
  466.   13: mov r4.x, -r2.x
  467.   14: sincos r1.x, r2.x, r1.x
  468.   15: sincos r3.x, r5.x, r1.z
  469.   16: mov r6.z, r1.x
  470.   17: mov r6.y, r2.x
  471.   18: mov r6.x, -r1.x
  472.   19: mov r1.z, r3.x
  473.   20: mov r1.y, r5.x
  474.   21: mov r1.x, -r3.x
  475.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  476.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  477.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  478.   25: mov r3.x, v4.w
  479.   26: mov r3.y, v5.w
  480.   27: mov r3.z, v6.w
  481.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  482.   29: dp2 r5.x, r1.zyzz, r5.yzyy
  483.   30: dp2 r7.y, r6.zyzz, r5.xwxx
  484.   31: dp2 r8.y, r6.yxyy, r5.xwxx
  485.   32: dp2 r7.x, r1.yxyy, r5.yzyy
  486.   33: dp2 r8.x, r4.yzyy, r7.xyxx
  487.   34: dp2 r8.z, r4.xyxx, r7.xyxx
  488.   35: add r5.xyz, r3.xyzx, r8.xyzx
  489.   36: add r0.xyz, r0.xzwx, r5.xyzx
  490.   37: mul r5.xyzw, r0.yyyy, cb2[1].xyzw
  491.   38: mad r5.xyzw, cb2[0].xyzw, r0.xxxx, r5.xyzw
  492.   39: mad r0.xyzw, cb2[2].xyzw, r0.zzzz, r5.xyzw
  493.   40: add r5.xyzw, r0.xyzw, cb2[3].xyzw
  494.   41: mad r0.xyz, cb2[3].xyzx, v0.wwww, r0.xyzx
  495.   42: mul r7.xyzw, r5.yyyy, cb3[18].xyzw
  496.   43: mad r7.xyzw, cb3[17].xyzw, r5.xxxx, r7.xyzw
  497.   44: mad r7.xyzw, cb3[19].xyzw, r5.zzzz, r7.xyzw
  498.   45: mad o0.xyzw, cb3[20].xyzw, r5.wwww, r7.xyzw
  499.   46: mad o1.xy, v3.xyxx, cb0[5].xyxx, cb0[5].zwzz
  500.   47: mov o1.zw, v3.zzzw
  501.   48: mad r5.yzw, v1.xxyz, r2.xxyz, -r3.xxyz
  502.   49: div r2.xyz, v2.xyzx, r2.xyzx
  503.   50: add r2.yzw, -r3.xxyz, r2.xxyz
  504.   51: dp2 r5.x, r1.zyzz, r5.yzyy
  505.   52: dp2 r2.x, r1.zyzz, r2.yzyy
  506.   53: dp2 r7.y, r6.zyzz, r5.xwxx
  507.   54: dp2 r8.y, r6.zyzz, r2.xwxx
  508.   55: dp2 r9.y, r6.yxyy, r2.xwxx
  509.   56: dp2 r6.y, r6.yxyy, r5.xwxx
  510.   57: dp2 r7.x, r1.yxyy, r5.yzyy
  511.   58: dp2 r8.x, r1.yxyy, r2.yzyy
  512.   59: dp2 r6.x, r4.yzyy, r7.xyxx
  513.   60: dp2 r9.x, r4.yzyy, r8.xyxx
  514.   61: dp2 r9.z, r4.xyxx, r8.xyxx
  515.   62: dp2 r6.z, r4.xyxx, r7.xyxx
  516.   63: add r1.xyz, r3.xyzx, r6.xyzx
  517.   64: add r2.xyz, r3.xyzx, r9.xyzx
  518.   65: mul r3.xyz, r1.yyyy, cb2[1].xyzx
  519.   66: mad r1.xyw, cb2[0].xyxz, r1.xxxx, r3.xyxz
  520.   67: mad r1.xyz, cb2[2].xyzx, r1.zzzz, r1.xywx
  521.   68: dp3 r0.w, r1.xyzx, r1.xyzx
  522.   69: rsq r0.w, r0.w
  523.   70: mul r1.xyz, r0.wwww, r1.xyzx
  524.   71: mov o2.x, r1.x
  525.   72: dp3 r3.x, r2.xyzx, cb2[4].xyzx
  526.   73: dp3 r3.y, r2.xyzx, cb2[5].xyzx
  527.   74: dp3 r3.z, r2.xyzx, cb2[6].xyzx
  528.   75: dp3 r0.w, r3.xyzx, r3.xyzx
  529.   76: rsq r0.w, r0.w
  530.   77: mul r2.xyzw, r0.wwww, r3.xyzz
  531.   78: mov o2.z, r2.x
  532.   79: mov o2.y, l(0)
  533.   80: mov o2.w, r0.x
  534.   81: mov o3.w, r0.y
  535.   82: mov o4.w, r0.z
  536.   83: mov o3.x, r1.y
  537.   84: mov o4.x, r1.z
  538.   85: mov o3.z, r2.y
  539.   86: mov o3.y, l(0)
  540.   87: mov o4.z, r2.w
  541.   88: mov o4.y, l(0)
  542.   89: mov o5.xyzw, v7.xyzw
  543.   90: mul r0.x, r2.y, r2.y
  544.   91: mad r0.x, r2.x, r2.x, -r0.x
  545.   92: mul r1.xyzw, r2.ywzx, r2.xyzw
  546.   93: dp4 r2.x, cb1[42].xyzw, r1.xyzw
  547.   94: dp4 r2.y, cb1[43].xyzw, r1.xyzw
  548.   95: dp4 r2.z, cb1[44].xyzw, r1.xyzw
  549.   96: mad o6.xyz, cb1[45].xyzx, r0.xxxx, r2.xyzx
  550.   97: ret
  551. // Approximately 0 instruction slots used
  552.  
  553.  
  554. -- Hardware tier variant: Tier 1
  555. -- Fragment shader for "d3d11":
  556. // Stats: 57 math, 5 temp registers, 5 textures, 4 branches
  557. Set 2D Texture "_TextureSample0" to slot 0 sampler slot 1
  558. Set 3D Texture "unity_ProbeVolumeSH" to slot 1 sampler slot 0
  559.  
  560. Constant Buffer "$Globals" (96 bytes) on slot 0 {
  561.   Vector4 _LightColor0 at 32
  562. }
  563. Constant Buffer "UnityLighting" (768 bytes) on slot 1 {
  564.   Vector4 _WorldSpaceLightPos0 at 0
  565.   Vector4 unity_SHAr at 624
  566.   Vector4 unity_SHAg at 640
  567.   Vector4 unity_SHAb at 656
  568.   Vector4 unity_OcclusionMaskSelector at 736
  569. }
  570. Constant Buffer "UnityProbeVolume" (112 bytes) on slot 2 {
  571.   Matrix4x4 unity_ProbeVolumeWorldToObject at 16
  572.   Vector4 unity_ProbeVolumeParams at 0
  573.   Vector3 unity_ProbeVolumeSizeInv at 80
  574.   Vector3 unity_ProbeVolumeMin at 96
  575. }
  576.  
  577. Shader Disassembly:
  578. //
  579. // Generated by Microsoft (R) D3D Shader Disassembler
  580. //
  581. //
  582. // Input signature:
  583. //
  584. // Name                 Index   Mask Register SysValue  Format   Used
  585. // -------------------- ----- ------ -------- -------- ------- ------
  586. // SV_POSITION              0   xyzw        0      POS   float      
  587. // TEXCOORD                 0   xyzw        1     NONE   float   xy  
  588. // TEXCOORD                 1   xyzw        2     NONE   float   xyzw
  589. // TEXCOORD                 2   xyzw        3     NONE   float   xyzw
  590. // TEXCOORD                 3   xyzw        4     NONE   float   xyzw
  591. // COLOR                    0   xyzw        5     NONE   float   xyz
  592. // TEXCOORD                 4   xyz         6     NONE   float   xyz
  593. //
  594. //
  595. // Output signature:
  596. //
  597. // Name                 Index   Mask Register SysValue  Format   Used
  598. // -------------------- ----- ------ -------- -------- ------- ------
  599. // SV_Target                0   xyzw        0   TARGET   float   xyzw
  600. //
  601.       ps_4_0
  602.       dcl_constantbuffer CB0[3], immediateIndexed
  603.       dcl_constantbuffer CB1[47], immediateIndexed
  604.       dcl_constantbuffer CB2[7], immediateIndexed
  605.       dcl_sampler s0, mode_default
  606.       dcl_sampler s1, mode_default
  607.       dcl_resource_texture2d (float,float,float,float) t0
  608.       dcl_resource_texture3d (float,float,float,float) t1
  609.       dcl_input_ps linear v1.xy
  610.       dcl_input_ps linear v2.xyzw
  611.       dcl_input_ps linear v3.xyzw
  612.       dcl_input_ps linear v4.xyzw
  613.       dcl_input_ps linear v5.xyz
  614.       dcl_input_ps linear v6.xyz
  615.       dcl_output o0.xyzw
  616.       dcl_temps 5
  617.    0: sample r0.xyzw, v1.xyxx, t0.xyzw, s1
  618.    1: mul r0.x, r0.w, r0.x
  619.    2: mad r0.xy, r0.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
  620.    3: dp2 r0.w, r0.xyxx, r0.xyxx
  621.    4: min r0.w, r0.w, l(1.000000)
  622.    5: add r0.w, -r0.w, l(1.000000)
  623.    6: sqrt r0.z, r0.w
  624.    7: eq r0.w, cb2[0].x, l(1.000000)
  625.    8: if_nz r0.w
  626.    9:   eq r1.x, cb2[0].y, l(1.000000)
  627.   10:   mul r1.yzw, v3.wwww, cb2[2].xxyz
  628.   11:   mad r1.yzw, cb2[1].xxyz, v2.wwww, r1.yyzw
  629.   12:   mad r1.yzw, cb2[3].xxyz, v4.wwww, r1.yyzw
  630.   13:   add r1.yzw, r1.yyzw, cb2[4].xxyz
  631.   14:   mov r2.y, v2.w
  632.   15:   mov r2.z, v3.w
  633.   16:   mov r2.w, v4.w
  634.   17:   movc r1.xyz, r1.xxxx, r1.yzwy, r2.yzwy
  635.   18:   add r1.xyz, r1.xyzx, -cb2[6].xyzx
  636.   19:   mul r1.yzw, r1.xxyz, cb2[5].xxyz
  637.   20:   mad r1.y, r1.y, l(0.250000), l(0.750000)
  638.   21:   mad r2.x, cb2[0].z, l(0.500000), l(0.750000)
  639.   22:   max r1.x, r1.y, r2.x
  640.   23:   sample r1.xyzw, r1.xzwx, t1.xyzw, s0
  641.   24: else
  642.   25:   mov r1.xyzw, l(1.000000,1.000000,1.000000,1.000000)
  643.   26: endif
  644.   27: dp4_sat r1.x, r1.xyzw, cb1[46].xyzw
  645.   28: dp3 r2.x, v2.xyzx, r0.xyzx
  646.   29: dp3 r2.y, v3.xyzx, r0.xyzx
  647.   30: dp3 r2.z, v4.xyzx, r0.xyzx
  648.   31: dp3 r0.x, r2.xyzx, r2.xyzx
  649.   32: rsq r0.x, r0.x
  650.   33: mul r2.xyz, r0.xxxx, r2.xyzx
  651.   34: mul r0.xyz, r1.xxxx, cb0[2].xyzx
  652.   35: if_nz r0.w
  653.   36:   eq r0.w, cb2[0].y, l(1.000000)
  654.   37:   mul r1.xyz, v3.wwww, cb2[2].xyzx
  655.   38:   mad r1.xyz, cb2[1].xyzx, v2.wwww, r1.xyzx
  656.   39:   mad r1.xyz, cb2[3].xyzx, v4.wwww, r1.xyzx
  657.   40:   add r1.xyz, r1.xyzx, cb2[4].xyzx
  658.   41:   mov r3.y, v2.w
  659.   42:   mov r3.z, v3.w
  660.   43:   mov r3.w, v4.w
  661.   44:   movc r1.xyz, r0.wwww, r1.xyzx, r3.yzwy
  662.   45:   add r1.xyz, r1.xyzx, -cb2[6].xyzx
  663.   46:   mul r1.yzw, r1.xxyz, cb2[5].xxyz
  664.   47:   mul r0.w, r1.y, l(0.250000)
  665.   48:   mul r1.y, cb2[0].z, l(0.500000)
  666.   49:   mad r3.x, -cb2[0].z, l(0.500000), l(0.250000)
  667.   50:   max r0.w, r0.w, r1.y
  668.   51:   min r1.x, r3.x, r0.w
  669.   52:   sample r3.xyzw, r1.xzwx, t1.xyzw, s0
  670.   53:   add r4.xyz, r1.xzwx, l(0.250000, 0.000000, 0.000000, 0.000000)
  671.   54:   sample r4.xyzw, r4.xyzx, t1.xyzw, s0
  672.   55:   add r1.xyz, r1.xzwx, l(0.500000, 0.000000, 0.000000, 0.000000)
  673.   56:   sample r1.xyzw, r1.xyzx, t1.xyzw, s0
  674.   57:   mov r2.w, l(1.000000)
  675.   58:   dp4 r3.x, r3.xyzw, r2.xyzw
  676.   59:   dp4 r3.y, r4.xyzw, r2.xyzw
  677.   60:   dp4 r3.z, r1.xyzw, r2.xyzw
  678.   61: else
  679.   62:   mov r2.w, l(1.000000)
  680.   63:   dp4 r3.x, cb1[39].xyzw, r2.xyzw
  681.   64:   dp4 r3.y, cb1[40].xyzw, r2.xyzw
  682.   65:   dp4 r3.z, cb1[41].xyzw, r2.xyzw
  683.   66: endif
  684.   67: add r1.xyz, r3.xyzx, v6.xyzx
  685.   68: max r1.xyz, r1.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  686.   69: log r1.xyz, r1.xyzx
  687.   70: mul r1.xyz, r1.xyzx, l(0.416667, 0.416667, 0.416667, 0.000000)
  688.   71: exp r1.xyz, r1.xyzx
  689.   72: mad r1.xyz, r1.xyzx, l(1.055000, 1.055000, 1.055000, 0.000000), l(-0.055000, -0.055000, -0.055000, 0.000000)
  690.   73: max r1.xyz, r1.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  691.   74: dp3 r0.w, r2.xyzx, cb1[0].xyzx
  692.   75: max r0.w, r0.w, l(0.000000)
  693.   76: mul r0.xyz, r0.xyzx, v5.xyzx
  694.   77: mul r1.xyz, r1.xyzx, v5.xyzx
  695.   78: mad o0.xyz, r0.xyzx, r0.wwww, r1.xyzx
  696.   79: mov o0.w, l(1.000000)
  697.   80: ret
  698. // Approximately 0 instruction slots used
  699.  
  700.  
  701. //////////////////////////////////////////////////////
  702. Keywords set in this variant: DIRECTIONAL VERTEXLIGHT_ON
  703. -- Hardware tier variant: Tier 1
  704. -- Vertex shader for "d3d11":
  705. // Stats: 94 math, 10 temp registers
  706. Uses vertex data channel "Vertex"
  707. Uses vertex data channel "Normal"
  708. Uses vertex data channel "Color"
  709. Uses vertex data channel "TexCoord"
  710. Uses vertex data channel "TexCoord0"
  711. Uses vertex data channel "TexCoord1"
  712. Uses vertex data channel "TexCoord2"
  713. Uses vertex data channel "Tangent"
  714.  
  715. Constant Buffer "$Globals" (96 bytes) on slot 0 {
  716.   Float _t at 64
  717.   Float _PopInTime at 68
  718.   Vector4 _tex4coord_ST at 80
  719. }
  720. Constant Buffer "UnityLighting" (768 bytes) on slot 1 {
  721.   Vector4 unity_4LightPosX0 at 48
  722.   Vector4 unity_4LightPosY0 at 64
  723.   Vector4 unity_4LightPosZ0 at 80
  724.   Vector4 unity_4LightAtten0 at 96
  725.   Vector4 unity_LightColor[8] at 112
  726.   Vector4 unity_SHBr at 672
  727.   Vector4 unity_SHBg at 688
  728.   Vector4 unity_SHBb at 704
  729.   Vector4 unity_SHC at 720
  730. }
  731. Constant Buffer "UnityPerDraw" (160 bytes) on slot 2 {
  732.   Matrix4x4 unity_ObjectToWorld at 0
  733.   Matrix4x4 unity_WorldToObject at 64
  734. }
  735. Constant Buffer "UnityPerFrame" (368 bytes) on slot 3 {
  736.   Matrix4x4 unity_MatrixVP at 272
  737. }
  738.  
  739. Shader Disassembly:
  740. //
  741. // Generated by Microsoft (R) D3D Shader Disassembler
  742. //
  743. //
  744. // Input signature:
  745. //
  746. // Name                 Index   Mask Register SysValue  Format   Used
  747. // -------------------- ----- ------ -------- -------- ------- ------
  748. // POSITION                 0   xyzw        0     NONE   float   xyzw
  749. // TANGENT                  0   xyzw        1     NONE   float   xyz
  750. // NORMAL                   0   xyz         2     NONE   float   xyz
  751. // TEXCOORD                 0   xyzw        3     NONE   float   xyzw
  752. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  753. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  754. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  755. // COLOR                    0   xyzw        7     NONE   float   xyzw
  756. //
  757. //
  758. // Output signature:
  759. //
  760. // Name                 Index   Mask Register SysValue  Format   Used
  761. // -------------------- ----- ------ -------- -------- ------- ------
  762. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  763. // TEXCOORD                 0   xyzw        1     NONE   float   xyzw
  764. // TEXCOORD                 1   xyzw        2     NONE   float   xyzw
  765. // TEXCOORD                 2   xyzw        3     NONE   float   xyzw
  766. // TEXCOORD                 3   xyzw        4     NONE   float   xyzw
  767. // COLOR                    0   xyzw        5     NONE   float   xyzw
  768. // TEXCOORD                 4   xyz         6     NONE   float   xyz
  769. //
  770.       vs_4_0
  771.       dcl_constantbuffer CB0[6], immediateIndexed
  772.       dcl_constantbuffer CB1[46], immediateIndexed
  773.       dcl_constantbuffer CB2[7], immediateIndexed
  774.       dcl_constantbuffer CB3[21], immediateIndexed
  775.       dcl_input v0.xyzw
  776.       dcl_input v1.xyz
  777.       dcl_input v2.xyz
  778.       dcl_input v3.xyzw
  779.       dcl_input v4.xyzw
  780.       dcl_input v5.xyzw
  781.       dcl_input v6.xyzw
  782.       dcl_input v7.xyzw
  783.       dcl_output_siv o0.xyzw, position
  784.       dcl_output o1.xyzw
  785.       dcl_output o2.xyzw
  786.       dcl_output o3.xyzw
  787.       dcl_output o4.xyzw
  788.       dcl_output o5.xyzw
  789.       dcl_output o6.xyz
  790.       dcl_temps 10
  791.    0: add r0.x, cb0[4].y, cb0[4].x
  792.    1: ge r0.x, v3.z, r0.x
  793.    2: and r0.x, r0.x, l(0x3f800000)
  794.    3: add r0.y, -v3.z, cb0[4].x
  795.    4: div_sat r0.y, r0.y, v3.w
  796.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  797.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  798.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  799.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  800.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  801.   10: sincos r2.x, r3.x, r1.y
  802.   11: mov r4.z, r2.x
  803.   12: mov r4.y, r3.x
  804.   13: mov r4.x, -r2.x
  805.   14: sincos r1.x, r2.x, r1.x
  806.   15: sincos r3.x, r5.x, r1.z
  807.   16: mov r6.z, r1.x
  808.   17: mov r6.y, r2.x
  809.   18: mov r6.x, -r1.x
  810.   19: mov r1.z, r3.x
  811.   20: mov r1.y, r5.x
  812.   21: mov r1.x, -r3.x
  813.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  814.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  815.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  816.   25: mov r3.x, v4.w
  817.   26: mov r3.y, v5.w
  818.   27: mov r3.z, v6.w
  819.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  820.   29: dp2 r5.x, r1.zyzz, r5.yzyy
  821.   30: dp2 r7.y, r6.zyzz, r5.xwxx
  822.   31: dp2 r8.y, r6.yxyy, r5.xwxx
  823.   32: dp2 r7.x, r1.yxyy, r5.yzyy
  824.   33: dp2 r8.x, r4.yzyy, r7.xyxx
  825.   34: dp2 r8.z, r4.xyxx, r7.xyxx
  826.   35: add r5.xyz, r3.xyzx, r8.xyzx
  827.   36: add r0.xyz, r0.xzwx, r5.xyzx
  828.   37: mul r5.xyzw, r0.yyyy, cb2[1].xyzw
  829.   38: mad r5.xyzw, cb2[0].xyzw, r0.xxxx, r5.xyzw
  830.   39: mad r0.xyzw, cb2[2].xyzw, r0.zzzz, r5.xyzw
  831.   40: add r5.xyzw, r0.xyzw, cb2[3].xyzw
  832.   41: mad r0.xyz, cb2[3].xyzx, v0.wwww, r0.xyzx
  833.   42: mul r7.xyzw, r5.yyyy, cb3[18].xyzw
  834.   43: mad r7.xyzw, cb3[17].xyzw, r5.xxxx, r7.xyzw
  835.   44: mad r7.xyzw, cb3[19].xyzw, r5.zzzz, r7.xyzw
  836.   45: mad o0.xyzw, cb3[20].xyzw, r5.wwww, r7.xyzw
  837.   46: mad o1.xy, v3.xyxx, cb0[5].xyxx, cb0[5].zwzz
  838.   47: mov o1.zw, v3.zzzw
  839.   48: mad r5.yzw, v1.xxyz, r2.xxyz, -r3.xxyz
  840.   49: div r2.xyz, v2.xyzx, r2.xyzx
  841.   50: add r2.yzw, -r3.xxyz, r2.xxyz
  842.   51: dp2 r5.x, r1.zyzz, r5.yzyy
  843.   52: dp2 r2.x, r1.zyzz, r2.yzyy
  844.   53: dp2 r7.y, r6.zyzz, r5.xwxx
  845.   54: dp2 r8.y, r6.zyzz, r2.xwxx
  846.   55: dp2 r9.y, r6.yxyy, r2.xwxx
  847.   56: dp2 r6.y, r6.yxyy, r5.xwxx
  848.   57: dp2 r7.x, r1.yxyy, r5.yzyy
  849.   58: dp2 r8.x, r1.yxyy, r2.yzyy
  850.   59: dp2 r6.x, r4.yzyy, r7.xyxx
  851.   60: dp2 r9.x, r4.yzyy, r8.xyxx
  852.   61: dp2 r9.z, r4.xyxx, r8.xyxx
  853.   62: dp2 r6.z, r4.xyxx, r7.xyxx
  854.   63: add r1.xyz, r3.xyzx, r6.xyzx
  855.   64: add r2.xyz, r3.xyzx, r9.xyzx
  856.   65: mul r3.xyz, r1.yyyy, cb2[1].xyzx
  857.   66: mad r1.xyw, cb2[0].xyxz, r1.xxxx, r3.xyxz
  858.   67: mad r1.xyz, cb2[2].xyzx, r1.zzzz, r1.xywx
  859.   68: dp3 r0.w, r1.xyzx, r1.xyzx
  860.   69: rsq r0.w, r0.w
  861.   70: mul r1.xyz, r0.wwww, r1.xyzx
  862.   71: mov o2.x, r1.x
  863.   72: dp3 r3.x, r2.xyzx, cb2[4].xyzx
  864.   73: dp3 r3.y, r2.xyzx, cb2[5].xyzx
  865.   74: dp3 r3.z, r2.xyzx, cb2[6].xyzx
  866.   75: dp3 r0.w, r3.xyzx, r3.xyzx
  867.   76: rsq r0.w, r0.w
  868.   77: mul r2.xyzw, r0.wwww, r3.xyzz
  869.   78: mov o2.z, r2.x
  870.   79: mov o2.y, l(0)
  871.   80: mov o2.w, r0.x
  872.   81: mov o3.x, r1.y
  873.   82: mov o4.x, r1.z
  874.   83: mov o3.w, r0.y
  875.   84: mov o3.z, r2.y
  876.   85: mov o3.y, l(0)
  877.   86: mov o4.w, r0.z
  878.   87: mov o4.z, r2.w
  879.   88: mov o4.y, l(0)
  880.   89: mov o5.xyzw, v7.xyzw
  881.   90: add r1.xyzw, -r0.xxxx, cb1[3].xyzw
  882.   91: add r3.xyzw, -r0.yyyy, cb1[4].xyzw
  883.   92: add r0.xyzw, -r0.zzzz, cb1[5].xyzw
  884.   93: mul r4.xyzw, r2.yyyy, r3.xyzw
  885.   94: mul r3.xyzw, r3.xyzw, r3.xyzw
  886.   95: mad r3.xyzw, r1.xyzw, r1.xyzw, r3.xyzw
  887.   96: mad r1.xyzw, r1.xyzw, r2.xxxx, r4.xyzw
  888.   97: mad r1.xyzw, r0.xyzw, r2.wwzw, r1.xyzw
  889.   98: mad r0.xyzw, r0.xyzw, r0.xyzw, r3.xyzw
  890.   99: max r0.xyzw, r0.xyzw, l(0.000001, 0.000001, 0.000001, 0.000001)
  891.  100: rsq r3.xyzw, r0.xyzw
  892.  101: mad r0.xyzw, r0.xyzw, cb1[6].xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  893.  102: div r0.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000), r0.xyzw
  894.  103: mul r1.xyzw, r1.xyzw, r3.xyzw
  895.  104: max r1.xyzw, r1.xyzw, l(0.000000, 0.000000, 0.000000, 0.000000)
  896.  105: mul r0.xyzw, r0.xyzw, r1.xyzw
  897.  106: mul r1.xyz, r0.yyyy, cb1[8].xyzx
  898.  107: mad r1.xyz, cb1[7].xyzx, r0.xxxx, r1.xyzx
  899.  108: mad r0.xyz, cb1[9].xyzx, r0.zzzz, r1.xyzx
  900.  109: mad r0.xyz, cb1[10].xyzx, r0.wwww, r0.xyzx
  901.  110: mad r1.xyz, r0.xyzx, l(0.305306, 0.305306, 0.305306, 0.000000), l(0.682171, 0.682171, 0.682171, 0.000000)
  902.  111: mad r1.xyz, r0.xyzx, r1.xyzx, l(0.012523, 0.012523, 0.012523, 0.000000)
  903.  112: mul r0.w, r2.y, r2.y
  904.  113: mad r0.w, r2.x, r2.x, -r0.w
  905.  114: mul r2.xyzw, r2.ywzx, r2.xyzw
  906.  115: dp4 r3.x, cb1[42].xyzw, r2.xyzw
  907.  116: dp4 r3.y, cb1[43].xyzw, r2.xyzw
  908.  117: dp4 r3.z, cb1[44].xyzw, r2.xyzw
  909.  118: mad r2.xyz, cb1[45].xyzx, r0.wwww, r3.xyzx
  910.  119: mad o6.xyz, r0.xyzx, r1.xyzx, r2.xyzx
  911.  120: ret
  912. // Approximately 0 instruction slots used
  913.  
  914.  
  915. -- Fragment shader for "d3d11":
  916. // No shader variant for this keyword set. The closest match will be used instead.
  917.  
  918. //////////////////////////////////////////////////////
  919. Keywords set in this variant: DIRECTIONAL LIGHTPROBE_SH VERTEXLIGHT_ON
  920. -- Hardware tier variant: Tier 1
  921. -- Vertex shader for "d3d11":
  922. // Stats: 94 math, 10 temp registers
  923. Uses vertex data channel "Vertex"
  924. Uses vertex data channel "Normal"
  925. Uses vertex data channel "Color"
  926. Uses vertex data channel "TexCoord"
  927. Uses vertex data channel "TexCoord0"
  928. Uses vertex data channel "TexCoord1"
  929. Uses vertex data channel "TexCoord2"
  930. Uses vertex data channel "Tangent"
  931.  
  932. Constant Buffer "$Globals" (96 bytes) on slot 0 {
  933.   Float _t at 64
  934.   Float _PopInTime at 68
  935.   Vector4 _tex4coord_ST at 80
  936. }
  937. Constant Buffer "UnityLighting" (768 bytes) on slot 1 {
  938.   Vector4 unity_4LightPosX0 at 48
  939.   Vector4 unity_4LightPosY0 at 64
  940.   Vector4 unity_4LightPosZ0 at 80
  941.   Vector4 unity_4LightAtten0 at 96
  942.   Vector4 unity_LightColor[8] at 112
  943.   Vector4 unity_SHBr at 672
  944.   Vector4 unity_SHBg at 688
  945.   Vector4 unity_SHBb at 704
  946.   Vector4 unity_SHC at 720
  947. }
  948. Constant Buffer "UnityPerDraw" (160 bytes) on slot 2 {
  949.   Matrix4x4 unity_ObjectToWorld at 0
  950.   Matrix4x4 unity_WorldToObject at 64
  951. }
  952. Constant Buffer "UnityPerFrame" (368 bytes) on slot 3 {
  953.   Matrix4x4 unity_MatrixVP at 272
  954. }
  955.  
  956. Shader Disassembly:
  957. //
  958. // Generated by Microsoft (R) D3D Shader Disassembler
  959. //
  960. //
  961. // Input signature:
  962. //
  963. // Name                 Index   Mask Register SysValue  Format   Used
  964. // -------------------- ----- ------ -------- -------- ------- ------
  965. // POSITION                 0   xyzw        0     NONE   float   xyzw
  966. // TANGENT                  0   xyzw        1     NONE   float   xyz
  967. // NORMAL                   0   xyz         2     NONE   float   xyz
  968. // TEXCOORD                 0   xyzw        3     NONE   float   xyzw
  969. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  970. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  971. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  972. // COLOR                    0   xyzw        7     NONE   float   xyzw
  973. //
  974. //
  975. // Output signature:
  976. //
  977. // Name                 Index   Mask Register SysValue  Format   Used
  978. // -------------------- ----- ------ -------- -------- ------- ------
  979. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  980. // TEXCOORD                 0   xyzw        1     NONE   float   xyzw
  981. // TEXCOORD                 1   xyzw        2     NONE   float   xyzw
  982. // TEXCOORD                 2   xyzw        3     NONE   float   xyzw
  983. // TEXCOORD                 3   xyzw        4     NONE   float   xyzw
  984. // COLOR                    0   xyzw        5     NONE   float   xyzw
  985. // TEXCOORD                 4   xyz         6     NONE   float   xyz
  986. //
  987.       vs_4_0
  988.       dcl_constantbuffer CB0[6], immediateIndexed
  989.       dcl_constantbuffer CB1[46], immediateIndexed
  990.       dcl_constantbuffer CB2[7], immediateIndexed
  991.       dcl_constantbuffer CB3[21], immediateIndexed
  992.       dcl_input v0.xyzw
  993.       dcl_input v1.xyz
  994.       dcl_input v2.xyz
  995.       dcl_input v3.xyzw
  996.       dcl_input v4.xyzw
  997.       dcl_input v5.xyzw
  998.       dcl_input v6.xyzw
  999.       dcl_input v7.xyzw
  1000.       dcl_output_siv o0.xyzw, position
  1001.       dcl_output o1.xyzw
  1002.       dcl_output o2.xyzw
  1003.       dcl_output o3.xyzw
  1004.       dcl_output o4.xyzw
  1005.       dcl_output o5.xyzw
  1006.       dcl_output o6.xyz
  1007.       dcl_temps 10
  1008.    0: add r0.x, cb0[4].y, cb0[4].x
  1009.    1: ge r0.x, v3.z, r0.x
  1010.    2: and r0.x, r0.x, l(0x3f800000)
  1011.    3: add r0.y, -v3.z, cb0[4].x
  1012.    4: div_sat r0.y, r0.y, v3.w
  1013.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  1014.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  1015.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  1016.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  1017.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  1018.   10: sincos r2.x, r3.x, r1.y
  1019.   11: mov r4.z, r2.x
  1020.   12: mov r4.y, r3.x
  1021.   13: mov r4.x, -r2.x
  1022.   14: sincos r1.x, r2.x, r1.x
  1023.   15: sincos r3.x, r5.x, r1.z
  1024.   16: mov r6.z, r1.x
  1025.   17: mov r6.y, r2.x
  1026.   18: mov r6.x, -r1.x
  1027.   19: mov r1.z, r3.x
  1028.   20: mov r1.y, r5.x
  1029.   21: mov r1.x, -r3.x
  1030.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  1031.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  1032.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  1033.   25: mov r3.x, v4.w
  1034.   26: mov r3.y, v5.w
  1035.   27: mov r3.z, v6.w
  1036.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  1037.   29: dp2 r5.x, r1.zyzz, r5.yzyy
  1038.   30: dp2 r7.y, r6.zyzz, r5.xwxx
  1039.   31: dp2 r8.y, r6.yxyy, r5.xwxx
  1040.   32: dp2 r7.x, r1.yxyy, r5.yzyy
  1041.   33: dp2 r8.x, r4.yzyy, r7.xyxx
  1042.   34: dp2 r8.z, r4.xyxx, r7.xyxx
  1043.   35: add r5.xyz, r3.xyzx, r8.xyzx
  1044.   36: add r0.xyz, r0.xzwx, r5.xyzx
  1045.   37: mul r5.xyzw, r0.yyyy, cb2[1].xyzw
  1046.   38: mad r5.xyzw, cb2[0].xyzw, r0.xxxx, r5.xyzw
  1047.   39: mad r0.xyzw, cb2[2].xyzw, r0.zzzz, r5.xyzw
  1048.   40: add r5.xyzw, r0.xyzw, cb2[3].xyzw
  1049.   41: mad r0.xyz, cb2[3].xyzx, v0.wwww, r0.xyzx
  1050.   42: mul r7.xyzw, r5.yyyy, cb3[18].xyzw
  1051.   43: mad r7.xyzw, cb3[17].xyzw, r5.xxxx, r7.xyzw
  1052.   44: mad r7.xyzw, cb3[19].xyzw, r5.zzzz, r7.xyzw
  1053.   45: mad o0.xyzw, cb3[20].xyzw, r5.wwww, r7.xyzw
  1054.   46: mad o1.xy, v3.xyxx, cb0[5].xyxx, cb0[5].zwzz
  1055.   47: mov o1.zw, v3.zzzw
  1056.   48: mad r5.yzw, v1.xxyz, r2.xxyz, -r3.xxyz
  1057.   49: div r2.xyz, v2.xyzx, r2.xyzx
  1058.   50: add r2.yzw, -r3.xxyz, r2.xxyz
  1059.   51: dp2 r5.x, r1.zyzz, r5.yzyy
  1060.   52: dp2 r2.x, r1.zyzz, r2.yzyy
  1061.   53: dp2 r7.y, r6.zyzz, r5.xwxx
  1062.   54: dp2 r8.y, r6.zyzz, r2.xwxx
  1063.   55: dp2 r9.y, r6.yxyy, r2.xwxx
  1064.   56: dp2 r6.y, r6.yxyy, r5.xwxx
  1065.   57: dp2 r7.x, r1.yxyy, r5.yzyy
  1066.   58: dp2 r8.x, r1.yxyy, r2.yzyy
  1067.   59: dp2 r6.x, r4.yzyy, r7.xyxx
  1068.   60: dp2 r9.x, r4.yzyy, r8.xyxx
  1069.   61: dp2 r9.z, r4.xyxx, r8.xyxx
  1070.   62: dp2 r6.z, r4.xyxx, r7.xyxx
  1071.   63: add r1.xyz, r3.xyzx, r6.xyzx
  1072.   64: add r2.xyz, r3.xyzx, r9.xyzx
  1073.   65: mul r3.xyz, r1.yyyy, cb2[1].xyzx
  1074.   66: mad r1.xyw, cb2[0].xyxz, r1.xxxx, r3.xyxz
  1075.   67: mad r1.xyz, cb2[2].xyzx, r1.zzzz, r1.xywx
  1076.   68: dp3 r0.w, r1.xyzx, r1.xyzx
  1077.   69: rsq r0.w, r0.w
  1078.   70: mul r1.xyz, r0.wwww, r1.xyzx
  1079.   71: mov o2.x, r1.x
  1080.   72: dp3 r3.x, r2.xyzx, cb2[4].xyzx
  1081.   73: dp3 r3.y, r2.xyzx, cb2[5].xyzx
  1082.   74: dp3 r3.z, r2.xyzx, cb2[6].xyzx
  1083.   75: dp3 r0.w, r3.xyzx, r3.xyzx
  1084.   76: rsq r0.w, r0.w
  1085.   77: mul r2.xyzw, r0.wwww, r3.xyzz
  1086.   78: mov o2.z, r2.x
  1087.   79: mov o2.y, l(0)
  1088.   80: mov o2.w, r0.x
  1089.   81: mov o3.x, r1.y
  1090.   82: mov o4.x, r1.z
  1091.   83: mov o3.w, r0.y
  1092.   84: mov o3.z, r2.y
  1093.   85: mov o3.y, l(0)
  1094.   86: mov o4.w, r0.z
  1095.   87: mov o4.z, r2.w
  1096.   88: mov o4.y, l(0)
  1097.   89: mov o5.xyzw, v7.xyzw
  1098.   90: add r1.xyzw, -r0.xxxx, cb1[3].xyzw
  1099.   91: add r3.xyzw, -r0.yyyy, cb1[4].xyzw
  1100.   92: add r0.xyzw, -r0.zzzz, cb1[5].xyzw
  1101.   93: mul r4.xyzw, r2.yyyy, r3.xyzw
  1102.   94: mul r3.xyzw, r3.xyzw, r3.xyzw
  1103.   95: mad r3.xyzw, r1.xyzw, r1.xyzw, r3.xyzw
  1104.   96: mad r1.xyzw, r1.xyzw, r2.xxxx, r4.xyzw
  1105.   97: mad r1.xyzw, r0.xyzw, r2.wwzw, r1.xyzw
  1106.   98: mad r0.xyzw, r0.xyzw, r0.xyzw, r3.xyzw
  1107.   99: max r0.xyzw, r0.xyzw, l(0.000001, 0.000001, 0.000001, 0.000001)
  1108.  100: rsq r3.xyzw, r0.xyzw
  1109.  101: mad r0.xyzw, r0.xyzw, cb1[6].xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
  1110.  102: div r0.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000), r0.xyzw
  1111.  103: mul r1.xyzw, r1.xyzw, r3.xyzw
  1112.  104: max r1.xyzw, r1.xyzw, l(0.000000, 0.000000, 0.000000, 0.000000)
  1113.  105: mul r0.xyzw, r0.xyzw, r1.xyzw
  1114.  106: mul r1.xyz, r0.yyyy, cb1[8].xyzx
  1115.  107: mad r1.xyz, cb1[7].xyzx, r0.xxxx, r1.xyzx
  1116.  108: mad r0.xyz, cb1[9].xyzx, r0.zzzz, r1.xyzx
  1117.  109: mad r0.xyz, cb1[10].xyzx, r0.wwww, r0.xyzx
  1118.  110: mad r1.xyz, r0.xyzx, l(0.305306, 0.305306, 0.305306, 0.000000), l(0.682171, 0.682171, 0.682171, 0.000000)
  1119.  111: mad r1.xyz, r0.xyzx, r1.xyzx, l(0.012523, 0.012523, 0.012523, 0.000000)
  1120.  112: mul r0.w, r2.y, r2.y
  1121.  113: mad r0.w, r2.x, r2.x, -r0.w
  1122.  114: mul r2.xyzw, r2.ywzx, r2.xyzw
  1123.  115: dp4 r3.x, cb1[42].xyzw, r2.xyzw
  1124.  116: dp4 r3.y, cb1[43].xyzw, r2.xyzw
  1125.  117: dp4 r3.z, cb1[44].xyzw, r2.xyzw
  1126.  118: mad r2.xyz, cb1[45].xyzx, r0.wwww, r3.xyzx
  1127.  119: mad o6.xyz, r0.xyzx, r1.xyzx, r2.xyzx
  1128.  120: ret
  1129. // Approximately 0 instruction slots used
  1130.  
  1131.  
  1132. -- Fragment shader for "d3d11":
  1133. // No shader variant for this keyword set. The closest match will be used instead.
  1134.  
  1135.  }
  1136.  
  1137.  
  1138.  // Stats for Vertex shader:
  1139.  //        d3d11: 68 avg math (64..69)
  1140.  // Stats for Fragment shader:
  1141.  //        d3d11: 37 avg math (29..45), 3 avg texture (2..4), 2 branch
  1142.  Pass {
  1143.   Name "FORWARD"
  1144.   Tags { "LIGHTMODE"="FORWARDADD" "QUEUE"="Geometry+0" "RenderType"="Opaque" }
  1145.   ZWrite Off
  1146.   Blend One One
  1147.   //////////////////////////////////
  1148.   //                              //
  1149.   //      Compiled programs       //
  1150.   //                              //
  1151.   //////////////////////////////////
  1152. //////////////////////////////////////////////////////
  1153. Keywords set in this variant: POINT
  1154. -- Hardware tier variant: Tier 1
  1155. -- Vertex shader for "d3d11":
  1156. // Stats: 69 math, 10 temp registers
  1157. Uses vertex data channel "Vertex"
  1158. Uses vertex data channel "Normal"
  1159. Uses vertex data channel "Color"
  1160. Uses vertex data channel "TexCoord"
  1161. Uses vertex data channel "TexCoord0"
  1162. Uses vertex data channel "TexCoord1"
  1163. Uses vertex data channel "TexCoord2"
  1164. Uses vertex data channel "Tangent"
  1165.  
  1166. Constant Buffer "$Globals" (160 bytes) on slot 0 {
  1167.   Matrix4x4 unity_WorldToLight at 64
  1168.   Float _t at 128
  1169.   Float _PopInTime at 132
  1170.   Vector4 _tex4coord_ST at 144
  1171. }
  1172. Constant Buffer "UnityPerDraw" (160 bytes) on slot 1 {
  1173.   Matrix4x4 unity_ObjectToWorld at 0
  1174.   Matrix4x4 unity_WorldToObject at 64
  1175. }
  1176. Constant Buffer "UnityPerFrame" (368 bytes) on slot 2 {
  1177.   Matrix4x4 unity_MatrixVP at 272
  1178. }
  1179.  
  1180. Shader Disassembly:
  1181. //
  1182. // Generated by Microsoft (R) D3D Shader Disassembler
  1183. //
  1184. //
  1185. // Input signature:
  1186. //
  1187. // Name                 Index   Mask Register SysValue  Format   Used
  1188. // -------------------- ----- ------ -------- -------- ------- ------
  1189. // POSITION                 0   xyzw        0     NONE   float   xyzw
  1190. // TANGENT                  0   xyzw        1     NONE   float   xyz
  1191. // NORMAL                   0   xyz         2     NONE   float   xyz
  1192. // TEXCOORD                 0   xyzw        3     NONE   float   xyzw
  1193. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  1194. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  1195. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  1196. // COLOR                    0   xyzw        7     NONE   float   xyzw
  1197. //
  1198. //
  1199. // Output signature:
  1200. //
  1201. // Name                 Index   Mask Register SysValue  Format   Used
  1202. // -------------------- ----- ------ -------- -------- ------- ------
  1203. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  1204. // TEXCOORD                 0   xyzw        1     NONE   float   xyzw
  1205. // TEXCOORD                 1   xyz         2     NONE   float   xyz
  1206. // TEXCOORD                 2   xyz         3     NONE   float   xyz
  1207. // TEXCOORD                 3   xyz         4     NONE   float   xyz
  1208. // TEXCOORD                 4   xyz         5     NONE   float   xyz
  1209. // COLOR                    0   xyzw        6     NONE   float   xyzw
  1210. // TEXCOORD                 5   xyz         7     NONE   float   xyz
  1211. //
  1212.       vs_4_0
  1213.       dcl_constantbuffer CB0[10], immediateIndexed
  1214.       dcl_constantbuffer CB1[7], immediateIndexed
  1215.       dcl_constantbuffer CB2[21], immediateIndexed
  1216.       dcl_input v0.xyzw
  1217.       dcl_input v1.xyz
  1218.       dcl_input v2.xyz
  1219.       dcl_input v3.xyzw
  1220.       dcl_input v4.xyzw
  1221.       dcl_input v5.xyzw
  1222.       dcl_input v6.xyzw
  1223.       dcl_input v7.xyzw
  1224.       dcl_output_siv o0.xyzw, position
  1225.       dcl_output o1.xyzw
  1226.       dcl_output o2.xyz
  1227.       dcl_output o3.xyz
  1228.       dcl_output o4.xyz
  1229.       dcl_output o5.xyz
  1230.       dcl_output o6.xyzw
  1231.       dcl_output o7.xyz
  1232.       dcl_temps 10
  1233.    0: add r0.x, cb0[8].y, cb0[8].x
  1234.    1: ge r0.x, v3.z, r0.x
  1235.    2: and r0.x, r0.x, l(0x3f800000)
  1236.    3: add r0.y, -v3.z, cb0[8].x
  1237.    4: div_sat r0.y, r0.y, v3.w
  1238.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  1239.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  1240.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  1241.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  1242.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  1243.   10: sincos r2.x, r3.x, r1.y
  1244.   11: mov r4.z, r2.x
  1245.   12: mov r4.y, r3.x
  1246.   13: mov r4.x, -r2.x
  1247.   14: sincos r1.x, r2.x, r1.x
  1248.   15: sincos r3.x, r5.x, r1.z
  1249.   16: mov r6.z, r1.x
  1250.   17: mov r6.y, r2.x
  1251.   18: mov r6.x, -r1.x
  1252.   19: mov r1.z, r3.x
  1253.   20: mov r1.y, r5.x
  1254.   21: mov r1.x, -r3.x
  1255.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  1256.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  1257.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  1258.   25: mov r3.x, v4.w
  1259.   26: mov r3.y, v5.w
  1260.   27: mov r3.z, v6.w
  1261.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  1262.   29: dp2 r5.x, r1.zyzz, r5.yzyy
  1263.   30: dp2 r7.y, r6.zyzz, r5.xwxx
  1264.   31: dp2 r8.y, r6.yxyy, r5.xwxx
  1265.   32: dp2 r7.x, r1.yxyy, r5.yzyy
  1266.   33: dp2 r8.x, r4.yzyy, r7.xyxx
  1267.   34: dp2 r8.z, r4.xyxx, r7.xyxx
  1268.   35: add r5.xyz, r3.xyzx, r8.xyzx
  1269.   36: add r0.xyz, r0.xzwx, r5.xyzx
  1270.   37: mul r5.xyzw, r0.yyyy, cb1[1].xyzw
  1271.   38: mad r5.xyzw, cb1[0].xyzw, r0.xxxx, r5.xyzw
  1272.   39: mad r0.xyzw, cb1[2].xyzw, r0.zzzz, r5.xyzw
  1273.   40: add r5.xyzw, r0.xyzw, cb1[3].xyzw
  1274.   41: mul r7.xyzw, r5.yyyy, cb2[18].xyzw
  1275.   42: mad r7.xyzw, cb2[17].xyzw, r5.xxxx, r7.xyzw
  1276.   43: mad r7.xyzw, cb2[19].xyzw, r5.zzzz, r7.xyzw
  1277.   44: mad o0.xyzw, cb2[20].xyzw, r5.wwww, r7.xyzw
  1278.   45: mad o1.xy, v3.xyxx, cb0[9].xyxx, cb0[9].zwzz
  1279.   46: mov o1.zw, v3.zzzw
  1280.   47: div r5.xyz, v2.xyzx, r2.xyzx
  1281.   48: mad r2.yzw, v1.xxyz, r2.xxyz, -r3.xxyz
  1282.   49: add r5.yzw, -r3.xxyz, r5.xxyz
  1283.   50: dp2 r5.x, r1.zyzz, r5.yzyy
  1284.   51: dp2 r2.x, r1.zyzz, r2.yzyy
  1285.   52: dp2 r7.y, r6.zyzz, r5.xwxx
  1286.   53: dp2 r8.y, r6.zyzz, r2.xwxx
  1287.   54: dp2 r9.y, r6.yxyy, r2.xwxx
  1288.   55: dp2 r6.y, r6.yxyy, r5.xwxx
  1289.   56: dp2 r7.x, r1.yxyy, r5.yzyy
  1290.   57: dp2 r8.x, r1.yxyy, r2.yzyy
  1291.   58: dp2 r6.x, r4.yzyy, r7.xyxx
  1292.   59: dp2 r9.x, r4.yzyy, r8.xyxx
  1293.   60: dp2 r9.z, r4.xyxx, r8.xyxx
  1294.   61: dp2 r6.z, r4.xyxx, r7.xyxx
  1295.   62: add r1.xyz, r3.xyzx, r6.xyzx
  1296.   63: add r2.xyz, r3.xyzx, r9.xyzx
  1297.   64: dp3 r3.x, r1.xyzx, cb1[4].xyzx
  1298.   65: dp3 r3.y, r1.xyzx, cb1[5].xyzx
  1299.   66: dp3 r3.z, r1.xyzx, cb1[6].xyzx
  1300.   67: dp3 r1.x, r3.xyzx, r3.xyzx
  1301.   68: rsq r1.x, r1.x
  1302.   69: mul r1.xyz, r1.xxxx, r3.xyzx
  1303.   70: mov o2.z, r1.x
  1304.   71: mul r3.xyz, r2.yyyy, cb1[1].xyzx
  1305.   72: mad r2.xyw, cb1[0].xyxz, r2.xxxx, r3.xyxz
  1306.   73: mad r2.xyz, cb1[2].xyzx, r2.zzzz, r2.xywx
  1307.   74: dp3 r1.x, r2.xyzx, r2.xyzx
  1308.   75: rsq r1.x, r1.x
  1309.   76: mul r2.xyz, r1.xxxx, r2.xyzx
  1310.   77: mov o2.x, r2.x
  1311.   78: mov o2.y, l(0)
  1312.   79: mov o3.z, r1.y
  1313.   80: mov o4.z, r1.z
  1314.   81: mov o3.x, r2.y
  1315.   82: mov o4.x, r2.z
  1316.   83: mov o3.y, l(0)
  1317.   84: mov o4.y, l(0)
  1318.   85: mad o5.xyz, cb1[3].xyzx, v0.wwww, r0.xyzx
  1319.   86: mad r0.xyzw, cb1[3].xyzw, v0.wwww, r0.xyzw
  1320.   87: mov o6.xyzw, v7.xyzw
  1321.   88: mul r1.xyz, r0.yyyy, cb0[5].xyzx
  1322.   89: mad r1.xyz, cb0[4].xyzx, r0.xxxx, r1.xyzx
  1323.   90: mad r0.xyz, cb0[6].xyzx, r0.zzzz, r1.xyzx
  1324.   91: mad o7.xyz, cb0[7].xyzx, r0.wwww, r0.xyzx
  1325.   92: ret
  1326. // Approximately 0 instruction slots used
  1327.  
  1328.  
  1329. -- Hardware tier variant: Tier 1
  1330. -- Fragment shader for "d3d11":
  1331. // Stats: 39 math, 4 temp registers, 3 textures, 2 branches
  1332. Set 2D Texture "_TextureSample0" to slot 0 sampler slot 2
  1333. Set 2D Texture "_LightTexture0" to slot 1
  1334. Set 3D Texture "unity_ProbeVolumeSH" to slot 2 sampler slot 0
  1335.  
  1336. Constant Buffer "$Globals" (160 bytes) on slot 0 {
  1337.   Matrix4x4 unity_WorldToLight at 64
  1338.   Vector4 _LightColor0 at 32
  1339. }
  1340. Constant Buffer "UnityLighting" (768 bytes) on slot 1 {
  1341.   Vector4 _WorldSpaceLightPos0 at 0
  1342.   Vector4 unity_OcclusionMaskSelector at 736
  1343. }
  1344. Constant Buffer "UnityProbeVolume" (112 bytes) on slot 2 {
  1345.   Matrix4x4 unity_ProbeVolumeWorldToObject at 16
  1346.   Vector4 unity_ProbeVolumeParams at 0
  1347.   Vector3 unity_ProbeVolumeSizeInv at 80
  1348.   Vector3 unity_ProbeVolumeMin at 96
  1349. }
  1350.  
  1351. Shader Disassembly:
  1352. //
  1353. // Generated by Microsoft (R) D3D Shader Disassembler
  1354. //
  1355. //
  1356. // Input signature:
  1357. //
  1358. // Name                 Index   Mask Register SysValue  Format   Used
  1359. // -------------------- ----- ------ -------- -------- ------- ------
  1360. // SV_POSITION              0   xyzw        0      POS   float      
  1361. // TEXCOORD                 0   xyzw        1     NONE   float   xy  
  1362. // TEXCOORD                 1   xyz         2     NONE   float   xyz
  1363. // TEXCOORD                 2   xyz         3     NONE   float   xyz
  1364. // TEXCOORD                 3   xyz         4     NONE   float   xyz
  1365. // TEXCOORD                 4   xyz         5     NONE   float   xyz
  1366. // COLOR                    0   xyzw        6     NONE   float   xyz
  1367. // TEXCOORD                 5   xyz         7     NONE   float      
  1368. //
  1369. //
  1370. // Output signature:
  1371. //
  1372. // Name                 Index   Mask Register SysValue  Format   Used
  1373. // -------------------- ----- ------ -------- -------- ------- ------
  1374. // SV_Target                0   xyzw        0   TARGET   float   xyzw
  1375. //
  1376.       ps_4_0
  1377.       dcl_constantbuffer CB0[8], immediateIndexed
  1378.       dcl_constantbuffer CB1[47], immediateIndexed
  1379.       dcl_constantbuffer CB2[7], immediateIndexed
  1380.       dcl_sampler s0, mode_default
  1381.       dcl_sampler s1, mode_default
  1382.       dcl_sampler s2, mode_default
  1383.       dcl_resource_texture2d (float,float,float,float) t0
  1384.       dcl_resource_texture2d (float,float,float,float) t1
  1385.       dcl_resource_texture3d (float,float,float,float) t2
  1386.       dcl_input_ps linear v1.xy
  1387.       dcl_input_ps linear v2.xyz
  1388.       dcl_input_ps linear v3.xyz
  1389.       dcl_input_ps linear v4.xyz
  1390.       dcl_input_ps linear v5.xyz
  1391.       dcl_input_ps linear v6.xyz
  1392.       dcl_output o0.xyzw
  1393.       dcl_temps 4
  1394.    0: add r0.xyz, -v5.xyzx, cb1[0].xyzx
  1395.    1: dp3 r0.w, r0.xyzx, r0.xyzx
  1396.    2: rsq r0.w, r0.w
  1397.    3: mul r0.xyz, r0.wwww, r0.xyzx
  1398.    4: sample r1.xyzw, v1.xyxx, t0.xyzw, s2
  1399.    5: mul r1.x, r1.w, r1.x
  1400.    6: mad r1.xy, r1.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
  1401.    7: dp2 r0.w, r1.xyxx, r1.xyxx
  1402.    8: min r0.w, r0.w, l(1.000000)
  1403.    9: add r0.w, -r0.w, l(1.000000)
  1404.   10: sqrt r1.z, r0.w
  1405.   11: mul r2.xyz, v5.yyyy, cb0[5].xyzx
  1406.   12: mad r2.xyz, cb0[4].xyzx, v5.xxxx, r2.xyzx
  1407.   13: mad r2.xyz, cb0[6].xyzx, v5.zzzz, r2.xyzx
  1408.   14: add r2.xyz, r2.xyzx, cb0[7].xyzx
  1409.   15: eq r0.w, cb2[0].x, l(1.000000)
  1410.   16: if_nz r0.w
  1411.   17:   eq r0.w, cb2[0].y, l(1.000000)
  1412.   18:   mul r3.xyz, v5.yyyy, cb2[2].xyzx
  1413.   19:   mad r3.xyz, cb2[1].xyzx, v5.xxxx, r3.xyzx
  1414.   20:   mad r3.xyz, cb2[3].xyzx, v5.zzzz, r3.xyzx
  1415.   21:   add r3.xyz, r3.xyzx, cb2[4].xyzx
  1416.   22:   movc r3.xyz, r0.wwww, r3.xyzx, v5.xyzx
  1417.   23:   add r3.xyz, r3.xyzx, -cb2[6].xyzx
  1418.   24:   mul r3.yzw, r3.xxyz, cb2[5].xxyz
  1419.   25:   mad r0.w, r3.y, l(0.250000), l(0.750000)
  1420.   26:   mad r1.w, cb2[0].z, l(0.500000), l(0.750000)
  1421.   27:   max r3.x, r0.w, r1.w
  1422.   28:   sample r3.xyzw, r3.xzwx, t2.xyzw, s0
  1423.   29: else
  1424.   30:   mov r3.xyzw, l(1.000000,1.000000,1.000000,1.000000)
  1425.   31: endif
  1426.   32: dp4_sat r0.w, r3.xyzw, cb1[46].xyzw
  1427.   33: dp3 r1.w, r2.xyzx, r2.xyzx
  1428.   34: sample r2.xyzw, r1.wwww, t1.xyzw, s1
  1429.   35: mul r0.w, r0.w, r2.x
  1430.   36: dp3 r2.x, v2.xyzx, r1.xyzx
  1431.   37: dp3 r2.y, v3.xyzx, r1.xyzx
  1432.   38: dp3 r2.z, v4.xyzx, r1.xyzx
  1433.   39: dp3 r1.x, r2.xyzx, r2.xyzx
  1434.   40: rsq r1.x, r1.x
  1435.   41: mul r1.xyz, r1.xxxx, r2.xyzx
  1436.   42: mul r2.xyz, r0.wwww, cb0[2].xyzx
  1437.   43: dp3 r0.x, r1.xyzx, r0.xyzx
  1438.   44: max r0.x, r0.x, l(0.000000)
  1439.   45: mul r0.yzw, r2.xxyz, v6.xxyz
  1440.   46: mul o0.xyz, r0.xxxx, r0.yzwy
  1441.   47: mov o0.w, l(1.000000)
  1442.   48: ret
  1443. // Approximately 0 instruction slots used
  1444.  
  1445.  
  1446. //////////////////////////////////////////////////////
  1447. Keywords set in this variant: DIRECTIONAL
  1448. -- Hardware tier variant: Tier 1
  1449. -- Vertex shader for "d3d11":
  1450. // Stats: 64 math, 9 temp registers
  1451. Uses vertex data channel "Vertex"
  1452. Uses vertex data channel "Normal"
  1453. Uses vertex data channel "Color"
  1454. Uses vertex data channel "TexCoord"
  1455. Uses vertex data channel "TexCoord0"
  1456. Uses vertex data channel "TexCoord1"
  1457. Uses vertex data channel "TexCoord2"
  1458. Uses vertex data channel "Tangent"
  1459.  
  1460. Constant Buffer "$Globals" (96 bytes) on slot 0 {
  1461.   Float _t at 64
  1462.   Float _PopInTime at 68
  1463.   Vector4 _tex4coord_ST at 80
  1464. }
  1465. Constant Buffer "UnityPerDraw" (160 bytes) on slot 1 {
  1466.   Matrix4x4 unity_ObjectToWorld at 0
  1467.   Matrix4x4 unity_WorldToObject at 64
  1468. }
  1469. Constant Buffer "UnityPerFrame" (368 bytes) on slot 2 {
  1470.   Matrix4x4 unity_MatrixVP at 272
  1471. }
  1472.  
  1473. Shader Disassembly:
  1474. //
  1475. // Generated by Microsoft (R) D3D Shader Disassembler
  1476. //
  1477. //
  1478. // Input signature:
  1479. //
  1480. // Name                 Index   Mask Register SysValue  Format   Used
  1481. // -------------------- ----- ------ -------- -------- ------- ------
  1482. // POSITION                 0   xyzw        0     NONE   float   xyzw
  1483. // TANGENT                  0   xyzw        1     NONE   float   xyz
  1484. // NORMAL                   0   xyz         2     NONE   float   xyz
  1485. // TEXCOORD                 0   xyzw        3     NONE   float   xyzw
  1486. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  1487. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  1488. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  1489. // COLOR                    0   xyzw        7     NONE   float   xyzw
  1490. //
  1491. //
  1492. // Output signature:
  1493. //
  1494. // Name                 Index   Mask Register SysValue  Format   Used
  1495. // -------------------- ----- ------ -------- -------- ------- ------
  1496. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  1497. // TEXCOORD                 0   xyzw        1     NONE   float   xyzw
  1498. // TEXCOORD                 1   xyz         2     NONE   float   xyz
  1499. // TEXCOORD                 2   xyz         3     NONE   float   xyz
  1500. // TEXCOORD                 3   xyz         4     NONE   float   xyz
  1501. // TEXCOORD                 4   xyz         5     NONE   float   xyz
  1502. // COLOR                    0   xyzw        6     NONE   float   xyzw
  1503. //
  1504.       vs_4_0
  1505.       dcl_constantbuffer CB0[6], immediateIndexed
  1506.       dcl_constantbuffer CB1[7], immediateIndexed
  1507.       dcl_constantbuffer CB2[21], immediateIndexed
  1508.       dcl_input v0.xyzw
  1509.       dcl_input v1.xyz
  1510.       dcl_input v2.xyz
  1511.       dcl_input v3.xyzw
  1512.       dcl_input v4.xyzw
  1513.       dcl_input v5.xyzw
  1514.       dcl_input v6.xyzw
  1515.       dcl_input v7.xyzw
  1516.       dcl_output_siv o0.xyzw, position
  1517.       dcl_output o1.xyzw
  1518.       dcl_output o2.xyz
  1519.       dcl_output o3.xyz
  1520.       dcl_output o4.xyz
  1521.       dcl_output o5.xyz
  1522.       dcl_output o6.xyzw
  1523.       dcl_temps 9
  1524.    0: add r0.x, cb0[4].y, cb0[4].x
  1525.    1: ge r0.x, v3.z, r0.x
  1526.    2: and r0.x, r0.x, l(0x3f800000)
  1527.    3: add r0.y, -v3.z, cb0[4].x
  1528.    4: div_sat r0.y, r0.y, v3.w
  1529.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  1530.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  1531.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  1532.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  1533.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  1534.   10: sincos r2.x, r3.x, r1.y
  1535.   11: mov r4.z, r2.x
  1536.   12: mov r4.y, r3.x
  1537.   13: mov r4.x, -r2.x
  1538.   14: sincos r1.x, r2.x, r1.x
  1539.   15: sincos r3.x, r5.x, r1.z
  1540.   16: mov r6.z, r1.x
  1541.   17: mov r6.y, r2.x
  1542.   18: mov r6.x, -r1.x
  1543.   19: mov r1.z, r3.x
  1544.   20: mov r1.y, r5.x
  1545.   21: mov r1.x, -r3.x
  1546.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  1547.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  1548.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  1549.   25: mov r3.x, v4.w
  1550.   26: mov r3.y, v5.w
  1551.   27: mov r3.z, v6.w
  1552.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  1553.   29: dp2 r5.x, r1.zyzz, r5.yzyy
  1554.   30: dp2 r7.y, r6.zyzz, r5.xwxx
  1555.   31: dp2 r8.y, r6.yxyy, r5.xwxx
  1556.   32: dp2 r7.x, r1.yxyy, r5.yzyy
  1557.   33: dp2 r8.x, r4.yzyy, r7.xyxx
  1558.   34: dp2 r8.z, r4.xyxx, r7.xyxx
  1559.   35: add r5.xyz, r3.xyzx, r8.xyzx
  1560.   36: add r0.xyz, r0.xzwx, r5.xyzx
  1561.   37: mul r5.xyzw, r0.yyyy, cb1[1].xyzw
  1562.   38: mad r5.xyzw, cb1[0].xyzw, r0.xxxx, r5.xyzw
  1563.   39: mad r0.xyzw, cb1[2].xyzw, r0.zzzz, r5.xyzw
  1564.   40: add r5.xyzw, r0.xyzw, cb1[3].xyzw
  1565.   41: mad o5.xyz, cb1[3].xyzx, v0.wwww, r0.xyzx
  1566.   42: mul r0.xyzw, r5.yyyy, cb2[18].xyzw
  1567.   43: mad r0.xyzw, cb2[17].xyzw, r5.xxxx, r0.xyzw
  1568.   44: mad r0.xyzw, cb2[19].xyzw, r5.zzzz, r0.xyzw
  1569.   45: mad o0.xyzw, cb2[20].xyzw, r5.wwww, r0.xyzw
  1570.   46: mad o1.xy, v3.xyxx, cb0[5].xyxx, cb0[5].zwzz
  1571.   47: mov o1.zw, v3.zzzw
  1572.   48: div r0.xyz, v2.xyzx, r2.xyzx
  1573.   49: mad r2.yzw, v1.xxyz, r2.xxyz, -r3.xxyz
  1574.   50: add r0.yzw, -r3.xxyz, r0.xxyz
  1575.   51: dp2 r0.x, r1.zyzz, r0.yzyy
  1576.   52: dp2 r2.x, r1.zyzz, r2.yzyy
  1577.   53: dp2 r5.y, r6.zyzz, r0.xwxx
  1578.   54: dp2 r7.y, r6.zyzz, r2.xwxx
  1579.   55: dp2 r8.y, r6.yxyy, r2.xwxx
  1580.   56: dp2 r6.y, r6.yxyy, r0.xwxx
  1581.   57: dp2 r5.x, r1.yxyy, r0.yzyy
  1582.   58: dp2 r7.x, r1.yxyy, r2.yzyy
  1583.   59: dp2 r6.x, r4.yzyy, r5.xyxx
  1584.   60: dp2 r8.x, r4.yzyy, r7.xyxx
  1585.   61: dp2 r8.z, r4.xyxx, r7.xyxx
  1586.   62: dp2 r6.z, r4.xyxx, r5.xyxx
  1587.   63: add r0.xyz, r3.xyzx, r6.xyzx
  1588.   64: add r1.xyz, r3.xyzx, r8.xyzx
  1589.   65: dp3 r2.x, r0.xyzx, cb1[4].xyzx
  1590.   66: dp3 r2.y, r0.xyzx, cb1[5].xyzx
  1591.   67: dp3 r2.z, r0.xyzx, cb1[6].xyzx
  1592.   68: dp3 r0.x, r2.xyzx, r2.xyzx
  1593.   69: rsq r0.x, r0.x
  1594.   70: mul r0.xyz, r0.xxxx, r2.xyzx
  1595.   71: mov o2.z, r0.x
  1596.   72: mul r2.xyz, r1.yyyy, cb1[1].xyzx
  1597.   73: mad r1.xyw, cb1[0].xyxz, r1.xxxx, r2.xyxz
  1598.   74: mad r1.xyz, cb1[2].xyzx, r1.zzzz, r1.xywx
  1599.   75: dp3 r0.x, r1.xyzx, r1.xyzx
  1600.   76: rsq r0.x, r0.x
  1601.   77: mul r1.xyz, r0.xxxx, r1.xyzx
  1602.   78: mov o2.x, r1.x
  1603.   79: mov o2.y, l(0)
  1604.   80: mov o3.z, r0.y
  1605.   81: mov o4.z, r0.z
  1606.   82: mov o3.x, r1.y
  1607.   83: mov o4.x, r1.z
  1608.   84: mov o3.y, l(0)
  1609.   85: mov o4.y, l(0)
  1610.   86: mov o6.xyzw, v7.xyzw
  1611.   87: ret
  1612. // Approximately 0 instruction slots used
  1613.  
  1614.  
  1615. -- Hardware tier variant: Tier 1
  1616. -- Fragment shader for "d3d11":
  1617. // Stats: 29 math, 2 temp registers, 2 textures, 2 branches
  1618. Set 2D Texture "_TextureSample0" to slot 0 sampler slot 1
  1619. Set 3D Texture "unity_ProbeVolumeSH" to slot 1 sampler slot 0
  1620.  
  1621. Constant Buffer "$Globals" (96 bytes) on slot 0 {
  1622.   Vector4 _LightColor0 at 32
  1623. }
  1624. Constant Buffer "UnityLighting" (768 bytes) on slot 1 {
  1625.   Vector4 _WorldSpaceLightPos0 at 0
  1626.   Vector4 unity_OcclusionMaskSelector at 736
  1627. }
  1628. Constant Buffer "UnityProbeVolume" (112 bytes) on slot 2 {
  1629.   Matrix4x4 unity_ProbeVolumeWorldToObject at 16
  1630.   Vector4 unity_ProbeVolumeParams at 0
  1631.   Vector3 unity_ProbeVolumeSizeInv at 80
  1632.   Vector3 unity_ProbeVolumeMin at 96
  1633. }
  1634.  
  1635. Shader Disassembly:
  1636. //
  1637. // Generated by Microsoft (R) D3D Shader Disassembler
  1638. //
  1639. //
  1640. // Input signature:
  1641. //
  1642. // Name                 Index   Mask Register SysValue  Format   Used
  1643. // -------------------- ----- ------ -------- -------- ------- ------
  1644. // SV_POSITION              0   xyzw        0      POS   float      
  1645. // TEXCOORD                 0   xyzw        1     NONE   float   xy  
  1646. // TEXCOORD                 1   xyz         2     NONE   float   xyz
  1647. // TEXCOORD                 2   xyz         3     NONE   float   xyz
  1648. // TEXCOORD                 3   xyz         4     NONE   float   xyz
  1649. // TEXCOORD                 4   xyz         5     NONE   float   xyz
  1650. // COLOR                    0   xyzw        6     NONE   float   xyz
  1651. //
  1652. //
  1653. // Output signature:
  1654. //
  1655. // Name                 Index   Mask Register SysValue  Format   Used
  1656. // -------------------- ----- ------ -------- -------- ------- ------
  1657. // SV_Target                0   xyzw        0   TARGET   float   xyzw
  1658. //
  1659.       ps_4_0
  1660.       dcl_constantbuffer CB0[3], immediateIndexed
  1661.       dcl_constantbuffer CB1[47], immediateIndexed
  1662.       dcl_constantbuffer CB2[7], immediateIndexed
  1663.       dcl_sampler s0, mode_default
  1664.       dcl_sampler s1, mode_default
  1665.       dcl_resource_texture2d (float,float,float,float) t0
  1666.       dcl_resource_texture3d (float,float,float,float) t1
  1667.       dcl_input_ps linear v1.xy
  1668.       dcl_input_ps linear v2.xyz
  1669.       dcl_input_ps linear v3.xyz
  1670.       dcl_input_ps linear v4.xyz
  1671.       dcl_input_ps linear v5.xyz
  1672.       dcl_input_ps linear v6.xyz
  1673.       dcl_output o0.xyzw
  1674.       dcl_temps 2
  1675.    0: sample r0.xyzw, v1.xyxx, t0.xyzw, s1
  1676.    1: mul r0.x, r0.w, r0.x
  1677.    2: mad r0.xy, r0.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
  1678.    3: dp2 r0.w, r0.xyxx, r0.xyxx
  1679.    4: min r0.w, r0.w, l(1.000000)
  1680.    5: add r0.w, -r0.w, l(1.000000)
  1681.    6: sqrt r0.z, r0.w
  1682.    7: eq r0.w, cb2[0].x, l(1.000000)
  1683.    8: if_nz r0.w
  1684.    9:   eq r0.w, cb2[0].y, l(1.000000)
  1685.   10:   mul r1.xyz, v5.yyyy, cb2[2].xyzx
  1686.   11:   mad r1.xyz, cb2[1].xyzx, v5.xxxx, r1.xyzx
  1687.   12:   mad r1.xyz, cb2[3].xyzx, v5.zzzz, r1.xyzx
  1688.   13:   add r1.xyz, r1.xyzx, cb2[4].xyzx
  1689.   14:   movc r1.xyz, r0.wwww, r1.xyzx, v5.xyzx
  1690.   15:   add r1.xyz, r1.xyzx, -cb2[6].xyzx
  1691.   16:   mul r1.yzw, r1.xxyz, cb2[5].xxyz
  1692.   17:   mad r0.w, r1.y, l(0.250000), l(0.750000)
  1693.   18:   mad r1.y, cb2[0].z, l(0.500000), l(0.750000)
  1694.   19:   max r1.x, r0.w, r1.y
  1695.   20:   sample r1.xyzw, r1.xzwx, t1.xyzw, s0
  1696.   21: else
  1697.   22:   mov r1.xyzw, l(1.000000,1.000000,1.000000,1.000000)
  1698.   23: endif
  1699.   24: dp4_sat r0.w, r1.xyzw, cb1[46].xyzw
  1700.   25: dp3 r1.x, v2.xyzx, r0.xyzx
  1701.   26: dp3 r1.y, v3.xyzx, r0.xyzx
  1702.   27: dp3 r1.z, v4.xyzx, r0.xyzx
  1703.   28: dp3 r0.x, r1.xyzx, r1.xyzx
  1704.   29: rsq r0.x, r0.x
  1705.   30: mul r0.xyz, r0.xxxx, r1.xyzx
  1706.   31: mul r1.xyz, r0.wwww, cb0[2].xyzx
  1707.   32: dp3 r0.x, r0.xyzx, cb1[0].xyzx
  1708.   33: max r0.x, r0.x, l(0.000000)
  1709.   34: mul r0.yzw, r1.xxyz, v6.xxyz
  1710.   35: mul o0.xyz, r0.xxxx, r0.yzwy
  1711.   36: mov o0.w, l(1.000000)
  1712.   37: ret
  1713. // Approximately 0 instruction slots used
  1714.  
  1715.  
  1716. //////////////////////////////////////////////////////
  1717. Keywords set in this variant: SPOT
  1718. -- Hardware tier variant: Tier 1
  1719. -- Vertex shader for "d3d11":
  1720. // Stats: 69 math, 10 temp registers
  1721. Uses vertex data channel "Vertex"
  1722. Uses vertex data channel "Normal"
  1723. Uses vertex data channel "Color"
  1724. Uses vertex data channel "TexCoord"
  1725. Uses vertex data channel "TexCoord0"
  1726. Uses vertex data channel "TexCoord1"
  1727. Uses vertex data channel "TexCoord2"
  1728. Uses vertex data channel "Tangent"
  1729.  
  1730. Constant Buffer "$Globals" (160 bytes) on slot 0 {
  1731.   Matrix4x4 unity_WorldToLight at 64
  1732.   Float _t at 128
  1733.   Float _PopInTime at 132
  1734.   Vector4 _tex4coord_ST at 144
  1735. }
  1736. Constant Buffer "UnityPerDraw" (160 bytes) on slot 1 {
  1737.   Matrix4x4 unity_ObjectToWorld at 0
  1738.   Matrix4x4 unity_WorldToObject at 64
  1739. }
  1740. Constant Buffer "UnityPerFrame" (368 bytes) on slot 2 {
  1741.   Matrix4x4 unity_MatrixVP at 272
  1742. }
  1743.  
  1744. Shader Disassembly:
  1745. //
  1746. // Generated by Microsoft (R) D3D Shader Disassembler
  1747. //
  1748. //
  1749. // Input signature:
  1750. //
  1751. // Name                 Index   Mask Register SysValue  Format   Used
  1752. // -------------------- ----- ------ -------- -------- ------- ------
  1753. // POSITION                 0   xyzw        0     NONE   float   xyzw
  1754. // TANGENT                  0   xyzw        1     NONE   float   xyz
  1755. // NORMAL                   0   xyz         2     NONE   float   xyz
  1756. // TEXCOORD                 0   xyzw        3     NONE   float   xyzw
  1757. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  1758. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  1759. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  1760. // COLOR                    0   xyzw        7     NONE   float   xyzw
  1761. //
  1762. //
  1763. // Output signature:
  1764. //
  1765. // Name                 Index   Mask Register SysValue  Format   Used
  1766. // -------------------- ----- ------ -------- -------- ------- ------
  1767. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  1768. // TEXCOORD                 0   xyzw        1     NONE   float   xyzw
  1769. // TEXCOORD                 1   xyz         2     NONE   float   xyz
  1770. // TEXCOORD                 2   xyz         3     NONE   float   xyz
  1771. // TEXCOORD                 3   xyz         4     NONE   float   xyz
  1772. // TEXCOORD                 4   xyz         5     NONE   float   xyz
  1773. // COLOR                    0   xyzw        6     NONE   float   xyzw
  1774. // TEXCOORD                 5   xyzw        7     NONE   float   xyzw
  1775. //
  1776.       vs_4_0
  1777.       dcl_constantbuffer CB0[10], immediateIndexed
  1778.       dcl_constantbuffer CB1[7], immediateIndexed
  1779.       dcl_constantbuffer CB2[21], immediateIndexed
  1780.       dcl_input v0.xyzw
  1781.       dcl_input v1.xyz
  1782.       dcl_input v2.xyz
  1783.       dcl_input v3.xyzw
  1784.       dcl_input v4.xyzw
  1785.       dcl_input v5.xyzw
  1786.       dcl_input v6.xyzw
  1787.       dcl_input v7.xyzw
  1788.       dcl_output_siv o0.xyzw, position
  1789.       dcl_output o1.xyzw
  1790.       dcl_output o2.xyz
  1791.       dcl_output o3.xyz
  1792.       dcl_output o4.xyz
  1793.       dcl_output o5.xyz
  1794.       dcl_output o6.xyzw
  1795.       dcl_output o7.xyzw
  1796.       dcl_temps 10
  1797.    0: add r0.x, cb0[8].y, cb0[8].x
  1798.    1: ge r0.x, v3.z, r0.x
  1799.    2: and r0.x, r0.x, l(0x3f800000)
  1800.    3: add r0.y, -v3.z, cb0[8].x
  1801.    4: div_sat r0.y, r0.y, v3.w
  1802.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  1803.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  1804.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  1805.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  1806.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  1807.   10: sincos r2.x, r3.x, r1.y
  1808.   11: mov r4.z, r2.x
  1809.   12: mov r4.y, r3.x
  1810.   13: mov r4.x, -r2.x
  1811.   14: sincos r1.x, r2.x, r1.x
  1812.   15: sincos r3.x, r5.x, r1.z
  1813.   16: mov r6.z, r1.x
  1814.   17: mov r6.y, r2.x
  1815.   18: mov r6.x, -r1.x
  1816.   19: mov r1.z, r3.x
  1817.   20: mov r1.y, r5.x
  1818.   21: mov r1.x, -r3.x
  1819.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  1820.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  1821.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  1822.   25: mov r3.x, v4.w
  1823.   26: mov r3.y, v5.w
  1824.   27: mov r3.z, v6.w
  1825.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  1826.   29: dp2 r5.x, r1.zyzz, r5.yzyy
  1827.   30: dp2 r7.y, r6.zyzz, r5.xwxx
  1828.   31: dp2 r8.y, r6.yxyy, r5.xwxx
  1829.   32: dp2 r7.x, r1.yxyy, r5.yzyy
  1830.   33: dp2 r8.x, r4.yzyy, r7.xyxx
  1831.   34: dp2 r8.z, r4.xyxx, r7.xyxx
  1832.   35: add r5.xyz, r3.xyzx, r8.xyzx
  1833.   36: add r0.xyz, r0.xzwx, r5.xyzx
  1834.   37: mul r5.xyzw, r0.yyyy, cb1[1].xyzw
  1835.   38: mad r5.xyzw, cb1[0].xyzw, r0.xxxx, r5.xyzw
  1836.   39: mad r0.xyzw, cb1[2].xyzw, r0.zzzz, r5.xyzw
  1837.   40: add r5.xyzw, r0.xyzw, cb1[3].xyzw
  1838.   41: mul r7.xyzw, r5.yyyy, cb2[18].xyzw
  1839.   42: mad r7.xyzw, cb2[17].xyzw, r5.xxxx, r7.xyzw
  1840.   43: mad r7.xyzw, cb2[19].xyzw, r5.zzzz, r7.xyzw
  1841.   44: mad o0.xyzw, cb2[20].xyzw, r5.wwww, r7.xyzw
  1842.   45: mad o1.xy, v3.xyxx, cb0[9].xyxx, cb0[9].zwzz
  1843.   46: mov o1.zw, v3.zzzw
  1844.   47: div r5.xyz, v2.xyzx, r2.xyzx
  1845.   48: mad r2.yzw, v1.xxyz, r2.xxyz, -r3.xxyz
  1846.   49: add r5.yzw, -r3.xxyz, r5.xxyz
  1847.   50: dp2 r5.x, r1.zyzz, r5.yzyy
  1848.   51: dp2 r2.x, r1.zyzz, r2.yzyy
  1849.   52: dp2 r7.y, r6.zyzz, r5.xwxx
  1850.   53: dp2 r8.y, r6.zyzz, r2.xwxx
  1851.   54: dp2 r9.y, r6.yxyy, r2.xwxx
  1852.   55: dp2 r6.y, r6.yxyy, r5.xwxx
  1853.   56: dp2 r7.x, r1.yxyy, r5.yzyy
  1854.   57: dp2 r8.x, r1.yxyy, r2.yzyy
  1855.   58: dp2 r6.x, r4.yzyy, r7.xyxx
  1856.   59: dp2 r9.x, r4.yzyy, r8.xyxx
  1857.   60: dp2 r9.z, r4.xyxx, r8.xyxx
  1858.   61: dp2 r6.z, r4.xyxx, r7.xyxx
  1859.   62: add r1.xyz, r3.xyzx, r6.xyzx
  1860.   63: add r2.xyz, r3.xyzx, r9.xyzx
  1861.   64: dp3 r3.x, r1.xyzx, cb1[4].xyzx
  1862.   65: dp3 r3.y, r1.xyzx, cb1[5].xyzx
  1863.   66: dp3 r3.z, r1.xyzx, cb1[6].xyzx
  1864.   67: dp3 r1.x, r3.xyzx, r3.xyzx
  1865.   68: rsq r1.x, r1.x
  1866.   69: mul r1.xyz, r1.xxxx, r3.xyzx
  1867.   70: mov o2.z, r1.x
  1868.   71: mul r3.xyz, r2.yyyy, cb1[1].xyzx
  1869.   72: mad r2.xyw, cb1[0].xyxz, r2.xxxx, r3.xyxz
  1870.   73: mad r2.xyz, cb1[2].xyzx, r2.zzzz, r2.xywx
  1871.   74: dp3 r1.x, r2.xyzx, r2.xyzx
  1872.   75: rsq r1.x, r1.x
  1873.   76: mul r2.xyz, r1.xxxx, r2.xyzx
  1874.   77: mov o2.x, r2.x
  1875.   78: mov o2.y, l(0)
  1876.   79: mov o3.z, r1.y
  1877.   80: mov o4.z, r1.z
  1878.   81: mov o3.x, r2.y
  1879.   82: mov o4.x, r2.z
  1880.   83: mov o3.y, l(0)
  1881.   84: mov o4.y, l(0)
  1882.   85: mad o5.xyz, cb1[3].xyzx, v0.wwww, r0.xyzx
  1883.   86: mad r0.xyzw, cb1[3].xyzw, v0.wwww, r0.xyzw
  1884.   87: mov o6.xyzw, v7.xyzw
  1885.   88: mul r1.xyzw, r0.yyyy, cb0[5].xyzw
  1886.   89: mad r1.xyzw, cb0[4].xyzw, r0.xxxx, r1.xyzw
  1887.   90: mad r1.xyzw, cb0[6].xyzw, r0.zzzz, r1.xyzw
  1888.   91: mad o7.xyzw, cb0[7].xyzw, r0.wwww, r1.xyzw
  1889.   92: ret
  1890. // Approximately 0 instruction slots used
  1891.  
  1892.  
  1893. -- Hardware tier variant: Tier 1
  1894. -- Fragment shader for "d3d11":
  1895. // Stats: 45 math, 4 temp registers, 4 textures, 2 branches
  1896. Set 2D Texture "_TextureSample0" to slot 0 sampler slot 3
  1897. Set 2D Texture "_LightTexture0" to slot 1
  1898. Set 2D Texture "_LightTextureB0" to slot 2
  1899. Set 3D Texture "unity_ProbeVolumeSH" to slot 3 sampler slot 0
  1900.  
  1901. Constant Buffer "$Globals" (160 bytes) on slot 0 {
  1902.   Matrix4x4 unity_WorldToLight at 64
  1903.   Vector4 _LightColor0 at 32
  1904. }
  1905. Constant Buffer "UnityLighting" (768 bytes) on slot 1 {
  1906.   Vector4 _WorldSpaceLightPos0 at 0
  1907.   Vector4 unity_OcclusionMaskSelector at 736
  1908. }
  1909. Constant Buffer "UnityProbeVolume" (112 bytes) on slot 2 {
  1910.   Matrix4x4 unity_ProbeVolumeWorldToObject at 16
  1911.   Vector4 unity_ProbeVolumeParams at 0
  1912.   Vector3 unity_ProbeVolumeSizeInv at 80
  1913.   Vector3 unity_ProbeVolumeMin at 96
  1914. }
  1915.  
  1916. Shader Disassembly:
  1917. //
  1918. // Generated by Microsoft (R) D3D Shader Disassembler
  1919. //
  1920. //
  1921. // Input signature:
  1922. //
  1923. // Name                 Index   Mask Register SysValue  Format   Used
  1924. // -------------------- ----- ------ -------- -------- ------- ------
  1925. // SV_POSITION              0   xyzw        0      POS   float      
  1926. // TEXCOORD                 0   xyzw        1     NONE   float   xy  
  1927. // TEXCOORD                 1   xyz         2     NONE   float   xyz
  1928. // TEXCOORD                 2   xyz         3     NONE   float   xyz
  1929. // TEXCOORD                 3   xyz         4     NONE   float   xyz
  1930. // TEXCOORD                 4   xyz         5     NONE   float   xyz
  1931. // COLOR                    0   xyzw        6     NONE   float   xyz
  1932. // TEXCOORD                 5   xyzw        7     NONE   float      
  1933. //
  1934. //
  1935. // Output signature:
  1936. //
  1937. // Name                 Index   Mask Register SysValue  Format   Used
  1938. // -------------------- ----- ------ -------- -------- ------- ------
  1939. // SV_Target                0   xyzw        0   TARGET   float   xyzw
  1940. //
  1941.       ps_4_0
  1942.       dcl_constantbuffer CB0[8], immediateIndexed
  1943.       dcl_constantbuffer CB1[47], immediateIndexed
  1944.       dcl_constantbuffer CB2[7], immediateIndexed
  1945.       dcl_sampler s0, mode_default
  1946.       dcl_sampler s1, mode_default
  1947.       dcl_sampler s2, mode_default
  1948.       dcl_sampler s3, mode_default
  1949.       dcl_resource_texture2d (float,float,float,float) t0
  1950.       dcl_resource_texture2d (float,float,float,float) t1
  1951.       dcl_resource_texture2d (float,float,float,float) t2
  1952.       dcl_resource_texture3d (float,float,float,float) t3
  1953.       dcl_input_ps linear v1.xy
  1954.       dcl_input_ps linear v2.xyz
  1955.       dcl_input_ps linear v3.xyz
  1956.       dcl_input_ps linear v4.xyz
  1957.       dcl_input_ps linear v5.xyz
  1958.       dcl_input_ps linear v6.xyz
  1959.       dcl_output o0.xyzw
  1960.       dcl_temps 4
  1961.    0: add r0.xyz, -v5.xyzx, cb1[0].xyzx
  1962.    1: dp3 r0.w, r0.xyzx, r0.xyzx
  1963.    2: rsq r0.w, r0.w
  1964.    3: mul r0.xyz, r0.wwww, r0.xyzx
  1965.    4: sample r1.xyzw, v1.xyxx, t0.xyzw, s3
  1966.    5: mul r1.x, r1.w, r1.x
  1967.    6: mad r1.xy, r1.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
  1968.    7: dp2 r0.w, r1.xyxx, r1.xyxx
  1969.    8: min r0.w, r0.w, l(1.000000)
  1970.    9: add r0.w, -r0.w, l(1.000000)
  1971.   10: sqrt r1.z, r0.w
  1972.   11: mul r2.xyzw, v5.yyyy, cb0[5].xyzw
  1973.   12: mad r2.xyzw, cb0[4].xyzw, v5.xxxx, r2.xyzw
  1974.   13: mad r2.xyzw, cb0[6].xyzw, v5.zzzz, r2.xyzw
  1975.   14: add r2.xyzw, r2.xyzw, cb0[7].xyzw
  1976.   15: eq r0.w, cb2[0].x, l(1.000000)
  1977.   16: if_nz r0.w
  1978.   17:   eq r0.w, cb2[0].y, l(1.000000)
  1979.   18:   mul r3.xyz, v5.yyyy, cb2[2].xyzx
  1980.   19:   mad r3.xyz, cb2[1].xyzx, v5.xxxx, r3.xyzx
  1981.   20:   mad r3.xyz, cb2[3].xyzx, v5.zzzz, r3.xyzx
  1982.   21:   add r3.xyz, r3.xyzx, cb2[4].xyzx
  1983.   22:   movc r3.xyz, r0.wwww, r3.xyzx, v5.xyzx
  1984.   23:   add r3.xyz, r3.xyzx, -cb2[6].xyzx
  1985.   24:   mul r3.yzw, r3.xxyz, cb2[5].xxyz
  1986.   25:   mad r0.w, r3.y, l(0.250000), l(0.750000)
  1987.   26:   mad r1.w, cb2[0].z, l(0.500000), l(0.750000)
  1988.   27:   max r3.x, r0.w, r1.w
  1989.   28:   sample r3.xyzw, r3.xzwx, t3.xyzw, s0
  1990.   29: else
  1991.   30:   mov r3.xyzw, l(1.000000,1.000000,1.000000,1.000000)
  1992.   31: endif
  1993.   32: dp4_sat r0.w, r3.xyzw, cb1[46].xyzw
  1994.   33: lt r1.w, l(0.000000), r2.z
  1995.   34: and r1.w, r1.w, l(0x3f800000)
  1996.   35: div r3.xy, r2.xyxx, r2.wwww
  1997.   36: add r3.xy, r3.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
  1998.   37: sample r3.xyzw, r3.xyxx, t1.xyzw, s1
  1999.   38: mul r1.w, r1.w, r3.w
  2000.   39: dp3 r2.x, r2.xyzx, r2.xyzx
  2001.   40: sample r2.xyzw, r2.xxxx, t2.xyzw, s2
  2002.   41: mul r1.w, r1.w, r2.x
  2003.   42: mul r0.w, r0.w, r1.w
  2004.   43: dp3 r2.x, v2.xyzx, r1.xyzx
  2005.   44: dp3 r2.y, v3.xyzx, r1.xyzx
  2006.   45: dp3 r2.z, v4.xyzx, r1.xyzx
  2007.   46: dp3 r1.x, r2.xyzx, r2.xyzx
  2008.   47: rsq r1.x, r1.x
  2009.   48: mul r1.xyz, r1.xxxx, r2.xyzx
  2010.   49: mul r2.xyz, r0.wwww, cb0[2].xyzx
  2011.   50: dp3 r0.x, r1.xyzx, r0.xyzx
  2012.   51: max r0.x, r0.x, l(0.000000)
  2013.   52: mul r0.yzw, r2.xxyz, v6.xxyz
  2014.   53: mul o0.xyz, r0.xxxx, r0.yzwy
  2015.   54: mov o0.w, l(1.000000)
  2016.   55: ret
  2017. // Approximately 0 instruction slots used
  2018.  
  2019.  
  2020. //////////////////////////////////////////////////////
  2021. Keywords set in this variant: POINT_COOKIE
  2022. -- Hardware tier variant: Tier 1
  2023. -- Vertex shader for "d3d11":
  2024. // Stats: 69 math, 10 temp registers
  2025. Uses vertex data channel "Vertex"
  2026. Uses vertex data channel "Normal"
  2027. Uses vertex data channel "Color"
  2028. Uses vertex data channel "TexCoord"
  2029. Uses vertex data channel "TexCoord0"
  2030. Uses vertex data channel "TexCoord1"
  2031. Uses vertex data channel "TexCoord2"
  2032. Uses vertex data channel "Tangent"
  2033.  
  2034. Constant Buffer "$Globals" (160 bytes) on slot 0 {
  2035.   Matrix4x4 unity_WorldToLight at 64
  2036.   Float _t at 128
  2037.   Float _PopInTime at 132
  2038.   Vector4 _tex4coord_ST at 144
  2039. }
  2040. Constant Buffer "UnityPerDraw" (160 bytes) on slot 1 {
  2041.   Matrix4x4 unity_ObjectToWorld at 0
  2042.   Matrix4x4 unity_WorldToObject at 64
  2043. }
  2044. Constant Buffer "UnityPerFrame" (368 bytes) on slot 2 {
  2045.   Matrix4x4 unity_MatrixVP at 272
  2046. }
  2047.  
  2048. Shader Disassembly:
  2049. //
  2050. // Generated by Microsoft (R) D3D Shader Disassembler
  2051. //
  2052. //
  2053. // Input signature:
  2054. //
  2055. // Name                 Index   Mask Register SysValue  Format   Used
  2056. // -------------------- ----- ------ -------- -------- ------- ------
  2057. // POSITION                 0   xyzw        0     NONE   float   xyzw
  2058. // TANGENT                  0   xyzw        1     NONE   float   xyz
  2059. // NORMAL                   0   xyz         2     NONE   float   xyz
  2060. // TEXCOORD                 0   xyzw        3     NONE   float   xyzw
  2061. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  2062. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  2063. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  2064. // COLOR                    0   xyzw        7     NONE   float   xyzw
  2065. //
  2066. //
  2067. // Output signature:
  2068. //
  2069. // Name                 Index   Mask Register SysValue  Format   Used
  2070. // -------------------- ----- ------ -------- -------- ------- ------
  2071. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  2072. // TEXCOORD                 0   xyzw        1     NONE   float   xyzw
  2073. // TEXCOORD                 1   xyz         2     NONE   float   xyz
  2074. // TEXCOORD                 2   xyz         3     NONE   float   xyz
  2075. // TEXCOORD                 3   xyz         4     NONE   float   xyz
  2076. // TEXCOORD                 4   xyz         5     NONE   float   xyz
  2077. // COLOR                    0   xyzw        6     NONE   float   xyzw
  2078. // TEXCOORD                 5   xyz         7     NONE   float   xyz
  2079. //
  2080.       vs_4_0
  2081.       dcl_constantbuffer CB0[10], immediateIndexed
  2082.       dcl_constantbuffer CB1[7], immediateIndexed
  2083.       dcl_constantbuffer CB2[21], immediateIndexed
  2084.       dcl_input v0.xyzw
  2085.       dcl_input v1.xyz
  2086.       dcl_input v2.xyz
  2087.       dcl_input v3.xyzw
  2088.       dcl_input v4.xyzw
  2089.       dcl_input v5.xyzw
  2090.       dcl_input v6.xyzw
  2091.       dcl_input v7.xyzw
  2092.       dcl_output_siv o0.xyzw, position
  2093.       dcl_output o1.xyzw
  2094.       dcl_output o2.xyz
  2095.       dcl_output o3.xyz
  2096.       dcl_output o4.xyz
  2097.       dcl_output o5.xyz
  2098.       dcl_output o6.xyzw
  2099.       dcl_output o7.xyz
  2100.       dcl_temps 10
  2101.    0: add r0.x, cb0[8].y, cb0[8].x
  2102.    1: ge r0.x, v3.z, r0.x
  2103.    2: and r0.x, r0.x, l(0x3f800000)
  2104.    3: add r0.y, -v3.z, cb0[8].x
  2105.    4: div_sat r0.y, r0.y, v3.w
  2106.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  2107.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  2108.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  2109.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  2110.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  2111.   10: sincos r2.x, r3.x, r1.y
  2112.   11: mov r4.z, r2.x
  2113.   12: mov r4.y, r3.x
  2114.   13: mov r4.x, -r2.x
  2115.   14: sincos r1.x, r2.x, r1.x
  2116.   15: sincos r3.x, r5.x, r1.z
  2117.   16: mov r6.z, r1.x
  2118.   17: mov r6.y, r2.x
  2119.   18: mov r6.x, -r1.x
  2120.   19: mov r1.z, r3.x
  2121.   20: mov r1.y, r5.x
  2122.   21: mov r1.x, -r3.x
  2123.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  2124.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  2125.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  2126.   25: mov r3.x, v4.w
  2127.   26: mov r3.y, v5.w
  2128.   27: mov r3.z, v6.w
  2129.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  2130.   29: dp2 r5.x, r1.zyzz, r5.yzyy
  2131.   30: dp2 r7.y, r6.zyzz, r5.xwxx
  2132.   31: dp2 r8.y, r6.yxyy, r5.xwxx
  2133.   32: dp2 r7.x, r1.yxyy, r5.yzyy
  2134.   33: dp2 r8.x, r4.yzyy, r7.xyxx
  2135.   34: dp2 r8.z, r4.xyxx, r7.xyxx
  2136.   35: add r5.xyz, r3.xyzx, r8.xyzx
  2137.   36: add r0.xyz, r0.xzwx, r5.xyzx
  2138.   37: mul r5.xyzw, r0.yyyy, cb1[1].xyzw
  2139.   38: mad r5.xyzw, cb1[0].xyzw, r0.xxxx, r5.xyzw
  2140.   39: mad r0.xyzw, cb1[2].xyzw, r0.zzzz, r5.xyzw
  2141.   40: add r5.xyzw, r0.xyzw, cb1[3].xyzw
  2142.   41: mul r7.xyzw, r5.yyyy, cb2[18].xyzw
  2143.   42: mad r7.xyzw, cb2[17].xyzw, r5.xxxx, r7.xyzw
  2144.   43: mad r7.xyzw, cb2[19].xyzw, r5.zzzz, r7.xyzw
  2145.   44: mad o0.xyzw, cb2[20].xyzw, r5.wwww, r7.xyzw
  2146.   45: mad o1.xy, v3.xyxx, cb0[9].xyxx, cb0[9].zwzz
  2147.   46: mov o1.zw, v3.zzzw
  2148.   47: div r5.xyz, v2.xyzx, r2.xyzx
  2149.   48: mad r2.yzw, v1.xxyz, r2.xxyz, -r3.xxyz
  2150.   49: add r5.yzw, -r3.xxyz, r5.xxyz
  2151.   50: dp2 r5.x, r1.zyzz, r5.yzyy
  2152.   51: dp2 r2.x, r1.zyzz, r2.yzyy
  2153.   52: dp2 r7.y, r6.zyzz, r5.xwxx
  2154.   53: dp2 r8.y, r6.zyzz, r2.xwxx
  2155.   54: dp2 r9.y, r6.yxyy, r2.xwxx
  2156.   55: dp2 r6.y, r6.yxyy, r5.xwxx
  2157.   56: dp2 r7.x, r1.yxyy, r5.yzyy
  2158.   57: dp2 r8.x, r1.yxyy, r2.yzyy
  2159.   58: dp2 r6.x, r4.yzyy, r7.xyxx
  2160.   59: dp2 r9.x, r4.yzyy, r8.xyxx
  2161.   60: dp2 r9.z, r4.xyxx, r8.xyxx
  2162.   61: dp2 r6.z, r4.xyxx, r7.xyxx
  2163.   62: add r1.xyz, r3.xyzx, r6.xyzx
  2164.   63: add r2.xyz, r3.xyzx, r9.xyzx
  2165.   64: dp3 r3.x, r1.xyzx, cb1[4].xyzx
  2166.   65: dp3 r3.y, r1.xyzx, cb1[5].xyzx
  2167.   66: dp3 r3.z, r1.xyzx, cb1[6].xyzx
  2168.   67: dp3 r1.x, r3.xyzx, r3.xyzx
  2169.   68: rsq r1.x, r1.x
  2170.   69: mul r1.xyz, r1.xxxx, r3.xyzx
  2171.   70: mov o2.z, r1.x
  2172.   71: mul r3.xyz, r2.yyyy, cb1[1].xyzx
  2173.   72: mad r2.xyw, cb1[0].xyxz, r2.xxxx, r3.xyxz
  2174.   73: mad r2.xyz, cb1[2].xyzx, r2.zzzz, r2.xywx
  2175.   74: dp3 r1.x, r2.xyzx, r2.xyzx
  2176.   75: rsq r1.x, r1.x
  2177.   76: mul r2.xyz, r1.xxxx, r2.xyzx
  2178.   77: mov o2.x, r2.x
  2179.   78: mov o2.y, l(0)
  2180.   79: mov o3.z, r1.y
  2181.   80: mov o4.z, r1.z
  2182.   81: mov o3.x, r2.y
  2183.   82: mov o4.x, r2.z
  2184.   83: mov o3.y, l(0)
  2185.   84: mov o4.y, l(0)
  2186.   85: mad o5.xyz, cb1[3].xyzx, v0.wwww, r0.xyzx
  2187.   86: mad r0.xyzw, cb1[3].xyzw, v0.wwww, r0.xyzw
  2188.   87: mov o6.xyzw, v7.xyzw
  2189.   88: mul r1.xyz, r0.yyyy, cb0[5].xyzx
  2190.   89: mad r1.xyz, cb0[4].xyzx, r0.xxxx, r1.xyzx
  2191.   90: mad r0.xyz, cb0[6].xyzx, r0.zzzz, r1.xyzx
  2192.   91: mad o7.xyz, cb0[7].xyzx, r0.wwww, r0.xyzx
  2193.   92: ret
  2194. // Approximately 0 instruction slots used
  2195.  
  2196.  
  2197. -- Hardware tier variant: Tier 1
  2198. -- Fragment shader for "d3d11":
  2199. // Stats: 40 math, 4 temp registers, 4 textures, 2 branches
  2200. Set 2D Texture "_TextureSample0" to slot 0 sampler slot 3
  2201. Set 2D Texture "_LightTextureB0" to slot 1 sampler slot 2
  2202. Set CUBE Texture "_LightTexture0" to slot 2 sampler slot 1
  2203. Set 3D Texture "unity_ProbeVolumeSH" to slot 3 sampler slot 0
  2204.  
  2205. Constant Buffer "$Globals" (160 bytes) on slot 0 {
  2206.   Matrix4x4 unity_WorldToLight at 64
  2207.   Vector4 _LightColor0 at 32
  2208. }
  2209. Constant Buffer "UnityLighting" (768 bytes) on slot 1 {
  2210.   Vector4 _WorldSpaceLightPos0 at 0
  2211.   Vector4 unity_OcclusionMaskSelector at 736
  2212. }
  2213. Constant Buffer "UnityProbeVolume" (112 bytes) on slot 2 {
  2214.   Matrix4x4 unity_ProbeVolumeWorldToObject at 16
  2215.   Vector4 unity_ProbeVolumeParams at 0
  2216.   Vector3 unity_ProbeVolumeSizeInv at 80
  2217.   Vector3 unity_ProbeVolumeMin at 96
  2218. }
  2219.  
  2220. Shader Disassembly:
  2221. //
  2222. // Generated by Microsoft (R) D3D Shader Disassembler
  2223. //
  2224. //
  2225. // Input signature:
  2226. //
  2227. // Name                 Index   Mask Register SysValue  Format   Used
  2228. // -------------------- ----- ------ -------- -------- ------- ------
  2229. // SV_POSITION              0   xyzw        0      POS   float      
  2230. // TEXCOORD                 0   xyzw        1     NONE   float   xy  
  2231. // TEXCOORD                 1   xyz         2     NONE   float   xyz
  2232. // TEXCOORD                 2   xyz         3     NONE   float   xyz
  2233. // TEXCOORD                 3   xyz         4     NONE   float   xyz
  2234. // TEXCOORD                 4   xyz         5     NONE   float   xyz
  2235. // COLOR                    0   xyzw        6     NONE   float   xyz
  2236. // TEXCOORD                 5   xyz         7     NONE   float      
  2237. //
  2238. //
  2239. // Output signature:
  2240. //
  2241. // Name                 Index   Mask Register SysValue  Format   Used
  2242. // -------------------- ----- ------ -------- -------- ------- ------
  2243. // SV_Target                0   xyzw        0   TARGET   float   xyzw
  2244. //
  2245.       ps_4_0
  2246.       dcl_constantbuffer CB0[8], immediateIndexed
  2247.       dcl_constantbuffer CB1[47], immediateIndexed
  2248.       dcl_constantbuffer CB2[7], immediateIndexed
  2249.       dcl_sampler s0, mode_default
  2250.       dcl_sampler s1, mode_default
  2251.       dcl_sampler s2, mode_default
  2252.       dcl_sampler s3, mode_default
  2253.       dcl_resource_texture2d (float,float,float,float) t0
  2254.       dcl_resource_texture2d (float,float,float,float) t1
  2255.       dcl_resource_texturecube (float,float,float,float) t2
  2256.       dcl_resource_texture3d (float,float,float,float) t3
  2257.       dcl_input_ps linear v1.xy
  2258.       dcl_input_ps linear v2.xyz
  2259.       dcl_input_ps linear v3.xyz
  2260.       dcl_input_ps linear v4.xyz
  2261.       dcl_input_ps linear v5.xyz
  2262.       dcl_input_ps linear v6.xyz
  2263.       dcl_output o0.xyzw
  2264.       dcl_temps 4
  2265.    0: add r0.xyz, -v5.xyzx, cb1[0].xyzx
  2266.    1: dp3 r0.w, r0.xyzx, r0.xyzx
  2267.    2: rsq r0.w, r0.w
  2268.    3: mul r0.xyz, r0.wwww, r0.xyzx
  2269.    4: sample r1.xyzw, v1.xyxx, t0.xyzw, s3
  2270.    5: mul r1.x, r1.w, r1.x
  2271.    6: mad r1.xy, r1.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
  2272.    7: dp2 r0.w, r1.xyxx, r1.xyxx
  2273.    8: min r0.w, r0.w, l(1.000000)
  2274.    9: add r0.w, -r0.w, l(1.000000)
  2275.   10: sqrt r1.z, r0.w
  2276.   11: mul r2.xyz, v5.yyyy, cb0[5].xyzx
  2277.   12: mad r2.xyz, cb0[4].xyzx, v5.xxxx, r2.xyzx
  2278.   13: mad r2.xyz, cb0[6].xyzx, v5.zzzz, r2.xyzx
  2279.   14: add r2.xyz, r2.xyzx, cb0[7].xyzx
  2280.   15: eq r0.w, cb2[0].x, l(1.000000)
  2281.   16: if_nz r0.w
  2282.   17:   eq r0.w, cb2[0].y, l(1.000000)
  2283.   18:   mul r3.xyz, v5.yyyy, cb2[2].xyzx
  2284.   19:   mad r3.xyz, cb2[1].xyzx, v5.xxxx, r3.xyzx
  2285.   20:   mad r3.xyz, cb2[3].xyzx, v5.zzzz, r3.xyzx
  2286.   21:   add r3.xyz, r3.xyzx, cb2[4].xyzx
  2287.   22:   movc r3.xyz, r0.wwww, r3.xyzx, v5.xyzx
  2288.   23:   add r3.xyz, r3.xyzx, -cb2[6].xyzx
  2289.   24:   mul r3.yzw, r3.xxyz, cb2[5].xxyz
  2290.   25:   mad r0.w, r3.y, l(0.250000), l(0.750000)
  2291.   26:   mad r1.w, cb2[0].z, l(0.500000), l(0.750000)
  2292.   27:   max r3.x, r0.w, r1.w
  2293.   28:   sample r3.xyzw, r3.xzwx, t3.xyzw, s0
  2294.   29: else
  2295.   30:   mov r3.xyzw, l(1.000000,1.000000,1.000000,1.000000)
  2296.   31: endif
  2297.   32: dp4_sat r0.w, r3.xyzw, cb1[46].xyzw
  2298.   33: dp3 r1.w, r2.xyzx, r2.xyzx
  2299.   34: sample r3.xyzw, r1.wwww, t1.xyzw, s2
  2300.   35: sample r2.xyzw, r2.xyzx, t2.xyzw, s1
  2301.   36: mul r1.w, r2.w, r3.x
  2302.   37: mul r0.w, r0.w, r1.w
  2303.   38: dp3 r2.x, v2.xyzx, r1.xyzx
  2304.   39: dp3 r2.y, v3.xyzx, r1.xyzx
  2305.   40: dp3 r2.z, v4.xyzx, r1.xyzx
  2306.   41: dp3 r1.x, r2.xyzx, r2.xyzx
  2307.   42: rsq r1.x, r1.x
  2308.   43: mul r1.xyz, r1.xxxx, r2.xyzx
  2309.   44: mul r2.xyz, r0.wwww, cb0[2].xyzx
  2310.   45: dp3 r0.x, r1.xyzx, r0.xyzx
  2311.   46: max r0.x, r0.x, l(0.000000)
  2312.   47: mul r0.yzw, r2.xxyz, v6.xxyz
  2313.   48: mul o0.xyz, r0.xxxx, r0.yzwy
  2314.   49: mov o0.w, l(1.000000)
  2315.   50: ret
  2316. // Approximately 0 instruction slots used
  2317.  
  2318.  
  2319. //////////////////////////////////////////////////////
  2320. Keywords set in this variant: DIRECTIONAL_COOKIE
  2321. -- Hardware tier variant: Tier 1
  2322. -- Vertex shader for "d3d11":
  2323. // Stats: 69 math, 10 temp registers
  2324. Uses vertex data channel "Vertex"
  2325. Uses vertex data channel "Normal"
  2326. Uses vertex data channel "Color"
  2327. Uses vertex data channel "TexCoord"
  2328. Uses vertex data channel "TexCoord0"
  2329. Uses vertex data channel "TexCoord1"
  2330. Uses vertex data channel "TexCoord2"
  2331. Uses vertex data channel "Tangent"
  2332.  
  2333. Constant Buffer "$Globals" (160 bytes) on slot 0 {
  2334.   Matrix4x4 unity_WorldToLight at 64
  2335.   Float _t at 128
  2336.   Float _PopInTime at 132
  2337.   Vector4 _tex4coord_ST at 144
  2338. }
  2339. Constant Buffer "UnityPerDraw" (160 bytes) on slot 1 {
  2340.   Matrix4x4 unity_ObjectToWorld at 0
  2341.   Matrix4x4 unity_WorldToObject at 64
  2342. }
  2343. Constant Buffer "UnityPerFrame" (368 bytes) on slot 2 {
  2344.   Matrix4x4 unity_MatrixVP at 272
  2345. }
  2346.  
  2347. Shader Disassembly:
  2348. //
  2349. // Generated by Microsoft (R) D3D Shader Disassembler
  2350. //
  2351. //
  2352. // Input signature:
  2353. //
  2354. // Name                 Index   Mask Register SysValue  Format   Used
  2355. // -------------------- ----- ------ -------- -------- ------- ------
  2356. // POSITION                 0   xyzw        0     NONE   float   xyzw
  2357. // TANGENT                  0   xyzw        1     NONE   float   xyz
  2358. // NORMAL                   0   xyz         2     NONE   float   xyz
  2359. // TEXCOORD                 0   xyzw        3     NONE   float   xyzw
  2360. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  2361. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  2362. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  2363. // COLOR                    0   xyzw        7     NONE   float   xyzw
  2364. //
  2365. //
  2366. // Output signature:
  2367. //
  2368. // Name                 Index   Mask Register SysValue  Format   Used
  2369. // -------------------- ----- ------ -------- -------- ------- ------
  2370. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  2371. // TEXCOORD                 0   xyzw        1     NONE   float   xyzw
  2372. // TEXCOORD                 1   xyz         2     NONE   float   xyz
  2373. // TEXCOORD                 2   xyz         3     NONE   float   xyz
  2374. // TEXCOORD                 3   xyz         4     NONE   float   xyz
  2375. // TEXCOORD                 4   xyz         5     NONE   float   xyz
  2376. // COLOR                    0   xyzw        6     NONE   float   xyzw
  2377. // TEXCOORD                 5   xy          7     NONE   float   xy  
  2378. //
  2379.       vs_4_0
  2380.       dcl_constantbuffer CB0[10], immediateIndexed
  2381.       dcl_constantbuffer CB1[7], immediateIndexed
  2382.       dcl_constantbuffer CB2[21], immediateIndexed
  2383.       dcl_input v0.xyzw
  2384.       dcl_input v1.xyz
  2385.       dcl_input v2.xyz
  2386.       dcl_input v3.xyzw
  2387.       dcl_input v4.xyzw
  2388.       dcl_input v5.xyzw
  2389.       dcl_input v6.xyzw
  2390.       dcl_input v7.xyzw
  2391.       dcl_output_siv o0.xyzw, position
  2392.       dcl_output o1.xyzw
  2393.       dcl_output o2.xyz
  2394.       dcl_output o3.xyz
  2395.       dcl_output o4.xyz
  2396.       dcl_output o5.xyz
  2397.       dcl_output o6.xyzw
  2398.       dcl_output o7.xy
  2399.       dcl_temps 10
  2400.    0: add r0.x, cb0[8].y, cb0[8].x
  2401.    1: ge r0.x, v3.z, r0.x
  2402.    2: and r0.x, r0.x, l(0x3f800000)
  2403.    3: add r0.y, -v3.z, cb0[8].x
  2404.    4: div_sat r0.y, r0.y, v3.w
  2405.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  2406.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  2407.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  2408.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  2409.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  2410.   10: sincos r2.x, r3.x, r1.y
  2411.   11: mov r4.z, r2.x
  2412.   12: mov r4.y, r3.x
  2413.   13: mov r4.x, -r2.x
  2414.   14: sincos r1.x, r2.x, r1.x
  2415.   15: sincos r3.x, r5.x, r1.z
  2416.   16: mov r6.z, r1.x
  2417.   17: mov r6.y, r2.x
  2418.   18: mov r6.x, -r1.x
  2419.   19: mov r1.z, r3.x
  2420.   20: mov r1.y, r5.x
  2421.   21: mov r1.x, -r3.x
  2422.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  2423.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  2424.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  2425.   25: mov r3.x, v4.w
  2426.   26: mov r3.y, v5.w
  2427.   27: mov r3.z, v6.w
  2428.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  2429.   29: dp2 r5.x, r1.zyzz, r5.yzyy
  2430.   30: dp2 r7.y, r6.zyzz, r5.xwxx
  2431.   31: dp2 r8.y, r6.yxyy, r5.xwxx
  2432.   32: dp2 r7.x, r1.yxyy, r5.yzyy
  2433.   33: dp2 r8.x, r4.yzyy, r7.xyxx
  2434.   34: dp2 r8.z, r4.xyxx, r7.xyxx
  2435.   35: add r5.xyz, r3.xyzx, r8.xyzx
  2436.   36: add r0.xyz, r0.xzwx, r5.xyzx
  2437.   37: mul r5.xyzw, r0.yyyy, cb1[1].xyzw
  2438.   38: mad r5.xyzw, cb1[0].xyzw, r0.xxxx, r5.xyzw
  2439.   39: mad r0.xyzw, cb1[2].xyzw, r0.zzzz, r5.xyzw
  2440.   40: add r5.xyzw, r0.xyzw, cb1[3].xyzw
  2441.   41: mul r7.xyzw, r5.yyyy, cb2[18].xyzw
  2442.   42: mad r7.xyzw, cb2[17].xyzw, r5.xxxx, r7.xyzw
  2443.   43: mad r7.xyzw, cb2[19].xyzw, r5.zzzz, r7.xyzw
  2444.   44: mad o0.xyzw, cb2[20].xyzw, r5.wwww, r7.xyzw
  2445.   45: mad o1.xy, v3.xyxx, cb0[9].xyxx, cb0[9].zwzz
  2446.   46: mov o1.zw, v3.zzzw
  2447.   47: div r5.xyz, v2.xyzx, r2.xyzx
  2448.   48: mad r2.yzw, v1.xxyz, r2.xxyz, -r3.xxyz
  2449.   49: add r5.yzw, -r3.xxyz, r5.xxyz
  2450.   50: dp2 r5.x, r1.zyzz, r5.yzyy
  2451.   51: dp2 r2.x, r1.zyzz, r2.yzyy
  2452.   52: dp2 r7.y, r6.zyzz, r5.xwxx
  2453.   53: dp2 r8.y, r6.zyzz, r2.xwxx
  2454.   54: dp2 r9.y, r6.yxyy, r2.xwxx
  2455.   55: dp2 r6.y, r6.yxyy, r5.xwxx
  2456.   56: dp2 r7.x, r1.yxyy, r5.yzyy
  2457.   57: dp2 r8.x, r1.yxyy, r2.yzyy
  2458.   58: dp2 r6.x, r4.yzyy, r7.xyxx
  2459.   59: dp2 r9.x, r4.yzyy, r8.xyxx
  2460.   60: dp2 r9.z, r4.xyxx, r8.xyxx
  2461.   61: dp2 r6.z, r4.xyxx, r7.xyxx
  2462.   62: add r1.xyz, r3.xyzx, r6.xyzx
  2463.   63: add r2.xyz, r3.xyzx, r9.xyzx
  2464.   64: dp3 r3.x, r1.xyzx, cb1[4].xyzx
  2465.   65: dp3 r3.y, r1.xyzx, cb1[5].xyzx
  2466.   66: dp3 r3.z, r1.xyzx, cb1[6].xyzx
  2467.   67: dp3 r1.x, r3.xyzx, r3.xyzx
  2468.   68: rsq r1.x, r1.x
  2469.   69: mul r1.xyz, r1.xxxx, r3.xyzx
  2470.   70: mov o2.z, r1.x
  2471.   71: mul r3.xyz, r2.yyyy, cb1[1].xyzx
  2472.   72: mad r2.xyw, cb1[0].xyxz, r2.xxxx, r3.xyxz
  2473.   73: mad r2.xyz, cb1[2].xyzx, r2.zzzz, r2.xywx
  2474.   74: dp3 r1.x, r2.xyzx, r2.xyzx
  2475.   75: rsq r1.x, r1.x
  2476.   76: mul r2.xyz, r1.xxxx, r2.xyzx
  2477.   77: mov o2.x, r2.x
  2478.   78: mov o2.y, l(0)
  2479.   79: mov o3.z, r1.y
  2480.   80: mov o4.z, r1.z
  2481.   81: mov o3.x, r2.y
  2482.   82: mov o4.x, r2.z
  2483.   83: mov o3.y, l(0)
  2484.   84: mov o4.y, l(0)
  2485.   85: mad o5.xyz, cb1[3].xyzx, v0.wwww, r0.xyzx
  2486.   86: mad r0.xyzw, cb1[3].xyzw, v0.wwww, r0.xyzw
  2487.   87: mov o6.xyzw, v7.xyzw
  2488.   88: mul r1.xy, r0.yyyy, cb0[5].xyxx
  2489.   89: mad r0.xy, cb0[4].xyxx, r0.xxxx, r1.xyxx
  2490.   90: mad r0.xy, cb0[6].xyxx, r0.zzzz, r0.xyxx
  2491.   91: mad o7.xy, cb0[7].xyxx, r0.wwww, r0.xyxx
  2492.   92: ret
  2493. // Approximately 0 instruction slots used
  2494.  
  2495.  
  2496. -- Hardware tier variant: Tier 1
  2497. -- Fragment shader for "d3d11":
  2498. // Stats: 34 math, 3 temp registers, 3 textures, 2 branches
  2499. Set 2D Texture "_TextureSample0" to slot 0 sampler slot 2
  2500. Set 2D Texture "_LightTexture0" to slot 1
  2501. Set 3D Texture "unity_ProbeVolumeSH" to slot 2 sampler slot 0
  2502.  
  2503. Constant Buffer "$Globals" (160 bytes) on slot 0 {
  2504.   Matrix4x4 unity_WorldToLight at 64
  2505.   Vector4 _LightColor0 at 32
  2506. }
  2507. Constant Buffer "UnityLighting" (768 bytes) on slot 1 {
  2508.   Vector4 _WorldSpaceLightPos0 at 0
  2509.   Vector4 unity_OcclusionMaskSelector at 736
  2510. }
  2511. Constant Buffer "UnityProbeVolume" (112 bytes) on slot 2 {
  2512.   Matrix4x4 unity_ProbeVolumeWorldToObject at 16
  2513.   Vector4 unity_ProbeVolumeParams at 0
  2514.   Vector3 unity_ProbeVolumeSizeInv at 80
  2515.   Vector3 unity_ProbeVolumeMin at 96
  2516. }
  2517.  
  2518. Shader Disassembly:
  2519. //
  2520. // Generated by Microsoft (R) D3D Shader Disassembler
  2521. //
  2522. //
  2523. // Input signature:
  2524. //
  2525. // Name                 Index   Mask Register SysValue  Format   Used
  2526. // -------------------- ----- ------ -------- -------- ------- ------
  2527. // SV_POSITION              0   xyzw        0      POS   float      
  2528. // TEXCOORD                 0   xyzw        1     NONE   float   xy  
  2529. // TEXCOORD                 1   xyz         2     NONE   float   xyz
  2530. // TEXCOORD                 2   xyz         3     NONE   float   xyz
  2531. // TEXCOORD                 3   xyz         4     NONE   float   xyz
  2532. // TEXCOORD                 4   xyz         5     NONE   float   xyz
  2533. // COLOR                    0   xyzw        6     NONE   float   xyz
  2534. // TEXCOORD                 5   xy          7     NONE   float      
  2535. //
  2536. //
  2537. // Output signature:
  2538. //
  2539. // Name                 Index   Mask Register SysValue  Format   Used
  2540. // -------------------- ----- ------ -------- -------- ------- ------
  2541. // SV_Target                0   xyzw        0   TARGET   float   xyzw
  2542. //
  2543.       ps_4_0
  2544.       dcl_constantbuffer CB0[8], immediateIndexed
  2545.       dcl_constantbuffer CB1[47], immediateIndexed
  2546.       dcl_constantbuffer CB2[7], immediateIndexed
  2547.       dcl_sampler s0, mode_default
  2548.       dcl_sampler s1, mode_default
  2549.       dcl_sampler s2, mode_default
  2550.       dcl_resource_texture2d (float,float,float,float) t0
  2551.       dcl_resource_texture2d (float,float,float,float) t1
  2552.       dcl_resource_texture3d (float,float,float,float) t2
  2553.       dcl_input_ps linear v1.xy
  2554.       dcl_input_ps linear v2.xyz
  2555.       dcl_input_ps linear v3.xyz
  2556.       dcl_input_ps linear v4.xyz
  2557.       dcl_input_ps linear v5.xyz
  2558.       dcl_input_ps linear v6.xyz
  2559.       dcl_output o0.xyzw
  2560.       dcl_temps 3
  2561.    0: sample r0.xyzw, v1.xyxx, t0.xyzw, s2
  2562.    1: mul r0.x, r0.w, r0.x
  2563.    2: mad r0.xy, r0.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
  2564.    3: dp2 r0.w, r0.xyxx, r0.xyxx
  2565.    4: min r0.w, r0.w, l(1.000000)
  2566.    5: add r0.w, -r0.w, l(1.000000)
  2567.    6: sqrt r0.z, r0.w
  2568.    7: mul r1.xy, v5.yyyy, cb0[5].xyxx
  2569.    8: mad r1.xy, cb0[4].xyxx, v5.xxxx, r1.xyxx
  2570.    9: mad r1.xy, cb0[6].xyxx, v5.zzzz, r1.xyxx
  2571.   10: add r1.xy, r1.xyxx, cb0[7].xyxx
  2572.   11: eq r0.w, cb2[0].x, l(1.000000)
  2573.   12: if_nz r0.w
  2574.   13:   eq r0.w, cb2[0].y, l(1.000000)
  2575.   14:   mul r2.xyz, v5.yyyy, cb2[2].xyzx
  2576.   15:   mad r2.xyz, cb2[1].xyzx, v5.xxxx, r2.xyzx
  2577.   16:   mad r2.xyz, cb2[3].xyzx, v5.zzzz, r2.xyzx
  2578.   17:   add r2.xyz, r2.xyzx, cb2[4].xyzx
  2579.   18:   movc r2.xyz, r0.wwww, r2.xyzx, v5.xyzx
  2580.   19:   add r2.xyz, r2.xyzx, -cb2[6].xyzx
  2581.   20:   mul r2.yzw, r2.xxyz, cb2[5].xxyz
  2582.   21:   mad r0.w, r2.y, l(0.250000), l(0.750000)
  2583.   22:   mad r1.z, cb2[0].z, l(0.500000), l(0.750000)
  2584.   23:   max r2.x, r0.w, r1.z
  2585.   24:   sample r2.xyzw, r2.xzwx, t2.xyzw, s0
  2586.   25: else
  2587.   26:   mov r2.xyzw, l(1.000000,1.000000,1.000000,1.000000)
  2588.   27: endif
  2589.   28: dp4_sat r0.w, r2.xyzw, cb1[46].xyzw
  2590.   29: sample r1.xyzw, r1.xyxx, t1.xyzw, s1
  2591.   30: mul r0.w, r0.w, r1.w
  2592.   31: dp3 r1.x, v2.xyzx, r0.xyzx
  2593.   32: dp3 r1.y, v3.xyzx, r0.xyzx
  2594.   33: dp3 r1.z, v4.xyzx, r0.xyzx
  2595.   34: dp3 r0.x, r1.xyzx, r1.xyzx
  2596.   35: rsq r0.x, r0.x
  2597.   36: mul r0.xyz, r0.xxxx, r1.xyzx
  2598.   37: mul r1.xyz, r0.wwww, cb0[2].xyzx
  2599.   38: dp3 r0.x, r0.xyzx, cb1[0].xyzx
  2600.   39: max r0.x, r0.x, l(0.000000)
  2601.   40: mul r0.yzw, r1.xxyz, v6.xxyz
  2602.   41: mul o0.xyz, r0.xxxx, r0.yzwy
  2603.   42: mov o0.w, l(1.000000)
  2604.   43: ret
  2605. // Approximately 0 instruction slots used
  2606.  
  2607.  
  2608.  }
  2609.  
  2610.  
  2611.  // Stats for Vertex shader:
  2612.  //        d3d11: 64 math
  2613.  // Stats for Fragment shader:
  2614.  //        d3d11: 13 math, 1 texture
  2615.  Pass {
  2616.   Name "PREPASS"
  2617.   Tags { "LIGHTMODE"="PREPASSBASE" "QUEUE"="Geometry+0" "RenderType"="Opaque" }
  2618.   //////////////////////////////////
  2619.   //                              //
  2620.   //      Compiled programs       //
  2621.   //                              //
  2622.   //////////////////////////////////
  2623. //////////////////////////////////////////////////////
  2624. No keywords set in this variant.
  2625. -- Hardware tier variant: Tier 1
  2626. -- Vertex shader for "d3d11":
  2627. // Stats: 64 math, 10 temp registers
  2628. Uses vertex data channel "Vertex"
  2629. Uses vertex data channel "Normal"
  2630. Uses vertex data channel "Color"
  2631. Uses vertex data channel "TexCoord"
  2632. Uses vertex data channel "TexCoord0"
  2633. Uses vertex data channel "TexCoord1"
  2634. Uses vertex data channel "TexCoord2"
  2635.  
  2636. Constant Buffer "$Globals" (96 bytes) on slot 0 {
  2637.   Float _t at 64
  2638.   Float _PopInTime at 68
  2639.   Vector4 _tex4coord_ST at 80
  2640. }
  2641. Constant Buffer "UnityPerDraw" (160 bytes) on slot 1 {
  2642.   Matrix4x4 unity_ObjectToWorld at 0
  2643.   Matrix4x4 unity_WorldToObject at 64
  2644. }
  2645. Constant Buffer "UnityPerFrame" (368 bytes) on slot 2 {
  2646.   Matrix4x4 unity_MatrixVP at 272
  2647. }
  2648.  
  2649. Shader Disassembly:
  2650. //
  2651. // Generated by Microsoft (R) D3D Shader Disassembler
  2652. //
  2653. //
  2654. // Input signature:
  2655. //
  2656. // Name                 Index   Mask Register SysValue  Format   Used
  2657. // -------------------- ----- ------ -------- -------- ------- ------
  2658. // POSITION                 0   xyzw        0     NONE   float   xyzw
  2659. // TANGENT                  0   xyzw        1     NONE   float   xyz
  2660. // NORMAL                   0   xyz         2     NONE   float   xyz
  2661. // TEXCOORD                 0   xyzw        3     NONE   float   xyzw
  2662. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  2663. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  2664. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  2665. // COLOR                    0   xyzw        7     NONE   float      
  2666. //
  2667. //
  2668. // Output signature:
  2669. //
  2670. // Name                 Index   Mask Register SysValue  Format   Used
  2671. // -------------------- ----- ------ -------- -------- ------- ------
  2672. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  2673. // TEXCOORD                 0   xyzw        1     NONE   float   xyzw
  2674. // TEXCOORD                 1   xyzw        2     NONE   float   xyzw
  2675. // TEXCOORD                 2   xyzw        3     NONE   float   xyzw
  2676. // TEXCOORD                 3   xyzw        4     NONE   float   xyzw
  2677. //
  2678.       vs_4_0
  2679.       dcl_constantbuffer CB0[6], immediateIndexed
  2680.       dcl_constantbuffer CB1[7], immediateIndexed
  2681.       dcl_constantbuffer CB2[21], immediateIndexed
  2682.       dcl_input v0.xyzw
  2683.       dcl_input v1.xyz
  2684.       dcl_input v2.xyz
  2685.       dcl_input v3.xyzw
  2686.       dcl_input v4.xyzw
  2687.       dcl_input v5.xyzw
  2688.       dcl_input v6.xyzw
  2689.       dcl_output_siv o0.xyzw, position
  2690.       dcl_output o1.xyzw
  2691.       dcl_output o2.xyzw
  2692.       dcl_output o3.xyzw
  2693.       dcl_output o4.xyzw
  2694.       dcl_temps 10
  2695.    0: add r0.x, cb0[4].y, cb0[4].x
  2696.    1: ge r0.x, v3.z, r0.x
  2697.    2: and r0.x, r0.x, l(0x3f800000)
  2698.    3: add r0.y, -v3.z, cb0[4].x
  2699.    4: div_sat r0.y, r0.y, v3.w
  2700.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  2701.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  2702.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  2703.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  2704.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  2705.   10: sincos r2.x, r3.x, r1.y
  2706.   11: mov r4.z, r2.x
  2707.   12: mov r4.y, r3.x
  2708.   13: mov r4.x, -r2.x
  2709.   14: sincos r1.x, r2.x, r1.x
  2710.   15: sincos r3.x, r5.x, r1.z
  2711.   16: mov r6.z, r1.x
  2712.   17: mov r6.y, r2.x
  2713.   18: mov r6.x, -r1.x
  2714.   19: mov r1.z, r3.x
  2715.   20: mov r1.y, r5.x
  2716.   21: mov r1.x, -r3.x
  2717.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  2718.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  2719.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  2720.   25: mov r3.x, v4.w
  2721.   26: mov r3.y, v5.w
  2722.   27: mov r3.z, v6.w
  2723.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  2724.   29: dp2 r5.x, r1.zyzz, r5.yzyy
  2725.   30: dp2 r7.y, r6.zyzz, r5.xwxx
  2726.   31: dp2 r8.y, r6.yxyy, r5.xwxx
  2727.   32: dp2 r7.x, r1.yxyy, r5.yzyy
  2728.   33: dp2 r8.x, r4.yzyy, r7.xyxx
  2729.   34: dp2 r8.z, r4.xyxx, r7.xyxx
  2730.   35: add r5.xyz, r3.xyzx, r8.xyzx
  2731.   36: add r0.xyz, r0.xzwx, r5.xyzx
  2732.   37: mul r5.xyzw, r0.yyyy, cb1[1].xyzw
  2733.   38: mad r5.xyzw, cb1[0].xyzw, r0.xxxx, r5.xyzw
  2734.   39: mad r0.xyzw, cb1[2].xyzw, r0.zzzz, r5.xyzw
  2735.   40: add r5.xyzw, r0.xyzw, cb1[3].xyzw
  2736.   41: mad r0.xyz, cb1[3].xyzx, v0.wwww, r0.xyzx
  2737.   42: mul r7.xyzw, r5.yyyy, cb2[18].xyzw
  2738.   43: mad r7.xyzw, cb2[17].xyzw, r5.xxxx, r7.xyzw
  2739.   44: mad r7.xyzw, cb2[19].xyzw, r5.zzzz, r7.xyzw
  2740.   45: mad o0.xyzw, cb2[20].xyzw, r5.wwww, r7.xyzw
  2741.   46: mad o1.xy, v3.xyxx, cb0[5].xyxx, cb0[5].zwzz
  2742.   47: mov o1.zw, v3.zzzw
  2743.   48: div r5.xyz, v2.xyzx, r2.xyzx
  2744.   49: mad r2.yzw, v1.xxyz, r2.xxyz, -r3.xxyz
  2745.   50: add r5.yzw, -r3.xxyz, r5.xxyz
  2746.   51: dp2 r5.x, r1.zyzz, r5.yzyy
  2747.   52: dp2 r2.x, r1.zyzz, r2.yzyy
  2748.   53: dp2 r7.y, r6.zyzz, r5.xwxx
  2749.   54: dp2 r8.y, r6.zyzz, r2.xwxx
  2750.   55: dp2 r9.y, r6.yxyy, r2.xwxx
  2751.   56: dp2 r6.y, r6.yxyy, r5.xwxx
  2752.   57: dp2 r7.x, r1.yxyy, r5.yzyy
  2753.   58: dp2 r8.x, r1.yxyy, r2.yzyy
  2754.   59: dp2 r6.x, r4.yzyy, r7.xyxx
  2755.   60: dp2 r9.x, r4.yzyy, r8.xyxx
  2756.   61: dp2 r9.z, r4.xyxx, r8.xyxx
  2757.   62: dp2 r6.z, r4.xyxx, r7.xyxx
  2758.   63: add r1.xyz, r3.xyzx, r6.xyzx
  2759.   64: add r2.xyz, r3.xyzx, r9.xyzx
  2760.   65: dp3 r3.x, r1.xyzx, cb1[4].xyzx
  2761.   66: dp3 r3.y, r1.xyzx, cb1[5].xyzx
  2762.   67: dp3 r3.z, r1.xyzx, cb1[6].xyzx
  2763.   68: dp3 r0.w, r3.xyzx, r3.xyzx
  2764.   69: rsq r0.w, r0.w
  2765.   70: mul r1.xyz, r0.wwww, r3.xyzx
  2766.   71: mov o2.z, r1.x
  2767.   72: mul r3.xyz, r2.yyyy, cb1[1].xyzx
  2768.   73: mad r2.xyw, cb1[0].xyxz, r2.xxxx, r3.xyxz
  2769.   74: mad r2.xyz, cb1[2].xyzx, r2.zzzz, r2.xywx
  2770.   75: dp3 r0.w, r2.xyzx, r2.xyzx
  2771.   76: rsq r0.w, r0.w
  2772.   77: mul r2.xyz, r0.wwww, r2.xyzx
  2773.   78: mov o2.x, r2.x
  2774.   79: mov o2.y, l(0)
  2775.   80: mov o2.w, r0.x
  2776.   81: mov o3.w, r0.y
  2777.   82: mov o4.w, r0.z
  2778.   83: mov o3.z, r1.y
  2779.   84: mov o4.z, r1.z
  2780.   85: mov o3.x, r2.y
  2781.   86: mov o4.x, r2.z
  2782.   87: mov o3.y, l(0)
  2783.   88: mov o4.y, l(0)
  2784.   89: ret
  2785. // Approximately 0 instruction slots used
  2786.  
  2787.  
  2788. -- Hardware tier variant: Tier 1
  2789. -- Fragment shader for "d3d11":
  2790. // Stats: 13 math, 2 temp registers, 1 textures
  2791. Set 2D Texture "_TextureSample0" to slot 0
  2792.  
  2793. Shader Disassembly:
  2794. //
  2795. // Generated by Microsoft (R) D3D Shader Disassembler
  2796. //
  2797. //
  2798. // Input signature:
  2799. //
  2800. // Name                 Index   Mask Register SysValue  Format   Used
  2801. // -------------------- ----- ------ -------- -------- ------- ------
  2802. // SV_POSITION              0   xyzw        0      POS   float      
  2803. // TEXCOORD                 0   xyzw        1     NONE   float   xy  
  2804. // TEXCOORD                 1   xyzw        2     NONE   float   xyz
  2805. // TEXCOORD                 2   xyzw        3     NONE   float   xyz
  2806. // TEXCOORD                 3   xyzw        4     NONE   float   xyz
  2807. //
  2808. //
  2809. // Output signature:
  2810. //
  2811. // Name                 Index   Mask Register SysValue  Format   Used
  2812. // -------------------- ----- ------ -------- -------- ------- ------
  2813. // SV_Target                0   xyzw        0   TARGET   float   xyzw
  2814. //
  2815.       ps_4_0
  2816.       dcl_sampler s0, mode_default
  2817.       dcl_resource_texture2d (float,float,float,float) t0
  2818.       dcl_input_ps linear v1.xy
  2819.       dcl_input_ps linear v2.xyz
  2820.       dcl_input_ps linear v3.xyz
  2821.       dcl_input_ps linear v4.xyz
  2822.       dcl_output o0.xyzw
  2823.       dcl_temps 2
  2824.    0: sample r0.xyzw, v1.xyxx, t0.xyzw, s0
  2825.    1: mul r0.x, r0.w, r0.x
  2826.    2: mad r0.xy, r0.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
  2827.    3: dp2 r0.w, r0.xyxx, r0.xyxx
  2828.    4: min r0.w, r0.w, l(1.000000)
  2829.    5: add r0.w, -r0.w, l(1.000000)
  2830.    6: sqrt r0.z, r0.w
  2831.    7: dp3 r1.x, v2.xyzx, r0.xyzx
  2832.    8: dp3 r1.y, v3.xyzx, r0.xyzx
  2833.    9: dp3 r1.z, v4.xyzx, r0.xyzx
  2834.   10: dp3 r0.x, r1.xyzx, r1.xyzx
  2835.   11: rsq r0.x, r0.x
  2836.   12: mul r0.xyz, r0.xxxx, r1.xyzx
  2837.   13: mad o0.xyz, r0.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), l(0.500000, 0.500000, 0.500000, 0.000000)
  2838.   14: mov o0.w, l(0)
  2839.   15: ret
  2840. // Approximately 0 instruction slots used
  2841.  
  2842.  
  2843.  }
  2844.  
  2845.  
  2846.  // Stats for Vertex shader:
  2847.  //        d3d11: 69 math
  2848.  // Stats for Fragment shader:
  2849.  //        d3d11: 3 avg math (3..4), 1 texture
  2850.  Pass {
  2851.   Name "PREPASS"
  2852.   Tags { "LIGHTMODE"="PREPASSFINAL" "QUEUE"="Geometry+0" "RenderType"="Opaque" }
  2853.   ZWrite Off
  2854.   //////////////////////////////////
  2855.   //                              //
  2856.   //      Compiled programs       //
  2857.   //                              //
  2858.   //////////////////////////////////
  2859. //////////////////////////////////////////////////////
  2860. No keywords set in this variant.
  2861. -- Hardware tier variant: Tier 1
  2862. -- Vertex shader for "d3d11":
  2863. // Stats: 69 math, 10 temp registers
  2864. Uses vertex data channel "Vertex"
  2865. Uses vertex data channel "Color"
  2866. Uses vertex data channel "TexCoord"
  2867. Uses vertex data channel "TexCoord0"
  2868. Uses vertex data channel "TexCoord1"
  2869. Uses vertex data channel "TexCoord2"
  2870. Uses vertex data channel "Tangent"
  2871.  
  2872. Constant Buffer "$Globals" (96 bytes) on slot 0 {
  2873.   Float _t at 64
  2874.   Float _PopInTime at 68
  2875. }
  2876. Constant Buffer "UnityPerCamera" (144 bytes) on slot 1 {
  2877.   Vector4 _ProjectionParams at 80
  2878. }
  2879. Constant Buffer "UnityLighting" (768 bytes) on slot 2 {
  2880.   Vector4 unity_SHAr at 624
  2881.   Vector4 unity_SHAg at 640
  2882.   Vector4 unity_SHAb at 656
  2883.   Vector4 unity_SHBr at 672
  2884.   Vector4 unity_SHBg at 688
  2885.   Vector4 unity_SHBb at 704
  2886.   Vector4 unity_SHC at 720
  2887. }
  2888. Constant Buffer "UnityPerDraw" (160 bytes) on slot 3 {
  2889.   Matrix4x4 unity_ObjectToWorld at 0
  2890.   Matrix4x4 unity_WorldToObject at 64
  2891. }
  2892. Constant Buffer "UnityPerFrame" (368 bytes) on slot 4 {
  2893.   Matrix4x4 unity_MatrixVP at 272
  2894. }
  2895.  
  2896. Shader Disassembly:
  2897. //
  2898. // Generated by Microsoft (R) D3D Shader Disassembler
  2899. //
  2900. //
  2901. // Input signature:
  2902. //
  2903. // Name                 Index   Mask Register SysValue  Format   Used
  2904. // -------------------- ----- ------ -------- -------- ------- ------
  2905. // POSITION                 0   xyzw        0     NONE   float   xyzw
  2906. // TANGENT                  0   xyzw        1     NONE   float      
  2907. // NORMAL                   0   xyz         2     NONE   float   xyz
  2908. // TEXCOORD                 0   xyzw        3     NONE   float     zw
  2909. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  2910. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  2911. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  2912. // COLOR                    0   xyzw        7     NONE   float   xyzw
  2913. //
  2914. //
  2915. // Output signature:
  2916. //
  2917. // Name                 Index   Mask Register SysValue  Format   Used
  2918. // -------------------- ----- ------ -------- -------- ------- ------
  2919. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  2920. // TEXCOORD                 0   xyz         1     NONE   float   xyz
  2921. // COLOR                    0   xyzw        2     NONE   float   xyzw
  2922. // TEXCOORD                 1   xyzw        3     NONE   float   xyzw
  2923. // TEXCOORD                 2   xyzw        4     NONE   float   xyzw
  2924. // TEXCOORD                 3   xyz         5     NONE   float   xyz
  2925. //
  2926.       vs_4_0
  2927.       dcl_constantbuffer CB0[5], immediateIndexed
  2928.       dcl_constantbuffer CB1[6], immediateIndexed
  2929.       dcl_constantbuffer CB2[46], immediateIndexed
  2930.       dcl_constantbuffer CB3[7], immediateIndexed
  2931.       dcl_constantbuffer CB4[21], immediateIndexed
  2932.       dcl_input v0.xyzw
  2933.       dcl_input v2.xyz
  2934.       dcl_input v3.zw
  2935.       dcl_input v4.xyzw
  2936.       dcl_input v5.xyzw
  2937.       dcl_input v6.xyzw
  2938.       dcl_input v7.xyzw
  2939.       dcl_output_siv o0.xyzw, position
  2940.       dcl_output o1.xyz
  2941.       dcl_output o2.xyzw
  2942.       dcl_output o3.xyzw
  2943.       dcl_output o4.xyzw
  2944.       dcl_output o5.xyz
  2945.       dcl_temps 10
  2946.    0: add r0.x, cb0[4].y, cb0[4].x
  2947.    1: ge r0.x, v3.z, r0.x
  2948.    2: and r0.x, r0.x, l(0x3f800000)
  2949.    3: add r0.y, -v3.z, cb0[4].x
  2950.    4: div_sat r0.y, r0.y, v3.w
  2951.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  2952.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  2953.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  2954.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  2955.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  2956.   10: sincos r2.x, r3.x, r1.y
  2957.   11: mov r4.z, r2.x
  2958.   12: mov r4.y, r3.x
  2959.   13: mov r4.x, -r2.x
  2960.   14: sincos r1.x, r2.x, r1.x
  2961.   15: sincos r3.x, r5.x, r1.z
  2962.   16: mov r6.z, r1.x
  2963.   17: mov r6.y, r2.x
  2964.   18: mov r6.x, -r1.x
  2965.   19: mov r1.z, r3.x
  2966.   20: mov r1.y, r5.x
  2967.   21: mov r1.x, -r3.x
  2968.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  2969.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  2970.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  2971.   25: mov r3.x, v4.w
  2972.   26: mov r3.y, v5.w
  2973.   27: mov r3.z, v6.w
  2974.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  2975.   29: div r2.xyz, v2.xyzx, r2.xyzx
  2976.   30: add r2.yzw, -r3.xxyz, r2.xxyz
  2977.   31: dp2 r5.x, r1.zyzz, r5.yzyy
  2978.   32: dp2 r2.x, r1.zyzz, r2.yzyy
  2979.   33: dp2 r7.y, r6.zyzz, r5.xwxx
  2980.   34: dp2 r8.y, r6.zyzz, r2.xwxx
  2981.   35: dp2 r9.y, r6.yxyy, r2.xwxx
  2982.   36: dp2 r6.y, r6.yxyy, r5.xwxx
  2983.   37: dp2 r7.x, r1.yxyy, r5.yzyy
  2984.   38: dp2 r8.x, r1.yxyy, r2.yzyy
  2985.   39: dp2 r6.x, r4.yzyy, r7.xyxx
  2986.   40: dp2 r9.x, r4.yzyy, r8.xyxx
  2987.   41: dp2 r9.z, r4.xyxx, r8.xyxx
  2988.   42: dp2 r6.z, r4.xyxx, r7.xyxx
  2989.   43: add r1.xyz, r3.xyzx, r6.xyzx
  2990.   44: add r2.xyz, r3.xyzx, r9.xyzx
  2991.   45: add r0.xyz, r0.xzwx, r1.xyzx
  2992.   46: mul r1.xyzw, r0.yyyy, cb3[1].xyzw
  2993.   47: mad r1.xyzw, cb3[0].xyzw, r0.xxxx, r1.xyzw
  2994.   48: mad r0.xyzw, cb3[2].xyzw, r0.zzzz, r1.xyzw
  2995.   49: add r1.xyzw, r0.xyzw, cb3[3].xyzw
  2996.   50: mad o1.xyz, cb3[3].xyzx, v0.wwww, r0.xyzx
  2997.   51: mul r0.xyzw, r1.yyyy, cb4[18].xyzw
  2998.   52: mad r0.xyzw, cb4[17].xyzw, r1.xxxx, r0.xyzw
  2999.   53: mad r0.xyzw, cb4[19].xyzw, r1.zzzz, r0.xyzw
  3000.   54: mad r0.xyzw, cb4[20].xyzw, r1.wwww, r0.xyzw
  3001.   55: mov o0.xyzw, r0.xyzw
  3002.   56: mov o2.xyzw, v7.xyzw
  3003.   57: mul r0.y, r0.y, cb1[5].x
  3004.   58: mul r1.xzw, r0.xxwy, l(0.500000, 0.000000, 0.500000, 0.500000)
  3005.   59: mov o3.zw, r0.zzzw
  3006.   60: add o3.xy, r1.zzzz, r1.xwxx
  3007.   61: mov o4.xyzw, l(0,0,0,0)
  3008.   62: dp3 r0.x, r2.xyzx, cb3[4].xyzx
  3009.   63: dp3 r0.y, r2.xyzx, cb3[5].xyzx
  3010.   64: dp3 r0.z, r2.xyzx, cb3[6].xyzx
  3011.   65: dp3 r0.w, r0.xyzx, r0.xyzx
  3012.   66: rsq r0.w, r0.w
  3013.   67: mul r0.xyz, r0.wwww, r0.xyzx
  3014.   68: mul r1.x, r0.y, r0.y
  3015.   69: mad r1.x, r0.x, r0.x, -r1.x
  3016.   70: mul r2.xyzw, r0.yzzx, r0.xyzz
  3017.   71: dp4 r3.x, cb2[42].xyzw, r2.xyzw
  3018.   72: dp4 r3.y, cb2[43].xyzw, r2.xyzw
  3019.   73: dp4 r3.z, cb2[44].xyzw, r2.xyzw
  3020.   74: mad r1.xyz, cb2[45].xyzx, r1.xxxx, r3.xyzx
  3021.   75: mov r0.w, l(1.000000)
  3022.   76: dp4 r2.x, cb2[39].xyzw, r0.xyzw
  3023.   77: dp4 r2.y, cb2[40].xyzw, r0.xyzw
  3024.   78: dp4 r2.z, cb2[41].xyzw, r0.xyzw
  3025.   79: add r0.xyz, r1.xyzx, r2.xyzx
  3026.   80: max r0.xyz, r0.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  3027.   81: log r0.xyz, r0.xyzx
  3028.   82: mul r0.xyz, r0.xyzx, l(0.416667, 0.416667, 0.416667, 0.000000)
  3029.   83: exp r0.xyz, r0.xyzx
  3030.   84: mad r0.xyz, r0.xyzx, l(1.055000, 1.055000, 1.055000, 0.000000), l(-0.055000, -0.055000, -0.055000, 0.000000)
  3031.   85: max o5.xyz, r0.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  3032.   86: ret
  3033. // Approximately 0 instruction slots used
  3034.  
  3035.  
  3036. -- Hardware tier variant: Tier 1
  3037. -- Fragment shader for "d3d11":
  3038. // Stats: 4 math, 1 temp registers, 1 textures
  3039. Set 2D Texture "_LightBuffer" to slot 0
  3040.  
  3041. Shader Disassembly:
  3042. //
  3043. // Generated by Microsoft (R) D3D Shader Disassembler
  3044. //
  3045. //
  3046. // Input signature:
  3047. //
  3048. // Name                 Index   Mask Register SysValue  Format   Used
  3049. // -------------------- ----- ------ -------- -------- ------- ------
  3050. // SV_POSITION              0   xyzw        0      POS   float      
  3051. // TEXCOORD                 0   xyz         1     NONE   float      
  3052. // COLOR                    0   xyzw        2     NONE   float   xyz
  3053. // TEXCOORD                 1   xyzw        3     NONE   float   xy w
  3054. // TEXCOORD                 2   xyzw        4     NONE   float      
  3055. // TEXCOORD                 3   xyz         5     NONE   float   xyz
  3056. //
  3057. //
  3058. // Output signature:
  3059. //
  3060. // Name                 Index   Mask Register SysValue  Format   Used
  3061. // -------------------- ----- ------ -------- -------- ------- ------
  3062. // SV_Target                0   xyzw        0   TARGET   float   xyzw
  3063. //
  3064.       ps_4_0
  3065.       dcl_sampler s0, mode_default
  3066.       dcl_resource_texture2d (float,float,float,float) t0
  3067.       dcl_input_ps linear v2.xyz
  3068.       dcl_input_ps linear v3.xyw
  3069.       dcl_input_ps linear v5.xyz
  3070.       dcl_output o0.xyzw
  3071.       dcl_temps 1
  3072.    0: div r0.xy, v3.xyxx, v3.wwww
  3073.    1: sample r0.xyzw, r0.xyxx, t0.xyzw, s0
  3074.    2: log r0.xyz, r0.xyzx
  3075.    3: add r0.xyz, -r0.xyzx, v5.xyzx
  3076.    4: mul o0.xyz, r0.xyzx, v2.xyzx
  3077.    5: mov o0.w, l(1.000000)
  3078.    6: ret
  3079. // Approximately 0 instruction slots used
  3080.  
  3081.  
  3082. //////////////////////////////////////////////////////
  3083. Keywords set in this variant: LIGHTPROBE_SH
  3084. -- Hardware tier variant: Tier 1
  3085. -- Vertex shader for "d3d11":
  3086. // Stats: 69 math, 10 temp registers
  3087. Uses vertex data channel "Vertex"
  3088. Uses vertex data channel "Color"
  3089. Uses vertex data channel "TexCoord"
  3090. Uses vertex data channel "TexCoord0"
  3091. Uses vertex data channel "TexCoord1"
  3092. Uses vertex data channel "TexCoord2"
  3093. Uses vertex data channel "Tangent"
  3094.  
  3095. Constant Buffer "$Globals" (96 bytes) on slot 0 {
  3096.   Float _t at 64
  3097.   Float _PopInTime at 68
  3098. }
  3099. Constant Buffer "UnityPerCamera" (144 bytes) on slot 1 {
  3100.   Vector4 _ProjectionParams at 80
  3101. }
  3102. Constant Buffer "UnityLighting" (768 bytes) on slot 2 {
  3103.   Vector4 unity_SHAr at 624
  3104.   Vector4 unity_SHAg at 640
  3105.   Vector4 unity_SHAb at 656
  3106.   Vector4 unity_SHBr at 672
  3107.   Vector4 unity_SHBg at 688
  3108.   Vector4 unity_SHBb at 704
  3109.   Vector4 unity_SHC at 720
  3110. }
  3111. Constant Buffer "UnityPerDraw" (160 bytes) on slot 3 {
  3112.   Matrix4x4 unity_ObjectToWorld at 0
  3113.   Matrix4x4 unity_WorldToObject at 64
  3114. }
  3115. Constant Buffer "UnityPerFrame" (368 bytes) on slot 4 {
  3116.   Matrix4x4 unity_MatrixVP at 272
  3117. }
  3118.  
  3119. Shader Disassembly:
  3120. //
  3121. // Generated by Microsoft (R) D3D Shader Disassembler
  3122. //
  3123. //
  3124. // Input signature:
  3125. //
  3126. // Name                 Index   Mask Register SysValue  Format   Used
  3127. // -------------------- ----- ------ -------- -------- ------- ------
  3128. // POSITION                 0   xyzw        0     NONE   float   xyzw
  3129. // TANGENT                  0   xyzw        1     NONE   float      
  3130. // NORMAL                   0   xyz         2     NONE   float   xyz
  3131. // TEXCOORD                 0   xyzw        3     NONE   float     zw
  3132. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  3133. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  3134. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  3135. // COLOR                    0   xyzw        7     NONE   float   xyzw
  3136. //
  3137. //
  3138. // Output signature:
  3139. //
  3140. // Name                 Index   Mask Register SysValue  Format   Used
  3141. // -------------------- ----- ------ -------- -------- ------- ------
  3142. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  3143. // TEXCOORD                 0   xyz         1     NONE   float   xyz
  3144. // COLOR                    0   xyzw        2     NONE   float   xyzw
  3145. // TEXCOORD                 1   xyzw        3     NONE   float   xyzw
  3146. // TEXCOORD                 2   xyzw        4     NONE   float   xyzw
  3147. // TEXCOORD                 3   xyz         5     NONE   float   xyz
  3148. //
  3149.       vs_4_0
  3150.       dcl_constantbuffer CB0[5], immediateIndexed
  3151.       dcl_constantbuffer CB1[6], immediateIndexed
  3152.       dcl_constantbuffer CB2[46], immediateIndexed
  3153.       dcl_constantbuffer CB3[7], immediateIndexed
  3154.       dcl_constantbuffer CB4[21], immediateIndexed
  3155.       dcl_input v0.xyzw
  3156.       dcl_input v2.xyz
  3157.       dcl_input v3.zw
  3158.       dcl_input v4.xyzw
  3159.       dcl_input v5.xyzw
  3160.       dcl_input v6.xyzw
  3161.       dcl_input v7.xyzw
  3162.       dcl_output_siv o0.xyzw, position
  3163.       dcl_output o1.xyz
  3164.       dcl_output o2.xyzw
  3165.       dcl_output o3.xyzw
  3166.       dcl_output o4.xyzw
  3167.       dcl_output o5.xyz
  3168.       dcl_temps 10
  3169.    0: add r0.x, cb0[4].y, cb0[4].x
  3170.    1: ge r0.x, v3.z, r0.x
  3171.    2: and r0.x, r0.x, l(0x3f800000)
  3172.    3: add r0.y, -v3.z, cb0[4].x
  3173.    4: div_sat r0.y, r0.y, v3.w
  3174.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  3175.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  3176.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  3177.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  3178.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  3179.   10: sincos r2.x, r3.x, r1.y
  3180.   11: mov r4.z, r2.x
  3181.   12: mov r4.y, r3.x
  3182.   13: mov r4.x, -r2.x
  3183.   14: sincos r1.x, r2.x, r1.x
  3184.   15: sincos r3.x, r5.x, r1.z
  3185.   16: mov r6.z, r1.x
  3186.   17: mov r6.y, r2.x
  3187.   18: mov r6.x, -r1.x
  3188.   19: mov r1.z, r3.x
  3189.   20: mov r1.y, r5.x
  3190.   21: mov r1.x, -r3.x
  3191.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  3192.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  3193.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  3194.   25: mov r3.x, v4.w
  3195.   26: mov r3.y, v5.w
  3196.   27: mov r3.z, v6.w
  3197.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  3198.   29: div r2.xyz, v2.xyzx, r2.xyzx
  3199.   30: add r2.yzw, -r3.xxyz, r2.xxyz
  3200.   31: dp2 r5.x, r1.zyzz, r5.yzyy
  3201.   32: dp2 r2.x, r1.zyzz, r2.yzyy
  3202.   33: dp2 r7.y, r6.zyzz, r5.xwxx
  3203.   34: dp2 r8.y, r6.zyzz, r2.xwxx
  3204.   35: dp2 r9.y, r6.yxyy, r2.xwxx
  3205.   36: dp2 r6.y, r6.yxyy, r5.xwxx
  3206.   37: dp2 r7.x, r1.yxyy, r5.yzyy
  3207.   38: dp2 r8.x, r1.yxyy, r2.yzyy
  3208.   39: dp2 r6.x, r4.yzyy, r7.xyxx
  3209.   40: dp2 r9.x, r4.yzyy, r8.xyxx
  3210.   41: dp2 r9.z, r4.xyxx, r8.xyxx
  3211.   42: dp2 r6.z, r4.xyxx, r7.xyxx
  3212.   43: add r1.xyz, r3.xyzx, r6.xyzx
  3213.   44: add r2.xyz, r3.xyzx, r9.xyzx
  3214.   45: add r0.xyz, r0.xzwx, r1.xyzx
  3215.   46: mul r1.xyzw, r0.yyyy, cb3[1].xyzw
  3216.   47: mad r1.xyzw, cb3[0].xyzw, r0.xxxx, r1.xyzw
  3217.   48: mad r0.xyzw, cb3[2].xyzw, r0.zzzz, r1.xyzw
  3218.   49: add r1.xyzw, r0.xyzw, cb3[3].xyzw
  3219.   50: mad o1.xyz, cb3[3].xyzx, v0.wwww, r0.xyzx
  3220.   51: mul r0.xyzw, r1.yyyy, cb4[18].xyzw
  3221.   52: mad r0.xyzw, cb4[17].xyzw, r1.xxxx, r0.xyzw
  3222.   53: mad r0.xyzw, cb4[19].xyzw, r1.zzzz, r0.xyzw
  3223.   54: mad r0.xyzw, cb4[20].xyzw, r1.wwww, r0.xyzw
  3224.   55: mov o0.xyzw, r0.xyzw
  3225.   56: mov o2.xyzw, v7.xyzw
  3226.   57: mul r0.y, r0.y, cb1[5].x
  3227.   58: mul r1.xzw, r0.xxwy, l(0.500000, 0.000000, 0.500000, 0.500000)
  3228.   59: mov o3.zw, r0.zzzw
  3229.   60: add o3.xy, r1.zzzz, r1.xwxx
  3230.   61: mov o4.xyzw, l(0,0,0,0)
  3231.   62: dp3 r0.x, r2.xyzx, cb3[4].xyzx
  3232.   63: dp3 r0.y, r2.xyzx, cb3[5].xyzx
  3233.   64: dp3 r0.z, r2.xyzx, cb3[6].xyzx
  3234.   65: dp3 r0.w, r0.xyzx, r0.xyzx
  3235.   66: rsq r0.w, r0.w
  3236.   67: mul r0.xyz, r0.wwww, r0.xyzx
  3237.   68: mul r1.x, r0.y, r0.y
  3238.   69: mad r1.x, r0.x, r0.x, -r1.x
  3239.   70: mul r2.xyzw, r0.yzzx, r0.xyzz
  3240.   71: dp4 r3.x, cb2[42].xyzw, r2.xyzw
  3241.   72: dp4 r3.y, cb2[43].xyzw, r2.xyzw
  3242.   73: dp4 r3.z, cb2[44].xyzw, r2.xyzw
  3243.   74: mad r1.xyz, cb2[45].xyzx, r1.xxxx, r3.xyzx
  3244.   75: mov r0.w, l(1.000000)
  3245.   76: dp4 r2.x, cb2[39].xyzw, r0.xyzw
  3246.   77: dp4 r2.y, cb2[40].xyzw, r0.xyzw
  3247.   78: dp4 r2.z, cb2[41].xyzw, r0.xyzw
  3248.   79: add r0.xyz, r1.xyzx, r2.xyzx
  3249.   80: max r0.xyz, r0.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  3250.   81: log r0.xyz, r0.xyzx
  3251.   82: mul r0.xyz, r0.xyzx, l(0.416667, 0.416667, 0.416667, 0.000000)
  3252.   83: exp r0.xyz, r0.xyzx
  3253.   84: mad r0.xyz, r0.xyzx, l(1.055000, 1.055000, 1.055000, 0.000000), l(-0.055000, -0.055000, -0.055000, 0.000000)
  3254.   85: max o5.xyz, r0.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  3255.   86: ret
  3256. // Approximately 0 instruction slots used
  3257.  
  3258.  
  3259. -- Hardware tier variant: Tier 1
  3260. -- Fragment shader for "d3d11":
  3261. // Stats: 4 math, 1 temp registers, 1 textures
  3262. Set 2D Texture "_LightBuffer" to slot 0
  3263.  
  3264. Shader Disassembly:
  3265. //
  3266. // Generated by Microsoft (R) D3D Shader Disassembler
  3267. //
  3268. //
  3269. // Input signature:
  3270. //
  3271. // Name                 Index   Mask Register SysValue  Format   Used
  3272. // -------------------- ----- ------ -------- -------- ------- ------
  3273. // SV_POSITION              0   xyzw        0      POS   float      
  3274. // TEXCOORD                 0   xyz         1     NONE   float      
  3275. // COLOR                    0   xyzw        2     NONE   float   xyz
  3276. // TEXCOORD                 1   xyzw        3     NONE   float   xy w
  3277. // TEXCOORD                 2   xyzw        4     NONE   float      
  3278. // TEXCOORD                 3   xyz         5     NONE   float   xyz
  3279. //
  3280. //
  3281. // Output signature:
  3282. //
  3283. // Name                 Index   Mask Register SysValue  Format   Used
  3284. // -------------------- ----- ------ -------- -------- ------- ------
  3285. // SV_Target                0   xyzw        0   TARGET   float   xyzw
  3286. //
  3287.       ps_4_0
  3288.       dcl_sampler s0, mode_default
  3289.       dcl_resource_texture2d (float,float,float,float) t0
  3290.       dcl_input_ps linear v2.xyz
  3291.       dcl_input_ps linear v3.xyw
  3292.       dcl_input_ps linear v5.xyz
  3293.       dcl_output o0.xyzw
  3294.       dcl_temps 1
  3295.    0: div r0.xy, v3.xyxx, v3.wwww
  3296.    1: sample r0.xyzw, r0.xyxx, t0.xyzw, s0
  3297.    2: log r0.xyz, r0.xyzx
  3298.    3: add r0.xyz, -r0.xyzx, v5.xyzx
  3299.    4: mul o0.xyz, r0.xyzx, v2.xyzx
  3300.    5: mov o0.w, l(1.000000)
  3301.    6: ret
  3302. // Approximately 0 instruction slots used
  3303.  
  3304.  
  3305. //////////////////////////////////////////////////////
  3306. Keywords set in this variant: LIGHTPROBE_SH UNITY_HDR_ON
  3307. -- Hardware tier variant: Tier 1
  3308. -- Vertex shader for "d3d11":
  3309. // Stats: 69 math, 10 temp registers
  3310. Uses vertex data channel "Vertex"
  3311. Uses vertex data channel "Color"
  3312. Uses vertex data channel "TexCoord"
  3313. Uses vertex data channel "TexCoord0"
  3314. Uses vertex data channel "TexCoord1"
  3315. Uses vertex data channel "TexCoord2"
  3316. Uses vertex data channel "Tangent"
  3317.  
  3318. Constant Buffer "$Globals" (96 bytes) on slot 0 {
  3319.   Float _t at 64
  3320.   Float _PopInTime at 68
  3321. }
  3322. Constant Buffer "UnityPerCamera" (144 bytes) on slot 1 {
  3323.   Vector4 _ProjectionParams at 80
  3324. }
  3325. Constant Buffer "UnityLighting" (768 bytes) on slot 2 {
  3326.   Vector4 unity_SHAr at 624
  3327.   Vector4 unity_SHAg at 640
  3328.   Vector4 unity_SHAb at 656
  3329.   Vector4 unity_SHBr at 672
  3330.   Vector4 unity_SHBg at 688
  3331.   Vector4 unity_SHBb at 704
  3332.   Vector4 unity_SHC at 720
  3333. }
  3334. Constant Buffer "UnityPerDraw" (160 bytes) on slot 3 {
  3335.   Matrix4x4 unity_ObjectToWorld at 0
  3336.   Matrix4x4 unity_WorldToObject at 64
  3337. }
  3338. Constant Buffer "UnityPerFrame" (368 bytes) on slot 4 {
  3339.   Matrix4x4 unity_MatrixVP at 272
  3340. }
  3341.  
  3342. Shader Disassembly:
  3343. //
  3344. // Generated by Microsoft (R) D3D Shader Disassembler
  3345. //
  3346. //
  3347. // Input signature:
  3348. //
  3349. // Name                 Index   Mask Register SysValue  Format   Used
  3350. // -------------------- ----- ------ -------- -------- ------- ------
  3351. // POSITION                 0   xyzw        0     NONE   float   xyzw
  3352. // TANGENT                  0   xyzw        1     NONE   float      
  3353. // NORMAL                   0   xyz         2     NONE   float   xyz
  3354. // TEXCOORD                 0   xyzw        3     NONE   float     zw
  3355. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  3356. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  3357. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  3358. // COLOR                    0   xyzw        7     NONE   float   xyzw
  3359. //
  3360. //
  3361. // Output signature:
  3362. //
  3363. // Name                 Index   Mask Register SysValue  Format   Used
  3364. // -------------------- ----- ------ -------- -------- ------- ------
  3365. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  3366. // TEXCOORD                 0   xyz         1     NONE   float   xyz
  3367. // COLOR                    0   xyzw        2     NONE   float   xyzw
  3368. // TEXCOORD                 1   xyzw        3     NONE   float   xyzw
  3369. // TEXCOORD                 2   xyzw        4     NONE   float   xyzw
  3370. // TEXCOORD                 3   xyz         5     NONE   float   xyz
  3371. //
  3372.       vs_4_0
  3373.       dcl_constantbuffer CB0[5], immediateIndexed
  3374.       dcl_constantbuffer CB1[6], immediateIndexed
  3375.       dcl_constantbuffer CB2[46], immediateIndexed
  3376.       dcl_constantbuffer CB3[7], immediateIndexed
  3377.       dcl_constantbuffer CB4[21], immediateIndexed
  3378.       dcl_input v0.xyzw
  3379.       dcl_input v2.xyz
  3380.       dcl_input v3.zw
  3381.       dcl_input v4.xyzw
  3382.       dcl_input v5.xyzw
  3383.       dcl_input v6.xyzw
  3384.       dcl_input v7.xyzw
  3385.       dcl_output_siv o0.xyzw, position
  3386.       dcl_output o1.xyz
  3387.       dcl_output o2.xyzw
  3388.       dcl_output o3.xyzw
  3389.       dcl_output o4.xyzw
  3390.       dcl_output o5.xyz
  3391.       dcl_temps 10
  3392.    0: add r0.x, cb0[4].y, cb0[4].x
  3393.    1: ge r0.x, v3.z, r0.x
  3394.    2: and r0.x, r0.x, l(0x3f800000)
  3395.    3: add r0.y, -v3.z, cb0[4].x
  3396.    4: div_sat r0.y, r0.y, v3.w
  3397.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  3398.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  3399.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  3400.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  3401.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  3402.   10: sincos r2.x, r3.x, r1.y
  3403.   11: mov r4.z, r2.x
  3404.   12: mov r4.y, r3.x
  3405.   13: mov r4.x, -r2.x
  3406.   14: sincos r1.x, r2.x, r1.x
  3407.   15: sincos r3.x, r5.x, r1.z
  3408.   16: mov r6.z, r1.x
  3409.   17: mov r6.y, r2.x
  3410.   18: mov r6.x, -r1.x
  3411.   19: mov r1.z, r3.x
  3412.   20: mov r1.y, r5.x
  3413.   21: mov r1.x, -r3.x
  3414.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  3415.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  3416.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  3417.   25: mov r3.x, v4.w
  3418.   26: mov r3.y, v5.w
  3419.   27: mov r3.z, v6.w
  3420.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  3421.   29: div r2.xyz, v2.xyzx, r2.xyzx
  3422.   30: add r2.yzw, -r3.xxyz, r2.xxyz
  3423.   31: dp2 r5.x, r1.zyzz, r5.yzyy
  3424.   32: dp2 r2.x, r1.zyzz, r2.yzyy
  3425.   33: dp2 r7.y, r6.zyzz, r5.xwxx
  3426.   34: dp2 r8.y, r6.zyzz, r2.xwxx
  3427.   35: dp2 r9.y, r6.yxyy, r2.xwxx
  3428.   36: dp2 r6.y, r6.yxyy, r5.xwxx
  3429.   37: dp2 r7.x, r1.yxyy, r5.yzyy
  3430.   38: dp2 r8.x, r1.yxyy, r2.yzyy
  3431.   39: dp2 r6.x, r4.yzyy, r7.xyxx
  3432.   40: dp2 r9.x, r4.yzyy, r8.xyxx
  3433.   41: dp2 r9.z, r4.xyxx, r8.xyxx
  3434.   42: dp2 r6.z, r4.xyxx, r7.xyxx
  3435.   43: add r1.xyz, r3.xyzx, r6.xyzx
  3436.   44: add r2.xyz, r3.xyzx, r9.xyzx
  3437.   45: add r0.xyz, r0.xzwx, r1.xyzx
  3438.   46: mul r1.xyzw, r0.yyyy, cb3[1].xyzw
  3439.   47: mad r1.xyzw, cb3[0].xyzw, r0.xxxx, r1.xyzw
  3440.   48: mad r0.xyzw, cb3[2].xyzw, r0.zzzz, r1.xyzw
  3441.   49: add r1.xyzw, r0.xyzw, cb3[3].xyzw
  3442.   50: mad o1.xyz, cb3[3].xyzx, v0.wwww, r0.xyzx
  3443.   51: mul r0.xyzw, r1.yyyy, cb4[18].xyzw
  3444.   52: mad r0.xyzw, cb4[17].xyzw, r1.xxxx, r0.xyzw
  3445.   53: mad r0.xyzw, cb4[19].xyzw, r1.zzzz, r0.xyzw
  3446.   54: mad r0.xyzw, cb4[20].xyzw, r1.wwww, r0.xyzw
  3447.   55: mov o0.xyzw, r0.xyzw
  3448.   56: mov o2.xyzw, v7.xyzw
  3449.   57: mul r0.y, r0.y, cb1[5].x
  3450.   58: mul r1.xzw, r0.xxwy, l(0.500000, 0.000000, 0.500000, 0.500000)
  3451.   59: mov o3.zw, r0.zzzw
  3452.   60: add o3.xy, r1.zzzz, r1.xwxx
  3453.   61: mov o4.xyzw, l(0,0,0,0)
  3454.   62: dp3 r0.x, r2.xyzx, cb3[4].xyzx
  3455.   63: dp3 r0.y, r2.xyzx, cb3[5].xyzx
  3456.   64: dp3 r0.z, r2.xyzx, cb3[6].xyzx
  3457.   65: dp3 r0.w, r0.xyzx, r0.xyzx
  3458.   66: rsq r0.w, r0.w
  3459.   67: mul r0.xyz, r0.wwww, r0.xyzx
  3460.   68: mul r1.x, r0.y, r0.y
  3461.   69: mad r1.x, r0.x, r0.x, -r1.x
  3462.   70: mul r2.xyzw, r0.yzzx, r0.xyzz
  3463.   71: dp4 r3.x, cb2[42].xyzw, r2.xyzw
  3464.   72: dp4 r3.y, cb2[43].xyzw, r2.xyzw
  3465.   73: dp4 r3.z, cb2[44].xyzw, r2.xyzw
  3466.   74: mad r1.xyz, cb2[45].xyzx, r1.xxxx, r3.xyzx
  3467.   75: mov r0.w, l(1.000000)
  3468.   76: dp4 r2.x, cb2[39].xyzw, r0.xyzw
  3469.   77: dp4 r2.y, cb2[40].xyzw, r0.xyzw
  3470.   78: dp4 r2.z, cb2[41].xyzw, r0.xyzw
  3471.   79: add r0.xyz, r1.xyzx, r2.xyzx
  3472.   80: max r0.xyz, r0.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  3473.   81: log r0.xyz, r0.xyzx
  3474.   82: mul r0.xyz, r0.xyzx, l(0.416667, 0.416667, 0.416667, 0.000000)
  3475.   83: exp r0.xyz, r0.xyzx
  3476.   84: mad r0.xyz, r0.xyzx, l(1.055000, 1.055000, 1.055000, 0.000000), l(-0.055000, -0.055000, -0.055000, 0.000000)
  3477.   85: max o5.xyz, r0.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  3478.   86: ret
  3479. // Approximately 0 instruction slots used
  3480.  
  3481.  
  3482. -- Hardware tier variant: Tier 1
  3483. -- Fragment shader for "d3d11":
  3484. // Stats: 3 math, 1 temp registers, 1 textures
  3485. Set 2D Texture "_LightBuffer" to slot 0
  3486.  
  3487. Shader Disassembly:
  3488. //
  3489. // Generated by Microsoft (R) D3D Shader Disassembler
  3490. //
  3491. //
  3492. // Input signature:
  3493. //
  3494. // Name                 Index   Mask Register SysValue  Format   Used
  3495. // -------------------- ----- ------ -------- -------- ------- ------
  3496. // SV_POSITION              0   xyzw        0      POS   float      
  3497. // TEXCOORD                 0   xyz         1     NONE   float      
  3498. // COLOR                    0   xyzw        2     NONE   float   xyz
  3499. // TEXCOORD                 1   xyzw        3     NONE   float   xy w
  3500. // TEXCOORD                 2   xyzw        4     NONE   float      
  3501. // TEXCOORD                 3   xyz         5     NONE   float   xyz
  3502. //
  3503. //
  3504. // Output signature:
  3505. //
  3506. // Name                 Index   Mask Register SysValue  Format   Used
  3507. // -------------------- ----- ------ -------- -------- ------- ------
  3508. // SV_Target                0   xyzw        0   TARGET   float   xyzw
  3509. //
  3510.       ps_4_0
  3511.       dcl_sampler s0, mode_default
  3512.       dcl_resource_texture2d (float,float,float,float) t0
  3513.       dcl_input_ps linear v2.xyz
  3514.       dcl_input_ps linear v3.xyw
  3515.       dcl_input_ps linear v5.xyz
  3516.       dcl_output o0.xyzw
  3517.       dcl_temps 1
  3518.    0: div r0.xy, v3.xyxx, v3.wwww
  3519.    1: sample r0.xyzw, r0.xyxx, t0.xyzw, s0
  3520.    2: add r0.xyz, r0.xyzx, v5.xyzx
  3521.    3: mul o0.xyz, r0.xyzx, v2.xyzx
  3522.    4: mov o0.w, l(1.000000)
  3523.    5: ret
  3524. // Approximately 0 instruction slots used
  3525.  
  3526.  
  3527.  }
  3528.  
  3529.  
  3530.  // Stats for Vertex shader:
  3531.  //        d3d11: 71 math
  3532.  // Stats for Fragment shader:
  3533.  //        d3d11: 42 avg math (42..43), 4 texture, 2 branch
  3534.  Pass {
  3535.   Name "DEFERRED"
  3536.   Tags { "LIGHTMODE"="DEFERRED" "QUEUE"="Geometry+0" "RenderType"="Opaque" }
  3537.   //////////////////////////////////
  3538.   //                              //
  3539.   //      Compiled programs       //
  3540.   //                              //
  3541.   //////////////////////////////////
  3542. //////////////////////////////////////////////////////
  3543. No keywords set in this variant.
  3544. -- Hardware tier variant: Tier 1
  3545. -- Vertex shader for "d3d11":
  3546. // Stats: 71 math, 10 temp registers
  3547. Uses vertex data channel "Vertex"
  3548. Uses vertex data channel "Normal"
  3549. Uses vertex data channel "Color"
  3550. Uses vertex data channel "TexCoord"
  3551. Uses vertex data channel "TexCoord0"
  3552. Uses vertex data channel "TexCoord1"
  3553. Uses vertex data channel "TexCoord2"
  3554. Uses vertex data channel "Tangent"
  3555.  
  3556. Constant Buffer "$Globals" (112 bytes) on slot 0 {
  3557.   Float _t at 64
  3558.   Float _PopInTime at 68
  3559.   Vector4 _tex4coord_ST at 80
  3560. }
  3561. Constant Buffer "UnityLighting" (768 bytes) on slot 1 {
  3562.   Vector4 unity_SHBr at 672
  3563.   Vector4 unity_SHBg at 688
  3564.   Vector4 unity_SHBb at 704
  3565.   Vector4 unity_SHC at 720
  3566. }
  3567. Constant Buffer "UnityPerDraw" (160 bytes) on slot 2 {
  3568.   Matrix4x4 unity_ObjectToWorld at 0
  3569.   Matrix4x4 unity_WorldToObject at 64
  3570. }
  3571. Constant Buffer "UnityPerFrame" (368 bytes) on slot 3 {
  3572.   Matrix4x4 unity_MatrixVP at 272
  3573. }
  3574.  
  3575. Shader Disassembly:
  3576. //
  3577. // Generated by Microsoft (R) D3D Shader Disassembler
  3578. //
  3579. //
  3580. // Input signature:
  3581. //
  3582. // Name                 Index   Mask Register SysValue  Format   Used
  3583. // -------------------- ----- ------ -------- -------- ------- ------
  3584. // POSITION                 0   xyzw        0     NONE   float   xyzw
  3585. // TANGENT                  0   xyzw        1     NONE   float   xyz
  3586. // NORMAL                   0   xyz         2     NONE   float   xyz
  3587. // TEXCOORD                 0   xyzw        3     NONE   float   xyzw
  3588. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  3589. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  3590. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  3591. // COLOR                    0   xyzw        7     NONE   float   xyzw
  3592. //
  3593. //
  3594. // Output signature:
  3595. //
  3596. // Name                 Index   Mask Register SysValue  Format   Used
  3597. // -------------------- ----- ------ -------- -------- ------- ------
  3598. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  3599. // TEXCOORD                 0   xyzw        1     NONE   float   xyzw
  3600. // TEXCOORD                 1   xyzw        2     NONE   float   xyzw
  3601. // TEXCOORD                 2   xyzw        3     NONE   float   xyzw
  3602. // TEXCOORD                 3   xyzw        4     NONE   float   xyzw
  3603. // COLOR                    0   xyzw        5     NONE   float   xyzw
  3604. // TEXCOORD                 4   xyzw        6     NONE   float   xyzw
  3605. // TEXCOORD                 5   xyz         7     NONE   float   xyz
  3606. //
  3607.       vs_4_0
  3608.       dcl_constantbuffer CB0[6], immediateIndexed
  3609.       dcl_constantbuffer CB1[46], immediateIndexed
  3610.       dcl_constantbuffer CB2[7], immediateIndexed
  3611.       dcl_constantbuffer CB3[21], immediateIndexed
  3612.       dcl_input v0.xyzw
  3613.       dcl_input v1.xyz
  3614.       dcl_input v2.xyz
  3615.       dcl_input v3.xyzw
  3616.       dcl_input v4.xyzw
  3617.       dcl_input v5.xyzw
  3618.       dcl_input v6.xyzw
  3619.       dcl_input v7.xyzw
  3620.       dcl_output_siv o0.xyzw, position
  3621.       dcl_output o1.xyzw
  3622.       dcl_output o2.xyzw
  3623.       dcl_output o3.xyzw
  3624.       dcl_output o4.xyzw
  3625.       dcl_output o5.xyzw
  3626.       dcl_output o6.xyzw
  3627.       dcl_output o7.xyz
  3628.       dcl_temps 10
  3629.    0: add r0.x, cb0[4].y, cb0[4].x
  3630.    1: ge r0.x, v3.z, r0.x
  3631.    2: and r0.x, r0.x, l(0x3f800000)
  3632.    3: add r0.y, -v3.z, cb0[4].x
  3633.    4: div_sat r0.y, r0.y, v3.w
  3634.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  3635.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  3636.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  3637.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  3638.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  3639.   10: sincos r2.x, r3.x, r1.y
  3640.   11: mov r4.z, r2.x
  3641.   12: mov r4.y, r3.x
  3642.   13: mov r4.x, -r2.x
  3643.   14: sincos r1.x, r2.x, r1.x
  3644.   15: sincos r3.x, r5.x, r1.z
  3645.   16: mov r6.z, r1.x
  3646.   17: mov r6.y, r2.x
  3647.   18: mov r6.x, -r1.x
  3648.   19: mov r1.z, r3.x
  3649.   20: mov r1.y, r5.x
  3650.   21: mov r1.x, -r3.x
  3651.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  3652.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  3653.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  3654.   25: mov r3.x, v4.w
  3655.   26: mov r3.y, v5.w
  3656.   27: mov r3.z, v6.w
  3657.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  3658.   29: dp2 r5.x, r1.zyzz, r5.yzyy
  3659.   30: dp2 r7.y, r6.zyzz, r5.xwxx
  3660.   31: dp2 r8.y, r6.yxyy, r5.xwxx
  3661.   32: dp2 r7.x, r1.yxyy, r5.yzyy
  3662.   33: dp2 r8.x, r4.yzyy, r7.xyxx
  3663.   34: dp2 r8.z, r4.xyxx, r7.xyxx
  3664.   35: add r5.xyz, r3.xyzx, r8.xyzx
  3665.   36: add r0.xyz, r0.xzwx, r5.xyzx
  3666.   37: mul r5.xyzw, r0.yyyy, cb2[1].xyzw
  3667.   38: mad r5.xyzw, cb2[0].xyzw, r0.xxxx, r5.xyzw
  3668.   39: mad r0.xyzw, cb2[2].xyzw, r0.zzzz, r5.xyzw
  3669.   40: add r5.xyzw, r0.xyzw, cb2[3].xyzw
  3670.   41: mad r0.xyz, cb2[3].xyzx, v0.wwww, r0.xyzx
  3671.   42: mul r7.xyzw, r5.yyyy, cb3[18].xyzw
  3672.   43: mad r7.xyzw, cb3[17].xyzw, r5.xxxx, r7.xyzw
  3673.   44: mad r7.xyzw, cb3[19].xyzw, r5.zzzz, r7.xyzw
  3674.   45: mad o0.xyzw, cb3[20].xyzw, r5.wwww, r7.xyzw
  3675.   46: mad o1.xy, v3.xyxx, cb0[5].xyxx, cb0[5].zwzz
  3676.   47: mov o1.zw, v3.zzzw
  3677.   48: mad r5.yzw, v1.xxyz, r2.xxyz, -r3.xxyz
  3678.   49: div r2.xyz, v2.xyzx, r2.xyzx
  3679.   50: add r2.yzw, -r3.xxyz, r2.xxyz
  3680.   51: dp2 r5.x, r1.zyzz, r5.yzyy
  3681.   52: dp2 r2.x, r1.zyzz, r2.yzyy
  3682.   53: dp2 r7.y, r6.zyzz, r5.xwxx
  3683.   54: dp2 r8.y, r6.zyzz, r2.xwxx
  3684.   55: dp2 r9.y, r6.yxyy, r2.xwxx
  3685.   56: dp2 r6.y, r6.yxyy, r5.xwxx
  3686.   57: dp2 r7.x, r1.yxyy, r5.yzyy
  3687.   58: dp2 r8.x, r1.yxyy, r2.yzyy
  3688.   59: dp2 r6.x, r4.yzyy, r7.xyxx
  3689.   60: dp2 r9.x, r4.yzyy, r8.xyxx
  3690.   61: dp2 r9.z, r4.xyxx, r8.xyxx
  3691.   62: dp2 r6.z, r4.xyxx, r7.xyxx
  3692.   63: add r1.xyz, r3.xyzx, r6.xyzx
  3693.   64: add r2.xyz, r3.xyzx, r9.xyzx
  3694.   65: mul r3.xyz, r1.yyyy, cb2[1].xyzx
  3695.   66: mad r1.xyw, cb2[0].xyxz, r1.xxxx, r3.xyxz
  3696.   67: mad r1.xyz, cb2[2].xyzx, r1.zzzz, r1.xywx
  3697.   68: dp3 r0.w, r1.xyzx, r1.xyzx
  3698.   69: rsq r0.w, r0.w
  3699.   70: mul r1.xyz, r0.wwww, r1.xyzx
  3700.   71: mov o2.x, r1.x
  3701.   72: dp3 r3.x, r2.xyzx, cb2[4].xyzx
  3702.   73: dp3 r3.y, r2.xyzx, cb2[5].xyzx
  3703.   74: dp3 r3.z, r2.xyzx, cb2[6].xyzx
  3704.   75: dp3 r0.w, r3.xyzx, r3.xyzx
  3705.   76: rsq r0.w, r0.w
  3706.   77: mul r2.xyzw, r0.wwww, r3.xyzz
  3707.   78: mov o2.z, r2.x
  3708.   79: mov o2.y, l(0)
  3709.   80: mov o2.w, r0.x
  3710.   81: mov o3.w, r0.y
  3711.   82: mov o4.w, r0.z
  3712.   83: mov o3.x, r1.y
  3713.   84: mov o4.x, r1.z
  3714.   85: mov o3.z, r2.y
  3715.   86: mov o3.y, l(0)
  3716.   87: mov o4.z, r2.w
  3717.   88: mov o4.y, l(0)
  3718.   89: mov o5.xyzw, v7.xyzw
  3719.   90: mov o6.xyzw, l(0,0,0,0)
  3720.   91: mul r0.x, r2.y, r2.y
  3721.   92: mad r0.x, r2.x, r2.x, -r0.x
  3722.   93: mul r1.xyzw, r2.ywzx, r2.xyzw
  3723.   94: dp4 r2.x, cb1[42].xyzw, r1.xyzw
  3724.   95: dp4 r2.y, cb1[43].xyzw, r1.xyzw
  3725.   96: dp4 r2.z, cb1[44].xyzw, r1.xyzw
  3726.   97: mad o7.xyz, cb1[45].xyzx, r0.xxxx, r2.xyzx
  3727.   98: ret
  3728. // Approximately 0 instruction slots used
  3729.  
  3730.  
  3731. -- Hardware tier variant: Tier 1
  3732. -- Fragment shader for "d3d11":
  3733. // Stats: 43 math, 4 temp registers, 4 textures, 2 branches
  3734. Set 2D Texture "_TextureSample0" to slot 0 sampler slot 1
  3735. Set 3D Texture "unity_ProbeVolumeSH" to slot 1 sampler slot 0
  3736.  
  3737. Constant Buffer "UnityLighting" (768 bytes) on slot 0 {
  3738.   Vector4 unity_SHAr at 624
  3739.   Vector4 unity_SHAg at 640
  3740.   Vector4 unity_SHAb at 656
  3741. }
  3742. Constant Buffer "UnityProbeVolume" (112 bytes) on slot 1 {
  3743.   Matrix4x4 unity_ProbeVolumeWorldToObject at 16
  3744.   Vector4 unity_ProbeVolumeParams at 0
  3745.   Vector3 unity_ProbeVolumeSizeInv at 80
  3746.   Vector3 unity_ProbeVolumeMin at 96
  3747. }
  3748.  
  3749. Shader Disassembly:
  3750. //
  3751. // Generated by Microsoft (R) D3D Shader Disassembler
  3752. //
  3753. //
  3754. // Input signature:
  3755. //
  3756. // Name                 Index   Mask Register SysValue  Format   Used
  3757. // -------------------- ----- ------ -------- -------- ------- ------
  3758. // SV_POSITION              0   xyzw        0      POS   float      
  3759. // TEXCOORD                 0   xyzw        1     NONE   float   xy  
  3760. // TEXCOORD                 1   xyzw        2     NONE   float   xyzw
  3761. // TEXCOORD                 2   xyzw        3     NONE   float   xyzw
  3762. // TEXCOORD                 3   xyzw        4     NONE   float   xyzw
  3763. // COLOR                    0   xyzw        5     NONE   float   xyz
  3764. // TEXCOORD                 4   xyzw        6     NONE   float      
  3765. // TEXCOORD                 5   xyz         7     NONE   float   xyz
  3766. //
  3767. //
  3768. // Output signature:
  3769. //
  3770. // Name                 Index   Mask Register SysValue  Format   Used
  3771. // -------------------- ----- ------ -------- -------- ------- ------
  3772. // SV_Target                0   xyzw        0   TARGET   float   xyzw
  3773. // SV_Target                1   xyzw        1   TARGET   float   xyzw
  3774. // SV_Target                2   xyzw        2   TARGET   float   xyzw
  3775. // SV_Target                3   xyzw        3   TARGET   float   xyzw
  3776. //
  3777.       ps_4_0
  3778.       dcl_constantbuffer CB0[42], immediateIndexed
  3779.       dcl_constantbuffer CB1[7], immediateIndexed
  3780.       dcl_sampler s0, mode_default
  3781.       dcl_sampler s1, mode_default
  3782.       dcl_resource_texture2d (float,float,float,float) t0
  3783.       dcl_resource_texture3d (float,float,float,float) t1
  3784.       dcl_input_ps linear v1.xy
  3785.       dcl_input_ps linear v2.xyzw
  3786.       dcl_input_ps linear v3.xyzw
  3787.       dcl_input_ps linear v4.xyzw
  3788.       dcl_input_ps linear v5.xyz
  3789.       dcl_input_ps linear v7.xyz
  3790.       dcl_output o0.xyzw
  3791.       dcl_output o1.xyzw
  3792.       dcl_output o2.xyzw
  3793.       dcl_output o3.xyzw
  3794.       dcl_temps 4
  3795.    0: sample r0.xyzw, v1.xyxx, t0.xyzw, s1
  3796.    1: mul r0.x, r0.w, r0.x
  3797.    2: mad r0.xy, r0.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
  3798.    3: dp2 r0.w, r0.xyxx, r0.xyxx
  3799.    4: min r0.w, r0.w, l(1.000000)
  3800.    5: add r0.w, -r0.w, l(1.000000)
  3801.    6: sqrt r0.z, r0.w
  3802.    7: dp3 r1.x, v2.xyzx, r0.xyzx
  3803.    8: dp3 r1.y, v3.xyzx, r0.xyzx
  3804.    9: dp3 r1.z, v4.xyzx, r0.xyzx
  3805.   10: dp3 r0.x, r1.xyzx, r1.xyzx
  3806.   11: rsq r0.x, r0.x
  3807.   12: mul r0.xyz, r0.xxxx, r1.xyzx
  3808.   13: eq r1.x, cb1[0].x, l(1.000000)
  3809.   14: if_nz r1.x
  3810.   15:   eq r1.x, cb1[0].y, l(1.000000)
  3811.   16:   mul r1.yzw, v3.wwww, cb1[2].xxyz
  3812.   17:   mad r1.yzw, cb1[1].xxyz, v2.wwww, r1.yyzw
  3813.   18:   mad r1.yzw, cb1[3].xxyz, v4.wwww, r1.yyzw
  3814.   19:   add r1.yzw, r1.yyzw, cb1[4].xxyz
  3815.   20:   mov r2.y, v2.w
  3816.   21:   mov r2.z, v3.w
  3817.   22:   mov r2.w, v4.w
  3818.   23:   movc r1.xyz, r1.xxxx, r1.yzwy, r2.yzwy
  3819.   24:   add r1.xyz, r1.xyzx, -cb1[6].xyzx
  3820.   25:   mul r1.yzw, r1.xxyz, cb1[5].xxyz
  3821.   26:   mul r1.y, r1.y, l(0.250000)
  3822.   27:   mul r2.x, cb1[0].z, l(0.500000)
  3823.   28:   mad r2.y, -cb1[0].z, l(0.500000), l(0.250000)
  3824.   29:   max r1.y, r1.y, r2.x
  3825.   30:   min r1.x, r2.y, r1.y
  3826.   31:   sample r2.xyzw, r1.xzwx, t1.xyzw, s0
  3827.   32:   add r3.xyz, r1.xzwx, l(0.250000, 0.000000, 0.000000, 0.000000)
  3828.   33:   sample r3.xyzw, r3.xyzx, t1.xyzw, s0
  3829.   34:   add r1.xyz, r1.xzwx, l(0.500000, 0.000000, 0.000000, 0.000000)
  3830.   35:   sample r1.xyzw, r1.xyzx, t1.xyzw, s0
  3831.   36:   mov r0.w, l(1.000000)
  3832.   37:   dp4 r2.x, r2.xyzw, r0.xyzw
  3833.   38:   dp4 r2.y, r3.xyzw, r0.xyzw
  3834.   39:   dp4 r2.z, r1.xyzw, r0.xyzw
  3835.   40: else
  3836.   41:   mov r0.w, l(1.000000)
  3837.   42:   dp4 r2.x, cb0[39].xyzw, r0.xyzw
  3838.   43:   dp4 r2.y, cb0[40].xyzw, r0.xyzw
  3839.   44:   dp4 r2.z, cb0[41].xyzw, r0.xyzw
  3840.   45: endif
  3841.   46: add r1.xyz, r2.xyzx, v7.xyzx
  3842.   47: max r1.xyz, r1.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  3843.   48: log r1.xyz, r1.xyzx
  3844.   49: mul r1.xyz, r1.xyzx, l(0.416667, 0.416667, 0.416667, 0.000000)
  3845.   50: exp r1.xyz, r1.xyzx
  3846.   51: mad r1.xyz, r1.xyzx, l(1.055000, 1.055000, 1.055000, 0.000000), l(-0.055000, -0.055000, -0.055000, 0.000000)
  3847.   52: max r1.xyz, r1.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  3848.   53: mad o2.xyz, r0.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), l(0.500000, 0.500000, 0.500000, 0.000000)
  3849.   54: mul r0.xyz, r1.xyzx, v5.xyzx
  3850.   55: exp o3.xyz, -r0.xyzx
  3851.   56: mov o0.xyz, v5.xyzx
  3852.   57: mov o0.w, l(1.000000)
  3853.   58: mov o1.xyzw, l(0,0,0,0)
  3854.   59: mov o2.w, l(1.000000)
  3855.   60: mov o3.w, l(1.000000)
  3856.   61: ret
  3857. // Approximately 0 instruction slots used
  3858.  
  3859.  
  3860. //////////////////////////////////////////////////////
  3861. Keywords set in this variant: LIGHTPROBE_SH
  3862. -- Hardware tier variant: Tier 1
  3863. -- Vertex shader for "d3d11":
  3864. // Stats: 71 math, 10 temp registers
  3865. Uses vertex data channel "Vertex"
  3866. Uses vertex data channel "Normal"
  3867. Uses vertex data channel "Color"
  3868. Uses vertex data channel "TexCoord"
  3869. Uses vertex data channel "TexCoord0"
  3870. Uses vertex data channel "TexCoord1"
  3871. Uses vertex data channel "TexCoord2"
  3872. Uses vertex data channel "Tangent"
  3873.  
  3874. Constant Buffer "$Globals" (112 bytes) on slot 0 {
  3875.   Float _t at 64
  3876.   Float _PopInTime at 68
  3877.   Vector4 _tex4coord_ST at 80
  3878. }
  3879. Constant Buffer "UnityLighting" (768 bytes) on slot 1 {
  3880.   Vector4 unity_SHBr at 672
  3881.   Vector4 unity_SHBg at 688
  3882.   Vector4 unity_SHBb at 704
  3883.   Vector4 unity_SHC at 720
  3884. }
  3885. Constant Buffer "UnityPerDraw" (160 bytes) on slot 2 {
  3886.   Matrix4x4 unity_ObjectToWorld at 0
  3887.   Matrix4x4 unity_WorldToObject at 64
  3888. }
  3889. Constant Buffer "UnityPerFrame" (368 bytes) on slot 3 {
  3890.   Matrix4x4 unity_MatrixVP at 272
  3891. }
  3892.  
  3893. Shader Disassembly:
  3894. //
  3895. // Generated by Microsoft (R) D3D Shader Disassembler
  3896. //
  3897. //
  3898. // Input signature:
  3899. //
  3900. // Name                 Index   Mask Register SysValue  Format   Used
  3901. // -------------------- ----- ------ -------- -------- ------- ------
  3902. // POSITION                 0   xyzw        0     NONE   float   xyzw
  3903. // TANGENT                  0   xyzw        1     NONE   float   xyz
  3904. // NORMAL                   0   xyz         2     NONE   float   xyz
  3905. // TEXCOORD                 0   xyzw        3     NONE   float   xyzw
  3906. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  3907. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  3908. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  3909. // COLOR                    0   xyzw        7     NONE   float   xyzw
  3910. //
  3911. //
  3912. // Output signature:
  3913. //
  3914. // Name                 Index   Mask Register SysValue  Format   Used
  3915. // -------------------- ----- ------ -------- -------- ------- ------
  3916. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  3917. // TEXCOORD                 0   xyzw        1     NONE   float   xyzw
  3918. // TEXCOORD                 1   xyzw        2     NONE   float   xyzw
  3919. // TEXCOORD                 2   xyzw        3     NONE   float   xyzw
  3920. // TEXCOORD                 3   xyzw        4     NONE   float   xyzw
  3921. // COLOR                    0   xyzw        5     NONE   float   xyzw
  3922. // TEXCOORD                 4   xyzw        6     NONE   float   xyzw
  3923. // TEXCOORD                 5   xyz         7     NONE   float   xyz
  3924. //
  3925.       vs_4_0
  3926.       dcl_constantbuffer CB0[6], immediateIndexed
  3927.       dcl_constantbuffer CB1[46], immediateIndexed
  3928.       dcl_constantbuffer CB2[7], immediateIndexed
  3929.       dcl_constantbuffer CB3[21], immediateIndexed
  3930.       dcl_input v0.xyzw
  3931.       dcl_input v1.xyz
  3932.       dcl_input v2.xyz
  3933.       dcl_input v3.xyzw
  3934.       dcl_input v4.xyzw
  3935.       dcl_input v5.xyzw
  3936.       dcl_input v6.xyzw
  3937.       dcl_input v7.xyzw
  3938.       dcl_output_siv o0.xyzw, position
  3939.       dcl_output o1.xyzw
  3940.       dcl_output o2.xyzw
  3941.       dcl_output o3.xyzw
  3942.       dcl_output o4.xyzw
  3943.       dcl_output o5.xyzw
  3944.       dcl_output o6.xyzw
  3945.       dcl_output o7.xyz
  3946.       dcl_temps 10
  3947.    0: add r0.x, cb0[4].y, cb0[4].x
  3948.    1: ge r0.x, v3.z, r0.x
  3949.    2: and r0.x, r0.x, l(0x3f800000)
  3950.    3: add r0.y, -v3.z, cb0[4].x
  3951.    4: div_sat r0.y, r0.y, v3.w
  3952.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  3953.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  3954.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  3955.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  3956.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  3957.   10: sincos r2.x, r3.x, r1.y
  3958.   11: mov r4.z, r2.x
  3959.   12: mov r4.y, r3.x
  3960.   13: mov r4.x, -r2.x
  3961.   14: sincos r1.x, r2.x, r1.x
  3962.   15: sincos r3.x, r5.x, r1.z
  3963.   16: mov r6.z, r1.x
  3964.   17: mov r6.y, r2.x
  3965.   18: mov r6.x, -r1.x
  3966.   19: mov r1.z, r3.x
  3967.   20: mov r1.y, r5.x
  3968.   21: mov r1.x, -r3.x
  3969.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  3970.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  3971.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  3972.   25: mov r3.x, v4.w
  3973.   26: mov r3.y, v5.w
  3974.   27: mov r3.z, v6.w
  3975.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  3976.   29: dp2 r5.x, r1.zyzz, r5.yzyy
  3977.   30: dp2 r7.y, r6.zyzz, r5.xwxx
  3978.   31: dp2 r8.y, r6.yxyy, r5.xwxx
  3979.   32: dp2 r7.x, r1.yxyy, r5.yzyy
  3980.   33: dp2 r8.x, r4.yzyy, r7.xyxx
  3981.   34: dp2 r8.z, r4.xyxx, r7.xyxx
  3982.   35: add r5.xyz, r3.xyzx, r8.xyzx
  3983.   36: add r0.xyz, r0.xzwx, r5.xyzx
  3984.   37: mul r5.xyzw, r0.yyyy, cb2[1].xyzw
  3985.   38: mad r5.xyzw, cb2[0].xyzw, r0.xxxx, r5.xyzw
  3986.   39: mad r0.xyzw, cb2[2].xyzw, r0.zzzz, r5.xyzw
  3987.   40: add r5.xyzw, r0.xyzw, cb2[3].xyzw
  3988.   41: mad r0.xyz, cb2[3].xyzx, v0.wwww, r0.xyzx
  3989.   42: mul r7.xyzw, r5.yyyy, cb3[18].xyzw
  3990.   43: mad r7.xyzw, cb3[17].xyzw, r5.xxxx, r7.xyzw
  3991.   44: mad r7.xyzw, cb3[19].xyzw, r5.zzzz, r7.xyzw
  3992.   45: mad o0.xyzw, cb3[20].xyzw, r5.wwww, r7.xyzw
  3993.   46: mad o1.xy, v3.xyxx, cb0[5].xyxx, cb0[5].zwzz
  3994.   47: mov o1.zw, v3.zzzw
  3995.   48: mad r5.yzw, v1.xxyz, r2.xxyz, -r3.xxyz
  3996.   49: div r2.xyz, v2.xyzx, r2.xyzx
  3997.   50: add r2.yzw, -r3.xxyz, r2.xxyz
  3998.   51: dp2 r5.x, r1.zyzz, r5.yzyy
  3999.   52: dp2 r2.x, r1.zyzz, r2.yzyy
  4000.   53: dp2 r7.y, r6.zyzz, r5.xwxx
  4001.   54: dp2 r8.y, r6.zyzz, r2.xwxx
  4002.   55: dp2 r9.y, r6.yxyy, r2.xwxx
  4003.   56: dp2 r6.y, r6.yxyy, r5.xwxx
  4004.   57: dp2 r7.x, r1.yxyy, r5.yzyy
  4005.   58: dp2 r8.x, r1.yxyy, r2.yzyy
  4006.   59: dp2 r6.x, r4.yzyy, r7.xyxx
  4007.   60: dp2 r9.x, r4.yzyy, r8.xyxx
  4008.   61: dp2 r9.z, r4.xyxx, r8.xyxx
  4009.   62: dp2 r6.z, r4.xyxx, r7.xyxx
  4010.   63: add r1.xyz, r3.xyzx, r6.xyzx
  4011.   64: add r2.xyz, r3.xyzx, r9.xyzx
  4012.   65: mul r3.xyz, r1.yyyy, cb2[1].xyzx
  4013.   66: mad r1.xyw, cb2[0].xyxz, r1.xxxx, r3.xyxz
  4014.   67: mad r1.xyz, cb2[2].xyzx, r1.zzzz, r1.xywx
  4015.   68: dp3 r0.w, r1.xyzx, r1.xyzx
  4016.   69: rsq r0.w, r0.w
  4017.   70: mul r1.xyz, r0.wwww, r1.xyzx
  4018.   71: mov o2.x, r1.x
  4019.   72: dp3 r3.x, r2.xyzx, cb2[4].xyzx
  4020.   73: dp3 r3.y, r2.xyzx, cb2[5].xyzx
  4021.   74: dp3 r3.z, r2.xyzx, cb2[6].xyzx
  4022.   75: dp3 r0.w, r3.xyzx, r3.xyzx
  4023.   76: rsq r0.w, r0.w
  4024.   77: mul r2.xyzw, r0.wwww, r3.xyzz
  4025.   78: mov o2.z, r2.x
  4026.   79: mov o2.y, l(0)
  4027.   80: mov o2.w, r0.x
  4028.   81: mov o3.w, r0.y
  4029.   82: mov o4.w, r0.z
  4030.   83: mov o3.x, r1.y
  4031.   84: mov o4.x, r1.z
  4032.   85: mov o3.z, r2.y
  4033.   86: mov o3.y, l(0)
  4034.   87: mov o4.z, r2.w
  4035.   88: mov o4.y, l(0)
  4036.   89: mov o5.xyzw, v7.xyzw
  4037.   90: mov o6.xyzw, l(0,0,0,0)
  4038.   91: mul r0.x, r2.y, r2.y
  4039.   92: mad r0.x, r2.x, r2.x, -r0.x
  4040.   93: mul r1.xyzw, r2.ywzx, r2.xyzw
  4041.   94: dp4 r2.x, cb1[42].xyzw, r1.xyzw
  4042.   95: dp4 r2.y, cb1[43].xyzw, r1.xyzw
  4043.   96: dp4 r2.z, cb1[44].xyzw, r1.xyzw
  4044.   97: mad o7.xyz, cb1[45].xyzx, r0.xxxx, r2.xyzx
  4045.   98: ret
  4046. // Approximately 0 instruction slots used
  4047.  
  4048.  
  4049. -- Hardware tier variant: Tier 1
  4050. -- Fragment shader for "d3d11":
  4051. // Stats: 43 math, 4 temp registers, 4 textures, 2 branches
  4052. Set 2D Texture "_TextureSample0" to slot 0 sampler slot 1
  4053. Set 3D Texture "unity_ProbeVolumeSH" to slot 1 sampler slot 0
  4054.  
  4055. Constant Buffer "UnityLighting" (768 bytes) on slot 0 {
  4056.   Vector4 unity_SHAr at 624
  4057.   Vector4 unity_SHAg at 640
  4058.   Vector4 unity_SHAb at 656
  4059. }
  4060. Constant Buffer "UnityProbeVolume" (112 bytes) on slot 1 {
  4061.   Matrix4x4 unity_ProbeVolumeWorldToObject at 16
  4062.   Vector4 unity_ProbeVolumeParams at 0
  4063.   Vector3 unity_ProbeVolumeSizeInv at 80
  4064.   Vector3 unity_ProbeVolumeMin at 96
  4065. }
  4066.  
  4067. Shader Disassembly:
  4068. //
  4069. // Generated by Microsoft (R) D3D Shader Disassembler
  4070. //
  4071. //
  4072. // Input signature:
  4073. //
  4074. // Name                 Index   Mask Register SysValue  Format   Used
  4075. // -------------------- ----- ------ -------- -------- ------- ------
  4076. // SV_POSITION              0   xyzw        0      POS   float      
  4077. // TEXCOORD                 0   xyzw        1     NONE   float   xy  
  4078. // TEXCOORD                 1   xyzw        2     NONE   float   xyzw
  4079. // TEXCOORD                 2   xyzw        3     NONE   float   xyzw
  4080. // TEXCOORD                 3   xyzw        4     NONE   float   xyzw
  4081. // COLOR                    0   xyzw        5     NONE   float   xyz
  4082. // TEXCOORD                 4   xyzw        6     NONE   float      
  4083. // TEXCOORD                 5   xyz         7     NONE   float   xyz
  4084. //
  4085. //
  4086. // Output signature:
  4087. //
  4088. // Name                 Index   Mask Register SysValue  Format   Used
  4089. // -------------------- ----- ------ -------- -------- ------- ------
  4090. // SV_Target                0   xyzw        0   TARGET   float   xyzw
  4091. // SV_Target                1   xyzw        1   TARGET   float   xyzw
  4092. // SV_Target                2   xyzw        2   TARGET   float   xyzw
  4093. // SV_Target                3   xyzw        3   TARGET   float   xyzw
  4094. //
  4095.       ps_4_0
  4096.       dcl_constantbuffer CB0[42], immediateIndexed
  4097.       dcl_constantbuffer CB1[7], immediateIndexed
  4098.       dcl_sampler s0, mode_default
  4099.       dcl_sampler s1, mode_default
  4100.       dcl_resource_texture2d (float,float,float,float) t0
  4101.       dcl_resource_texture3d (float,float,float,float) t1
  4102.       dcl_input_ps linear v1.xy
  4103.       dcl_input_ps linear v2.xyzw
  4104.       dcl_input_ps linear v3.xyzw
  4105.       dcl_input_ps linear v4.xyzw
  4106.       dcl_input_ps linear v5.xyz
  4107.       dcl_input_ps linear v7.xyz
  4108.       dcl_output o0.xyzw
  4109.       dcl_output o1.xyzw
  4110.       dcl_output o2.xyzw
  4111.       dcl_output o3.xyzw
  4112.       dcl_temps 4
  4113.    0: sample r0.xyzw, v1.xyxx, t0.xyzw, s1
  4114.    1: mul r0.x, r0.w, r0.x
  4115.    2: mad r0.xy, r0.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
  4116.    3: dp2 r0.w, r0.xyxx, r0.xyxx
  4117.    4: min r0.w, r0.w, l(1.000000)
  4118.    5: add r0.w, -r0.w, l(1.000000)
  4119.    6: sqrt r0.z, r0.w
  4120.    7: dp3 r1.x, v2.xyzx, r0.xyzx
  4121.    8: dp3 r1.y, v3.xyzx, r0.xyzx
  4122.    9: dp3 r1.z, v4.xyzx, r0.xyzx
  4123.   10: dp3 r0.x, r1.xyzx, r1.xyzx
  4124.   11: rsq r0.x, r0.x
  4125.   12: mul r0.xyz, r0.xxxx, r1.xyzx
  4126.   13: eq r1.x, cb1[0].x, l(1.000000)
  4127.   14: if_nz r1.x
  4128.   15:   eq r1.x, cb1[0].y, l(1.000000)
  4129.   16:   mul r1.yzw, v3.wwww, cb1[2].xxyz
  4130.   17:   mad r1.yzw, cb1[1].xxyz, v2.wwww, r1.yyzw
  4131.   18:   mad r1.yzw, cb1[3].xxyz, v4.wwww, r1.yyzw
  4132.   19:   add r1.yzw, r1.yyzw, cb1[4].xxyz
  4133.   20:   mov r2.y, v2.w
  4134.   21:   mov r2.z, v3.w
  4135.   22:   mov r2.w, v4.w
  4136.   23:   movc r1.xyz, r1.xxxx, r1.yzwy, r2.yzwy
  4137.   24:   add r1.xyz, r1.xyzx, -cb1[6].xyzx
  4138.   25:   mul r1.yzw, r1.xxyz, cb1[5].xxyz
  4139.   26:   mul r1.y, r1.y, l(0.250000)
  4140.   27:   mul r2.x, cb1[0].z, l(0.500000)
  4141.   28:   mad r2.y, -cb1[0].z, l(0.500000), l(0.250000)
  4142.   29:   max r1.y, r1.y, r2.x
  4143.   30:   min r1.x, r2.y, r1.y
  4144.   31:   sample r2.xyzw, r1.xzwx, t1.xyzw, s0
  4145.   32:   add r3.xyz, r1.xzwx, l(0.250000, 0.000000, 0.000000, 0.000000)
  4146.   33:   sample r3.xyzw, r3.xyzx, t1.xyzw, s0
  4147.   34:   add r1.xyz, r1.xzwx, l(0.500000, 0.000000, 0.000000, 0.000000)
  4148.   35:   sample r1.xyzw, r1.xyzx, t1.xyzw, s0
  4149.   36:   mov r0.w, l(1.000000)
  4150.   37:   dp4 r2.x, r2.xyzw, r0.xyzw
  4151.   38:   dp4 r2.y, r3.xyzw, r0.xyzw
  4152.   39:   dp4 r2.z, r1.xyzw, r0.xyzw
  4153.   40: else
  4154.   41:   mov r0.w, l(1.000000)
  4155.   42:   dp4 r2.x, cb0[39].xyzw, r0.xyzw
  4156.   43:   dp4 r2.y, cb0[40].xyzw, r0.xyzw
  4157.   44:   dp4 r2.z, cb0[41].xyzw, r0.xyzw
  4158.   45: endif
  4159.   46: add r1.xyz, r2.xyzx, v7.xyzx
  4160.   47: max r1.xyz, r1.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  4161.   48: log r1.xyz, r1.xyzx
  4162.   49: mul r1.xyz, r1.xyzx, l(0.416667, 0.416667, 0.416667, 0.000000)
  4163.   50: exp r1.xyz, r1.xyzx
  4164.   51: mad r1.xyz, r1.xyzx, l(1.055000, 1.055000, 1.055000, 0.000000), l(-0.055000, -0.055000, -0.055000, 0.000000)
  4165.   52: max r1.xyz, r1.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  4166.   53: mad o2.xyz, r0.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), l(0.500000, 0.500000, 0.500000, 0.000000)
  4167.   54: mul r0.xyz, r1.xyzx, v5.xyzx
  4168.   55: exp o3.xyz, -r0.xyzx
  4169.   56: mov o0.xyz, v5.xyzx
  4170.   57: mov o0.w, l(1.000000)
  4171.   58: mov o1.xyzw, l(0,0,0,0)
  4172.   59: mov o2.w, l(1.000000)
  4173.   60: mov o3.w, l(1.000000)
  4174.   61: ret
  4175. // Approximately 0 instruction slots used
  4176.  
  4177.  
  4178. //////////////////////////////////////////////////////
  4179. Keywords set in this variant: LIGHTPROBE_SH UNITY_HDR_ON
  4180. -- Hardware tier variant: Tier 1
  4181. -- Vertex shader for "d3d11":
  4182. // Stats: 71 math, 10 temp registers
  4183. Uses vertex data channel "Vertex"
  4184. Uses vertex data channel "Normal"
  4185. Uses vertex data channel "Color"
  4186. Uses vertex data channel "TexCoord"
  4187. Uses vertex data channel "TexCoord0"
  4188. Uses vertex data channel "TexCoord1"
  4189. Uses vertex data channel "TexCoord2"
  4190. Uses vertex data channel "Tangent"
  4191.  
  4192. Constant Buffer "$Globals" (112 bytes) on slot 0 {
  4193.   Float _t at 64
  4194.   Float _PopInTime at 68
  4195.   Vector4 _tex4coord_ST at 80
  4196. }
  4197. Constant Buffer "UnityLighting" (768 bytes) on slot 1 {
  4198.   Vector4 unity_SHBr at 672
  4199.   Vector4 unity_SHBg at 688
  4200.   Vector4 unity_SHBb at 704
  4201.   Vector4 unity_SHC at 720
  4202. }
  4203. Constant Buffer "UnityPerDraw" (160 bytes) on slot 2 {
  4204.   Matrix4x4 unity_ObjectToWorld at 0
  4205.   Matrix4x4 unity_WorldToObject at 64
  4206. }
  4207. Constant Buffer "UnityPerFrame" (368 bytes) on slot 3 {
  4208.   Matrix4x4 unity_MatrixVP at 272
  4209. }
  4210.  
  4211. Shader Disassembly:
  4212. //
  4213. // Generated by Microsoft (R) D3D Shader Disassembler
  4214. //
  4215. //
  4216. // Input signature:
  4217. //
  4218. // Name                 Index   Mask Register SysValue  Format   Used
  4219. // -------------------- ----- ------ -------- -------- ------- ------
  4220. // POSITION                 0   xyzw        0     NONE   float   xyzw
  4221. // TANGENT                  0   xyzw        1     NONE   float   xyz
  4222. // NORMAL                   0   xyz         2     NONE   float   xyz
  4223. // TEXCOORD                 0   xyzw        3     NONE   float   xyzw
  4224. // TEXCOORD                 1   xyzw        4     NONE   float   xyzw
  4225. // TEXCOORD                 2   xyzw        5     NONE   float   xyzw
  4226. // TEXCOORD                 3   xyzw        6     NONE   float   xyzw
  4227. // COLOR                    0   xyzw        7     NONE   float   xyzw
  4228. //
  4229. //
  4230. // Output signature:
  4231. //
  4232. // Name                 Index   Mask Register SysValue  Format   Used
  4233. // -------------------- ----- ------ -------- -------- ------- ------
  4234. // SV_POSITION              0   xyzw        0      POS   float   xyzw
  4235. // TEXCOORD                 0   xyzw        1     NONE   float   xyzw
  4236. // TEXCOORD                 1   xyzw        2     NONE   float   xyzw
  4237. // TEXCOORD                 2   xyzw        3     NONE   float   xyzw
  4238. // TEXCOORD                 3   xyzw        4     NONE   float   xyzw
  4239. // COLOR                    0   xyzw        5     NONE   float   xyzw
  4240. // TEXCOORD                 4   xyzw        6     NONE   float   xyzw
  4241. // TEXCOORD                 5   xyz         7     NONE   float   xyz
  4242. //
  4243.       vs_4_0
  4244.       dcl_constantbuffer CB0[6], immediateIndexed
  4245.       dcl_constantbuffer CB1[46], immediateIndexed
  4246.       dcl_constantbuffer CB2[7], immediateIndexed
  4247.       dcl_constantbuffer CB3[21], immediateIndexed
  4248.       dcl_input v0.xyzw
  4249.       dcl_input v1.xyz
  4250.       dcl_input v2.xyz
  4251.       dcl_input v3.xyzw
  4252.       dcl_input v4.xyzw
  4253.       dcl_input v5.xyzw
  4254.       dcl_input v6.xyzw
  4255.       dcl_input v7.xyzw
  4256.       dcl_output_siv o0.xyzw, position
  4257.       dcl_output o1.xyzw
  4258.       dcl_output o2.xyzw
  4259.       dcl_output o3.xyzw
  4260.       dcl_output o4.xyzw
  4261.       dcl_output o5.xyzw
  4262.       dcl_output o6.xyzw
  4263.       dcl_output o7.xyz
  4264.       dcl_temps 10
  4265.    0: add r0.x, cb0[4].y, cb0[4].x
  4266.    1: ge r0.x, v3.z, r0.x
  4267.    2: and r0.x, r0.x, l(0x3f800000)
  4268.    3: add r0.y, -v3.z, cb0[4].x
  4269.    4: div_sat r0.y, r0.y, v3.w
  4270.    5: mad r1.xyz, r0.yyyy, v4.xyzx, -v4.xyzx
  4271.    6: add r2.xyz, -r1.xyzx, l(666666.000000, -666666.000000, 666666.000000, 0.000000)
  4272.    7: mad r0.xzw, r0.xxxx, r2.xxyz, r1.xxyz
  4273.    8: mad r1.xyz, r0.yyyy, v5.xyzx, -v5.xyzx
  4274.    9: mul r1.xyz, r1.xyzx, l(0.017453, 0.017453, 0.017453, 0.000000)
  4275.   10: sincos r2.x, r3.x, r1.y
  4276.   11: mov r4.z, r2.x
  4277.   12: mov r4.y, r3.x
  4278.   13: mov r4.x, -r2.x
  4279.   14: sincos r1.x, r2.x, r1.x
  4280.   15: sincos r3.x, r5.x, r1.z
  4281.   16: mov r6.z, r1.x
  4282.   17: mov r6.y, r2.x
  4283.   18: mov r6.x, -r1.x
  4284.   19: mov r1.z, r3.x
  4285.   20: mov r1.y, r5.x
  4286.   21: mov r1.x, -r3.x
  4287.   22: add r2.xyz, -v6.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  4288.   23: add r3.xyz, -r2.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
  4289.   24: mad r2.xyz, r0.yyyy, r3.xyzx, r2.xyzx
  4290.   25: mov r3.x, v4.w
  4291.   26: mov r3.y, v5.w
  4292.   27: mov r3.z, v6.w
  4293.   28: mad r5.yzw, v0.xxyz, r2.xxyz, -r3.xxyz
  4294.   29: dp2 r5.x, r1.zyzz, r5.yzyy
  4295.   30: dp2 r7.y, r6.zyzz, r5.xwxx
  4296.   31: dp2 r8.y, r6.yxyy, r5.xwxx
  4297.   32: dp2 r7.x, r1.yxyy, r5.yzyy
  4298.   33: dp2 r8.x, r4.yzyy, r7.xyxx
  4299.   34: dp2 r8.z, r4.xyxx, r7.xyxx
  4300.   35: add r5.xyz, r3.xyzx, r8.xyzx
  4301.   36: add r0.xyz, r0.xzwx, r5.xyzx
  4302.   37: mul r5.xyzw, r0.yyyy, cb2[1].xyzw
  4303.   38: mad r5.xyzw, cb2[0].xyzw, r0.xxxx, r5.xyzw
  4304.   39: mad r0.xyzw, cb2[2].xyzw, r0.zzzz, r5.xyzw
  4305.   40: add r5.xyzw, r0.xyzw, cb2[3].xyzw
  4306.   41: mad r0.xyz, cb2[3].xyzx, v0.wwww, r0.xyzx
  4307.   42: mul r7.xyzw, r5.yyyy, cb3[18].xyzw
  4308.   43: mad r7.xyzw, cb3[17].xyzw, r5.xxxx, r7.xyzw
  4309.   44: mad r7.xyzw, cb3[19].xyzw, r5.zzzz, r7.xyzw
  4310.   45: mad o0.xyzw, cb3[20].xyzw, r5.wwww, r7.xyzw
  4311.   46: mad o1.xy, v3.xyxx, cb0[5].xyxx, cb0[5].zwzz
  4312.   47: mov o1.zw, v3.zzzw
  4313.   48: mad r5.yzw, v1.xxyz, r2.xxyz, -r3.xxyz
  4314.   49: div r2.xyz, v2.xyzx, r2.xyzx
  4315.   50: add r2.yzw, -r3.xxyz, r2.xxyz
  4316.   51: dp2 r5.x, r1.zyzz, r5.yzyy
  4317.   52: dp2 r2.x, r1.zyzz, r2.yzyy
  4318.   53: dp2 r7.y, r6.zyzz, r5.xwxx
  4319.   54: dp2 r8.y, r6.zyzz, r2.xwxx
  4320.   55: dp2 r9.y, r6.yxyy, r2.xwxx
  4321.   56: dp2 r6.y, r6.yxyy, r5.xwxx
  4322.   57: dp2 r7.x, r1.yxyy, r5.yzyy
  4323.   58: dp2 r8.x, r1.yxyy, r2.yzyy
  4324.   59: dp2 r6.x, r4.yzyy, r7.xyxx
  4325.   60: dp2 r9.x, r4.yzyy, r8.xyxx
  4326.   61: dp2 r9.z, r4.xyxx, r8.xyxx
  4327.   62: dp2 r6.z, r4.xyxx, r7.xyxx
  4328.   63: add r1.xyz, r3.xyzx, r6.xyzx
  4329.   64: add r2.xyz, r3.xyzx, r9.xyzx
  4330.   65: mul r3.xyz, r1.yyyy, cb2[1].xyzx
  4331.   66: mad r1.xyw, cb2[0].xyxz, r1.xxxx, r3.xyxz
  4332.   67: mad r1.xyz, cb2[2].xyzx, r1.zzzz, r1.xywx
  4333.   68: dp3 r0.w, r1.xyzx, r1.xyzx
  4334.   69: rsq r0.w, r0.w
  4335.   70: mul r1.xyz, r0.wwww, r1.xyzx
  4336.   71: mov o2.x, r1.x
  4337.   72: dp3 r3.x, r2.xyzx, cb2[4].xyzx
  4338.   73: dp3 r3.y, r2.xyzx, cb2[5].xyzx
  4339.   74: dp3 r3.z, r2.xyzx, cb2[6].xyzx
  4340.   75: dp3 r0.w, r3.xyzx, r3.xyzx
  4341.   76: rsq r0.w, r0.w
  4342.   77: mul r2.xyzw, r0.wwww, r3.xyzz
  4343.   78: mov o2.z, r2.x
  4344.   79: mov o2.y, l(0)
  4345.   80: mov o2.w, r0.x
  4346.   81: mov o3.w, r0.y
  4347.   82: mov o4.w, r0.z
  4348.   83: mov o3.x, r1.y
  4349.   84: mov o4.x, r1.z
  4350.   85: mov o3.z, r2.y
  4351.   86: mov o3.y, l(0)
  4352.   87: mov o4.z, r2.w
  4353.   88: mov o4.y, l(0)
  4354.   89: mov o5.xyzw, v7.xyzw
  4355.   90: mov o6.xyzw, l(0,0,0,0)
  4356.   91: mul r0.x, r2.y, r2.y
  4357.   92: mad r0.x, r2.x, r2.x, -r0.x
  4358.   93: mul r1.xyzw, r2.ywzx, r2.xyzw
  4359.   94: dp4 r2.x, cb1[42].xyzw, r1.xyzw
  4360.   95: dp4 r2.y, cb1[43].xyzw, r1.xyzw
  4361.   96: dp4 r2.z, cb1[44].xyzw, r1.xyzw
  4362.   97: mad o7.xyz, cb1[45].xyzx, r0.xxxx, r2.xyzx
  4363.   98: ret
  4364. // Approximately 0 instruction slots used
  4365.  
  4366.  
  4367. -- Hardware tier variant: Tier 1
  4368. -- Fragment shader for "d3d11":
  4369. // Stats: 42 math, 4 temp registers, 4 textures, 2 branches
  4370. Set 2D Texture "_TextureSample0" to slot 0 sampler slot 1
  4371. Set 3D Texture "unity_ProbeVolumeSH" to slot 1 sampler slot 0
  4372.  
  4373. Constant Buffer "UnityLighting" (768 bytes) on slot 0 {
  4374.   Vector4 unity_SHAr at 624
  4375.   Vector4 unity_SHAg at 640
  4376.   Vector4 unity_SHAb at 656
  4377. }
  4378. Constant Buffer "UnityProbeVolume" (112 bytes) on slot 1 {
  4379.   Matrix4x4 unity_ProbeVolumeWorldToObject at 16
  4380.   Vector4 unity_ProbeVolumeParams at 0
  4381.   Vector3 unity_ProbeVolumeSizeInv at 80
  4382.   Vector3 unity_ProbeVolumeMin at 96
  4383. }
  4384.  
  4385. Shader Disassembly:
  4386. //
  4387. // Generated by Microsoft (R) D3D Shader Disassembler
  4388. //
  4389. //
  4390. // Input signature:
  4391. //
  4392. // Name                 Index   Mask Register SysValue  Format   Used
  4393. // -------------------- ----- ------ -------- -------- ------- ------
  4394. // SV_POSITION              0   xyzw        0      POS   float      
  4395. // TEXCOORD                 0   xyzw        1     NONE   float   xy  
  4396. // TEXCOORD                 1   xyzw        2     NONE   float   xyzw
  4397. // TEXCOORD                 2   xyzw        3     NONE   float   xyzw
  4398. // TEXCOORD                 3   xyzw        4     NONE   float   xyzw
  4399. // COLOR                    0   xyzw        5     NONE   float   xyz
  4400. // TEXCOORD                 4   xyzw        6     NONE   float      
  4401. // TEXCOORD                 5   xyz         7     NONE   float   xyz
  4402. //
  4403. //
  4404. // Output signature:
  4405. //
  4406. // Name                 Index   Mask Register SysValue  Format   Used
  4407. // -------------------- ----- ------ -------- -------- ------- ------
  4408. // SV_Target                0   xyzw        0   TARGET   float   xyzw
  4409. // SV_Target                1   xyzw        1   TARGET   float   xyzw
  4410. // SV_Target                2   xyzw        2   TARGET   float   xyzw
  4411. // SV_Target                3   xyzw        3   TARGET   float   xyzw
  4412. //
  4413.       ps_4_0
  4414.       dcl_constantbuffer CB0[42], immediateIndexed
  4415.       dcl_constantbuffer CB1[7], immediateIndexed
  4416.       dcl_sampler s0, mode_default
  4417.       dcl_sampler s1, mode_default
  4418.       dcl_resource_texture2d (float,float,float,float) t0
  4419.       dcl_resource_texture3d (float,float,float,float) t1
  4420.       dcl_input_ps linear v1.xy
  4421.       dcl_input_ps linear v2.xyzw
  4422.       dcl_input_ps linear v3.xyzw
  4423.       dcl_input_ps linear v4.xyzw
  4424.       dcl_input_ps linear v5.xyz
  4425.       dcl_input_ps linear v7.xyz
  4426.       dcl_output o0.xyzw
  4427.       dcl_output o1.xyzw
  4428.       dcl_output o2.xyzw
  4429.       dcl_output o3.xyzw
  4430.       dcl_temps 4
  4431.    0: sample r0.xyzw, v1.xyxx, t0.xyzw, s1
  4432.    1: mul r0.x, r0.w, r0.x
  4433.    2: mad r0.xy, r0.xyxx, l(2.000000, 2.000000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
  4434.    3: dp2 r0.w, r0.xyxx, r0.xyxx
  4435.    4: min r0.w, r0.w, l(1.000000)
  4436.    5: add r0.w, -r0.w, l(1.000000)
  4437.    6: sqrt r0.z, r0.w
  4438.    7: dp3 r1.x, v2.xyzx, r0.xyzx
  4439.    8: dp3 r1.y, v3.xyzx, r0.xyzx
  4440.    9: dp3 r1.z, v4.xyzx, r0.xyzx
  4441.   10: dp3 r0.x, r1.xyzx, r1.xyzx
  4442.   11: rsq r0.x, r0.x
  4443.   12: mul r0.xyz, r0.xxxx, r1.xyzx
  4444.   13: eq r1.x, cb1[0].x, l(1.000000)
  4445.   14: if_nz r1.x
  4446.   15:   eq r1.x, cb1[0].y, l(1.000000)
  4447.   16:   mul r1.yzw, v3.wwww, cb1[2].xxyz
  4448.   17:   mad r1.yzw, cb1[1].xxyz, v2.wwww, r1.yyzw
  4449.   18:   mad r1.yzw, cb1[3].xxyz, v4.wwww, r1.yyzw
  4450.   19:   add r1.yzw, r1.yyzw, cb1[4].xxyz
  4451.   20:   mov r2.y, v2.w
  4452.   21:   mov r2.z, v3.w
  4453.   22:   mov r2.w, v4.w
  4454.   23:   movc r1.xyz, r1.xxxx, r1.yzwy, r2.yzwy
  4455.   24:   add r1.xyz, r1.xyzx, -cb1[6].xyzx
  4456.   25:   mul r1.yzw, r1.xxyz, cb1[5].xxyz
  4457.   26:   mul r1.y, r1.y, l(0.250000)
  4458.   27:   mul r2.x, cb1[0].z, l(0.500000)
  4459.   28:   mad r2.y, -cb1[0].z, l(0.500000), l(0.250000)
  4460.   29:   max r1.y, r1.y, r2.x
  4461.   30:   min r1.x, r2.y, r1.y
  4462.   31:   sample r2.xyzw, r1.xzwx, t1.xyzw, s0
  4463.   32:   add r3.xyz, r1.xzwx, l(0.250000, 0.000000, 0.000000, 0.000000)
  4464.   33:   sample r3.xyzw, r3.xyzx, t1.xyzw, s0
  4465.   34:   add r1.xyz, r1.xzwx, l(0.500000, 0.000000, 0.000000, 0.000000)
  4466.   35:   sample r1.xyzw, r1.xyzx, t1.xyzw, s0
  4467.   36:   mov r0.w, l(1.000000)
  4468.   37:   dp4 r2.x, r2.xyzw, r0.xyzw
  4469.   38:   dp4 r2.y, r3.xyzw, r0.xyzw
  4470.   39:   dp4 r2.z, r1.xyzw, r0.xyzw
  4471.   40: else
  4472.   41:   mov r0.w, l(1.000000)
  4473.   42:   dp4 r2.x, cb0[39].xyzw, r0.xyzw
  4474.   43:   dp4 r2.y, cb0[40].xyzw, r0.xyzw
  4475.   44:   dp4 r2.z, cb0[41].xyzw, r0.xyzw
  4476.   45: endif
  4477.   46: add r1.xyz, r2.xyzx, v7.xyzx
  4478.   47: max r1.xyz, r1.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  4479.   48: log r1.xyz, r1.xyzx
  4480.   49: mul r1.xyz, r1.xyzx, l(0.416667, 0.416667, 0.416667, 0.000000)
  4481.   50: exp r1.xyz, r1.xyzx
  4482.   51: mad r1.xyz, r1.xyzx, l(1.055000, 1.055000, 1.055000, 0.000000), l(-0.055000, -0.055000, -0.055000, 0.000000)
  4483.   52: max r1.xyz, r1.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
  4484.   53: mad o2.xyz, r0.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), l(0.500000, 0.500000, 0.500000, 0.000000)
  4485.   54: mul o3.xyz, r1.xyzx, v5.xyzx
  4486.   55: mov o0.xyz, v5.xyzx
  4487.   56: mov o0.w, l(1.000000)
  4488.   57: mov o1.xyzw, l(0,0,0,0)
  4489.   58: mov o2.w, l(1.000000)
  4490.   59: mov o3.w, l(1.000000)
  4491.   60: ret
  4492. // Approximately 0 instruction slots used
  4493.  
  4494.  
  4495.  }
  4496. }
  4497. CustomEditor "ASEMaterialInspector"
  4498. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement