vkd3d-shader: Write SM1 semantic declarations.

Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Zebediah Figura
2021-05-10 23:36:07 -05:00
committed by Alexandre Julliard
parent 4d4aeb9bb4
commit db849f2b45
2 changed files with 145 additions and 1 deletions

View File

@@ -29,6 +29,10 @@
#define D3DSI_INSTLENGTH_SHIFT 24
#define D3DSP_DCL_USAGE_SHIFT 0
#define D3DSP_DCL_USAGEINDEX_SHIFT 16
#define D3DSP_DSTMOD_SHIFT 20
#define D3DSP_REGTYPE_SHIFT 28
#define D3DSP_REGTYPE_SHIFT2 8
#define D3DSP_REGTYPE_MASK (0x7 << D3DSP_REGTYPE_SHIFT)
@@ -43,6 +47,24 @@
#define D3DPS_VERSION(major, minor) (0xffff0000 | ((major) << 8) | (minor))
#define D3DVS_VERSION(major, minor) (0xfffe0000 | ((major) << 8) | (minor))
typedef enum _D3DDECLUSAGE
{
D3DDECLUSAGE_POSITION = 0x0,
D3DDECLUSAGE_BLENDWEIGHT = 0x1,
D3DDECLUSAGE_BLENDINDICES = 0x2,
D3DDECLUSAGE_NORMAL = 0x3,
D3DDECLUSAGE_PSIZE = 0x4,
D3DDECLUSAGE_TEXCOORD = 0x5,
D3DDECLUSAGE_TANGENT = 0x6,
D3DDECLUSAGE_BINORMAL = 0x7,
D3DDECLUSAGE_TESSFACTOR = 0x8,
D3DDECLUSAGE_POSITIONT = 0x9,
D3DDECLUSAGE_COLOR = 0xa,
D3DDECLUSAGE_FOG = 0xb,
D3DDECLUSAGE_DEPTH = 0xc,
D3DDECLUSAGE_SAMPLE = 0xd,
} D3DDECLUSAGE;
typedef enum _D3DSHADER_INSTRUCTION_OPCODE_TYPE
{
D3DSIO_NOP = 0x00,
@@ -136,6 +158,16 @@ typedef enum _D3DSHADER_INSTRUCTION_OPCODE_TYPE
D3DSIO_FORCE_DWORD = 0x7fffffff,
} D3DSHADER_INSTRUCTION_OPCODE_TYPE;
typedef enum _D3DSHADER_PARAM_DSTMOD_TYPE
{
D3DSPDM_NONE = 0 << D3DSP_DSTMOD_SHIFT,
D3DSPDM_SATURATE = 1 << D3DSP_DSTMOD_SHIFT,
D3DSPDM_PARTIALPRECISION = 2 << D3DSP_DSTMOD_SHIFT,
D3DSPDM_MSAMPCENTROID = 4 << D3DSP_DSTMOD_SHIFT,
D3DSPDM_FORCE_DWORD = 0x7fffffff,
} D3DSHADER_PARAM_DSTMOD_TYPE;
typedef enum _D3DSHADER_PARAM_REGISTER_TYPE
{
D3DSPR_TEMP = 0x00,