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

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

S_TRANSFORM_CONSTANT_BUFFER    1
S_TOOLS_ENABLED                0
S_MODE_FORWARD                 1
S_MODE_DEPTH                   0
S_SHADER_QUALITY               1
S_NORMAL_MAP                   1
S_SPECULAR                     1
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
[  5] TransformConstantBuffer_t        0 (00)        70 (46)
[  2] DotaGlobalParams_t               0 (00)         0 (00)
[  4] PerViewConstantBuffer_t          1 (01)        18 (12)
[  6] g_dotaGlobalDescSet              3 (03)         0 (00)   // 4
[ 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)   // 20


Dynamic (D-Param) configurations (40 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[0] VULKAN[0] //source/0
[01]      1     _     _     _     _     _     _   WRITESEQ[0] VULKAN[1] //source/1
[02]      2     _     _     _     _     _     _   WRITESEQ[0] VULKAN[2] //source/2
[03]      3     _     _     _     _     _     _   WRITESEQ[0] VULKAN[3] //source/3
[04]      4     _     _     _     _     _     _   WRITESEQ[0] VULKAN[4] //source/4
[05]      _     1     _     _     _     _     _   WRITESEQ[0] VULKAN[5] //source/5
[06]      1     1     _     _     _     _     _   WRITESEQ[0] VULKAN[6] //source/6
[07]      2     1     _     _     _     _     _   WRITESEQ[0] VULKAN[7] //source/7
[08]      3     1     _     _     _     _     _   WRITESEQ[0] VULKAN[8] //source/8
[09]      4     1     _     _     _     _     _   WRITESEQ[0] VULKAN[9] //source/9
[0A]      _     _     _     1     _     _     _   WRITESEQ[0] VULKAN[10] //source/10
[0B]      1     _     _     1     _     _     _   WRITESEQ[0] VULKAN[11] //source/11
[0C]      2     _     _     1     _     _     _   WRITESEQ[0] VULKAN[12] //source/12
[0D]      3     _     _     1     _     _     _   WRITESEQ[0] VULKAN[13] //source/13
[0E]      4     _     _     1     _     _     _   WRITESEQ[0] VULKAN[14] //source/14
[0F]      _     1     _     1     _     _     _   WRITESEQ[0] VULKAN[15] //source/15
[10]      1     1     _     1     _     _     _   WRITESEQ[0] VULKAN[16] //source/16
[11]      2     1     _     1     _     _     _   WRITESEQ[0] VULKAN[17] //source/17
[12]      3     1     _     1     _     _     _   WRITESEQ[0] VULKAN[18] //source/18
[13]      4     1     _     1     _     _     _   WRITESEQ[0] VULKAN[19] //source/19
[28]      _     _     _     _     _     1     _   WRITESEQ[0] VULKAN[20] //source/20
[29]      1     _     _     _     _     1     _   WRITESEQ[0] VULKAN[21] //source/21
[2A]      2     _     _     _     _     1     _   WRITESEQ[0] VULKAN[22] //source/22
[2B]      3     _     _     _     _     1     _   WRITESEQ[0] VULKAN[23] //source/23
[2C]      4     _     _     _     _     1     _   WRITESEQ[0] VULKAN[24] //source/24
[2D]      _     1     _     _     _     1     _   WRITESEQ[0] VULKAN[25] //source/25
[2E]      1     1     _     _     _     1     _   WRITESEQ[0] VULKAN[26] //source/26
[2F]      2     1     _     _     _     1     _   WRITESEQ[0] VULKAN[27] //source/27
[30]      3     1     _     _     _     1     _   WRITESEQ[0] VULKAN[28] //source/28
[31]      4     1     _     _     _     1     _   WRITESEQ[0] VULKAN[29] //source/29
[32]      _     _     _     1     _     1     _   WRITESEQ[0] VULKAN[30] //source/30
[33]      1     _     _     1     _     1     _   WRITESEQ[0] VULKAN[31] //source/31
[34]      2     _     _     1     _     1     _   WRITESEQ[0] VULKAN[32] //source/32
[35]      3     _     _     1     _     1     _   WRITESEQ[0] VULKAN[33] //source/33
[36]      4     _     _     1     _     1     _   WRITESEQ[0] VULKAN[34] //source/34
[37]      _     1     _     1     _     1     _   WRITESEQ[0] VULKAN[35] //source/35
[38]      1     1     _     1     _     1     _   WRITESEQ[0] VULKAN[36] //source/36
[39]      2     1     _     1     _     1     _   WRITESEQ[0] VULKAN[37] //source/37
[3A]      3     1     _     1     _     1     _   WRITESEQ[0] VULKAN[38] //source/38
[3B]      4     1     _     1     _     1     _   WRITESEQ[0] VULKAN[39] //source/39


// 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       _       _       _       _       _       _       _       _       _       _       _       _       
_       _       _       _       _       _       _       _       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     _       _       _       _       _       _       _       _       _       _       _       _       
_       _       _       _       _       _       _       _       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
40      // nr of source files
0       // values seen 0,1


End blocks
----------
28 00 00 00   // end blocks (40)

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    7976
01 00 00 00 00 00 00 00 01 00 00 00 28 1F 00 00

block-ref         2
arg0              0
source-ref        2
source-pointer    16220
02 00 00 00 00 00 00 00 02 00 00 00 5C 3F 00 00

block-ref         3
arg0              0
source-ref        3
source-pointer    25197
03 00 00 00 00 00 00 00 03 00 00 00 6D 62 00 00

block-ref         4
arg0              0
source-ref        4
source-pointer    34174
04 00 00 00 00 00 00 00 04 00 00 00 7E 85 00 00

block-ref         5
arg0              0
source-ref        5
source-pointer    43151
05 00 00 00 00 00 00 00 05 00 00 00 8F A8 00 00

block-ref         6
arg0              0
source-ref        6
source-pointer    51998
06 00 00 00 00 00 00 00 06 00 00 00 1E CB 00 00

block-ref         7
arg0              0
source-ref        7
source-pointer    61118
07 00 00 00 00 00 00 00 07 00 00 00 BE EE 00 00

block-ref         8
arg0              0
source-ref        8
source-pointer    70971
08 00 00 00 00 00 00 00 08 00 00 00 3B 15 01 00

block-ref         9
arg0              0
source-ref        9
source-pointer    80824
09 00 00 00 00 00 00 00 09 00 00 00 B8 3B 01 00

block-ref         10
arg0              0
source-ref        10
source-pointer    90677
0A 00 00 00 00 00 00 00 0A 00 00 00 35 62 01 00

block-ref         11
arg0              0
source-ref        11
source-pointer    99117
0B 00 00 00 00 00 00 00 0B 00 00 00 2D 83 01 00

block-ref         12
arg0              0
source-ref        12
source-pointer    107830
0C 00 00 00 00 00 00 00 0C 00 00 00 36 A5 01 00

block-ref         13
arg0              0
source-ref        13
source-pointer    117276
0D 00 00 00 00 00 00 00 0D 00 00 00 1C CA 01 00

block-ref         14
arg0              0
source-ref        14
source-pointer    126722
0E 00 00 00 00 00 00 00 0E 00 00 00 02 EF 01 00

block-ref         15
arg0              0
source-ref        15
source-pointer    136168
0F 00 00 00 00 00 00 00 0F 00 00 00 E8 13 02 00

block-ref         16
arg0              0
source-ref        16
source-pointer    145867
10 00 00 00 00 00 00 00 10 00 00 00 CB 39 02 00

block-ref         17
arg0              0
source-ref        17
source-pointer    155839
11 00 00 00 00 00 00 00 11 00 00 00 BF 60 02 00

block-ref         18
arg0              0
source-ref        18
source-pointer    166544
12 00 00 00 00 00 00 00 12 00 00 00 90 8A 02 00

block-ref         19
arg0              0
source-ref        19
source-pointer    177249
13 00 00 00 00 00 00 00 13 00 00 00 61 B4 02 00

block-ref         40
arg0              0
source-ref        20
source-pointer    187954
28 00 00 00 00 00 00 00 14 00 00 00 32 DE 02 00

block-ref         41
arg0              0
source-ref        21
source-pointer    196145
29 00 00 00 00 00 00 00 15 00 00 00 31 FE 02 00

block-ref         42
arg0              0
source-ref        22
source-pointer    204609
2A 00 00 00 00 00 00 00 16 00 00 00 41 1F 03 00

block-ref         43
arg0              0
source-ref        23
source-pointer    213806
2B 00 00 00 00 00 00 00 17 00 00 00 2E 43 03 00

block-ref         44
arg0              0
source-ref        24
source-pointer    223003
2C 00 00 00 00 00 00 00 18 00 00 00 1B 67 03 00

block-ref         45
arg0              0
source-ref        25
source-pointer    232200
2D 00 00 00 00 00 00 00 19 00 00 00 08 8B 03 00

block-ref         46
arg0              0
source-ref        26
source-pointer    241267
2E 00 00 00 00 00 00 00 1A 00 00 00 73 AE 03 00

block-ref         47
arg0              0
source-ref        27
source-pointer    250607
2F 00 00 00 00 00 00 00 1B 00 00 00 EF D2 03 00

block-ref         48
arg0              0
source-ref        28
source-pointer    260680
30 00 00 00 00 00 00 00 1C 00 00 00 48 FA 03 00

block-ref         49
arg0              0
source-ref        29
source-pointer    270753
31 00 00 00 00 00 00 00 1D 00 00 00 A1 21 04 00

block-ref         50
arg0              0
source-ref        30
source-pointer    280826
32 00 00 00 00 00 00 00 1E 00 00 00 FA 48 04 00

block-ref         51
arg0              0
source-ref        31
source-pointer    289486
33 00 00 00 00 00 00 00 1F 00 00 00 CE 6A 04 00

block-ref         52
arg0              0
source-ref        32
source-pointer    298419
34 00 00 00 00 00 00 00 20 00 00 00 B3 8D 04 00

block-ref         53
arg0              0
source-ref        33
source-pointer    308085
35 00 00 00 00 00 00 00 21 00 00 00 75 B3 04 00

block-ref         54
arg0              0
source-ref        34
source-pointer    317751
36 00 00 00 00 00 00 00 22 00 00 00 37 D9 04 00

block-ref         55
arg0              0
source-ref        35
source-pointer    327417
37 00 00 00 00 00 00 00 23 00 00 00 F9 FE 04 00

block-ref         56
arg0              0
source-ref        36
source-pointer    337336
38 00 00 00 00 00 00 00 24 00 00 00 B8 25 05 00

block-ref         57
arg0              0
source-ref        37
source-pointer    347528
39 00 00 00 00 00 00 00 25 00 00 00 88 4D 05 00

block-ref         58
arg0              0
source-ref        38
source-pointer    358453
3A 00 00 00 00 00 00 00 26 00 00 00 35 78 05 00

block-ref         59
arg0              0
source-ref        39
source-pointer    369378
3B 00 00 00 00 00 00 00 27 00 00 00 E2 A2 05 00