From: Francisco Casas fcasas@codeweavers.com
--- libs/vkd3d-shader/hlsl.h | 9 +++++++++ 1 file changed, 9 insertions(+)
diff --git a/libs/vkd3d-shader/hlsl.h b/libs/vkd3d-shader/hlsl.h index 58ad01a5..d17163e0 100644 --- a/libs/vkd3d-shader/hlsl.h +++ b/libs/vkd3d-shader/hlsl.h @@ -177,15 +177,24 @@ struct hlsl_semantic uint32_t index; };
+/* A field within a struct type declaration. */ struct hlsl_struct_field { + /* Location of the field declaration in the HLSL shader. */ struct vkd3d_shader_location loc; + /* Data type of the field. */ struct hlsl_type *type; + /* Name of the field. */ const char *name; + + /* Semantic linked to this field, if any. */ struct hlsl_semantic semantic; + /* Bitfield for storing variable modifiers that are specific for this field */ unsigned int modifiers; + /* Offset of the field within the type it belongs to, in numeric register components. */ unsigned int reg_offset;
+ /* Offset where the fields's name starts in the output bytecode. */ size_t name_bytecode_offset; };