multiblend_vulkan_40_vs-ZFRAME00000028
Zframe belongs to /dota_game_vulkan_v65/multiblend_vulkan_40_vs.vcs
View byte detail //multiblend_vulkan_40_vs.vcs-ZFRAME00000028-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                   0
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
[ 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)
[  2] DotaGlobalParams_t               0 (00)         0 (00)
[  4] PerViewConstantBuffer_t          1 (01)        18 (12)
[  6] g_dotaGlobalDescSet              3 (03)         0 (00)   // 7
[ 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)   // 23

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)
[  2] DotaGlobalParams_t               0 (00)         0 (00)
[  4] PerViewConstantBuffer_t          1 (01)        18 (12)
[  6] g_dotaGlobalDescSet              3 (03)         0 (00)   // 7
[ 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)   // 23


Dynamic (D-Param) configurations (10 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


// configuration states (80), leading summary

0       1       2       2       2       0       1       2       2       2       _       _       _       _       _       _       
_       _       _       _       _       _       _       _       _       _       _       _       _       _       _       _       
_       _       _       _       _       _       _       _       _       _       _       _       _       _       _       _       
_       _       _       _       _       _       _       _       _       _       _       _       _       _       _       _       
_       _       _       _       _       _       _       _       _       _       _       _       _       _       _       _

// configuration states (80), trailing summary

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


End blocks
----------
0A 00 00 00   // end blocks (10)

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    8024
01 00 00 00 00 00 00 00 01 00 00 00 58 1F 00 00

block-ref         2
arg0              0
source-ref        2
source-pointer    16708
02 00 00 00 00 00 00 00 02 00 00 00 44 41 00 00

block-ref         3
arg0              0
source-ref        3
source-pointer    26369
03 00 00 00 00 00 00 00 03 00 00 00 01 67 00 00

block-ref         4
arg0              0
source-ref        4
source-pointer    36030
04 00 00 00 00 00 00 00 04 00 00 00 BE 8C 00 00

block-ref         5
arg0              0
source-ref        5
source-pointer    45691
05 00 00 00 00 00 00 00 05 00 00 00 7B B2 00 00

block-ref         6
arg0              0
source-ref        6
source-pointer    54586
06 00 00 00 00 00 00 00 06 00 00 00 3A D5 00 00

block-ref         7
arg0              0
source-ref        7
source-pointer    64130
07 00 00 00 00 00 00 00 07 00 00 00 82 FA 00 00

block-ref         8
arg0              0
source-ref        8
source-pointer    74651
08 00 00 00 00 00 00 00 08 00 00 00 9B 23 01 00

block-ref         9
arg0              0
source-ref        9
source-pointer    85172
09 00 00 00 00 00 00 00 09 00 00 00 B4 4C 01 00