multiblend_vulkan_40_vs-ZFRAME00000018
Zframe belongs to /dota_game_vulkan_v65/multiblend_vulkan_40_vs.vcs
View byte detail //multiblend_vulkan_40_vs.vcs-ZFRAME00000018-databytes

Configuration
-------------
The static configuration this zframe belongs to (zero or more static parameters)

S_TRANSFORM_CONSTANT_BUFFER    0
S_TOOLS_ENABLED                0
S_MODE_FORWARD                 0
S_MODE_DEPTH                   0
S_SHADER_QUALITY               1
S_NORMAL_MAP                   1
S_SPECULAR                     0
S_SCROLL_WAVES                 0
S_WORLDSPACE_UVS               0
S_NO_VERTEX_COLOR              0


ZFrame Headers
--------------
VertexPaintUI4Layer                      0x5adfe5c5     09 FF FF   1
VertexPaintUIPickColor                   0x643bc8aa     09 FF FF   1
VertexPaintUILayerOrderBGRA              0xad12291a     09 FF FF   1


Parameter write sequences
-------------------------
This data (thought to be buffer write sequences) appear to be linked to the dynamic (D-param) configurations;
each configuration points to exactly one sequence. WRITESEQ[0] is always defined and considered 'default'.


WRITESEQ[0] (default)               dest        control
[ 31] g_tTransformTexture              0 (00)         0 (00)
[  0] AddressU                         0 (00)         0 (00)
[  1] AddressV                         0 (00)         0 (00)
[  3] Filter                           0 (00)         0 (00)
[  4] PerViewConstantBuffer_t          1 (01)        18 (12)
[  6] g_dotaGlobalDescSet              3 (03)         0 (00)   // 6
[ 27] g_flTexCoordScale0               0 (00)         0 (00)
[ 28] g_flTexCoordScale1               1 (01)         0 (00)
[ 29] g_flTexCoordScale2               2 (02)         0 (00)
[ 23] g_flTexCoordRotate0              3 (03)         0 (00)
[ 24] g_flTexCoordRotate1              4 (04)         0 (00)
[ 25] g_flTexCoordRotate2              5 (05)         0 (00)
[ 36] g_vTexCoordScroll0               6 (06)         0 (00)
[ 37] g_vTexCoordScroll1               8 (08)         0 (00)
[ 38] g_vTexCoordScroll2              10 (0A)         0 (00)
[ 32] g_vTexCoordOffset0              12 (0C)         0 (00)
[ 33] g_vTexCoordOffset1              14 (0E)         0 (00)
[ 34] g_vTexCoordOffset2              16 (10)         0 (00)
[ 30] g_flTexCoordScale3              18 (12)         0 (00)
[ 26] g_flTexCoordRotate3             19 (13)         0 (00)
[ 39] g_vTexCoordScroll3              20 (14)         0 (00)
[ 35] g_vTexCoordOffset3              22 (16)         0 (00)   // 22

WRITESEQ[1]                         dest        control
[ 31] g_tTransformTexture              0 (00)         0 (00)
[  3] Filter                           0 (00)         0 (00)
[  0] AddressU                         0 (00)         0 (00)
[  1] AddressV                         0 (00)         0 (00)
[  4] PerViewConstantBuffer_t          1 (01)        18 (12)
[  6] g_dotaGlobalDescSet              3 (03)         0 (00)   // 6
[ 27] g_flTexCoordScale0               0 (00)         0 (00)
[ 28] g_flTexCoordScale1               1 (01)         0 (00)
[ 29] g_flTexCoordScale2               2 (02)         0 (00)
[ 23] g_flTexCoordRotate0              3 (03)         0 (00)
[ 24] g_flTexCoordRotate1              4 (04)         0 (00)
[ 25] g_flTexCoordRotate2              5 (05)         0 (00)
[ 36] g_vTexCoordScroll0               6 (06)         0 (00)
[ 37] g_vTexCoordScroll1               8 (08)         0 (00)
[ 38] g_vTexCoordScroll2              10 (0A)         0 (00)
[ 32] g_vTexCoordOffset0              12 (0C)         0 (00)
[ 33] g_vTexCoordOffset1              14 (0E)         0 (00)
[ 34] g_vTexCoordOffset2              16 (10)         0 (00)
[ 30] g_flTexCoordScale3              18 (12)         0 (00)
[ 26] g_flTexCoordRotate3             19 (13)         0 (00)
[ 39] g_vTexCoordScroll3              20 (14)         0 (00)
[ 35] g_vTexCoordOffset3              22 (16)         0 (00)   // 22


Dynamic (D-Param) configurations (20 defined)
---------------------------------------------
Each dynamic parameters has 1 or more defined states. The disabled state (0) is shown as '_'
All permitted configurations are listed with their matching write sequence and GPU source (there is exactly
one of these for each configuration). To save space, the parameter names (original names starting with D_)
are shortened to 3-5 length strings (shown in parenthesis).

D_BLEND_WEIGHT_COUNT(bwc), D_COMPRESSED_NORMALS_AND_TANGENTS(cnat), D_SFM_LIGHTING(sfm_l), D_NORMAL_MAP(nor_m)
D_WORLDSPACE_TEXCOORDS(wor_t), D_ENABLE_USER_CLIP_PLANE(eucp), D_REDUCE_INTERPOLATORS(red_i)

        bwc  cnat sfm_l nor_m wor_t  eucp red_i
[00]      _     _     _     _     _     _     _   WRITESEQ[1] VULKAN[0] //source/0
[01]      1     _     _     _     _     _     _   WRITESEQ[1] VULKAN[1] //source/1
[02]      2     _     _     _     _     _     _   WRITESEQ[1] VULKAN[2] //source/2
[03]      3     _     _     _     _     _     _   WRITESEQ[1] VULKAN[3] //source/3
[04]      4     _     _     _     _     _     _   WRITESEQ[1] VULKAN[4] //source/4
[05]      _     1     _     _     _     _     _   WRITESEQ[1] VULKAN[5] //source/5
[06]      1     1     _     _     _     _     _   WRITESEQ[1] VULKAN[6] //source/6
[07]      2     1     _     _     _     _     _   WRITESEQ[1] VULKAN[7] //source/7
[08]      3     1     _     _     _     _     _   WRITESEQ[1] VULKAN[8] //source/8
[09]      4     1     _     _     _     _     _   WRITESEQ[1] VULKAN[9] //source/9
[0A]      _     _     _     1     _     _     _   WRITESEQ[1] VULKAN[10] //source/10
[0B]      1     _     _     1     _     _     _   WRITESEQ[1] VULKAN[11] //source/11
[0C]      2     _     _     1     _     _     _   WRITESEQ[1] VULKAN[12] //source/12
[0D]      3     _     _     1     _     _     _   WRITESEQ[1] VULKAN[13] //source/13
[0E]      4     _     _     1     _     _     _   WRITESEQ[1] VULKAN[14] //source/14
[0F]      _     1     _     1     _     _     _   WRITESEQ[1] VULKAN[15] //source/15
[10]      1     1     _     1     _     _     _   WRITESEQ[1] VULKAN[16] //source/16
[11]      2     1     _     1     _     _     _   WRITESEQ[1] VULKAN[17] //source/17
[12]      3     1     _     1     _     _     _   WRITESEQ[1] VULKAN[18] //source/18
[13]      4     1     _     1     _     _     _   WRITESEQ[1] VULKAN[19] //source/19


// configuration states (80), leading summary

0       1       2       2       2       0       1       2       2       2       3       4       5       5       5       0       
1       2       2       2       _       _       _       _       _       _       _       _       _       _       _       _       
_       _       _       _       _       _       _       _       _       _       _       _       _       _       _       _       
_       _       _       _       _       _       _       _       _       _       _       _       _       _       _       _       
_       _       _       _       _       _       _       _       _       _       _       _       _       _       _       _

// configuration states (80), trailing summary

512     512     512     512     512     512     512     512     512     512     512     512     512     512     512     512     
512     512     512     512     _       _       _       _       _       _       _       _       _       _       _       _       
_       _       _       _       _       _       _       _       _       _       _       _       _       _       _       _       
_       _       _       _       _       _       _       _       _       _       _       _       _       _       _       _       
_       _       _       _       _       _       _       _       _       _       _       _       _       _       _       _


source bytes/flags
------------------
60      // possible control byte (96) or flags (01100000)
00      // values seen (0,1,2)
00      // always 0
00      // always 0
1       // values seen 0,1
20      // nr of source files
0       // values seen 0,1


End blocks
----------
14 00 00 00   // end blocks (20)

block-ref         0
arg0              0
source-ref        0
source-pointer    5
00 00 00 00 00 00 00 00 00 00 00 00 05 00 00 00

block-ref         1
arg0              0
source-ref        1
source-pointer    7684
01 00 00 00 00 00 00 00 01 00 00 00 04 1E 00 00

block-ref         2
arg0              0
source-ref        2
source-pointer    16028
02 00 00 00 00 00 00 00 02 00 00 00 9C 3E 00 00

block-ref         3
arg0              0
source-ref        3
source-pointer    25349
03 00 00 00 00 00 00 00 03 00 00 00 05 63 00 00

block-ref         4
arg0              0
source-ref        4
source-pointer    34670
04 00 00 00 00 00 00 00 04 00 00 00 6E 87 00 00

block-ref         5
arg0              0
source-ref        5
source-pointer    43991
05 00 00 00 00 00 00 00 05 00 00 00 D7 AB 00 00

block-ref         6
arg0              0
source-ref        6
source-pointer    52546
06 00 00 00 00 00 00 00 06 00 00 00 42 CD 00 00

block-ref         7
arg0              0
source-ref        7
source-pointer    61750
07 00 00 00 00 00 00 00 07 00 00 00 36 F1 00 00

block-ref         8
arg0              0
source-ref        8
source-pointer    71931
08 00 00 00 00 00 00 00 08 00 00 00 FB 18 01 00

block-ref         9
arg0              0
source-ref        9
source-pointer    82112
09 00 00 00 00 00 00 00 09 00 00 00 C0 40 01 00

block-ref         10
arg0              0
source-ref        10
source-pointer    92293
0A 00 00 00 00 00 00 00 0A 00 00 00 85 68 01 00

block-ref         11
arg0              0
source-ref        11
source-pointer    100441
0B 00 00 00 00 00 00 00 0B 00 00 00 59 88 01 00

block-ref         12
arg0              0
source-ref        12
source-pointer    109254
0C 00 00 00 00 00 00 00 0C 00 00 00 C6 AA 01 00

block-ref         13
arg0              0
source-ref        13
source-pointer    119044
0D 00 00 00 00 00 00 00 0D 00 00 00 04 D1 01 00

block-ref         14
arg0              0
source-ref        14
source-pointer    128834
0E 00 00 00 00 00 00 00 0E 00 00 00 42 F7 01 00

block-ref         15
arg0              0
source-ref        15
source-pointer    138624
0F 00 00 00 00 00 00 00 0F 00 00 00 80 1D 02 00

block-ref         16
arg0              0
source-ref        16
source-pointer    148031
10 00 00 00 00 00 00 00 10 00 00 00 3F 42 02 00

block-ref         17
arg0              0
source-ref        17
source-pointer    158087
11 00 00 00 00 00 00 00 11 00 00 00 87 69 02 00

block-ref         18
arg0              0
source-ref        18
source-pointer    169120
12 00 00 00 00 00 00 00 12 00 00 00 A0 94 02 00

block-ref         19
arg0              0
source-ref        19
source-pointer    180153
13 00 00 00 00 00 00 00 13 00 00 00 B9 BF 02 00