Signed-off-by: Zebediah Figura zfigura@codeweavers.com --- include/vkd3d_shader.h | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+)
diff --git a/include/vkd3d_shader.h b/include/vkd3d_shader.h index 45b51a5d..b677d365 100644 --- a/include/vkd3d_shader.h +++ b/include/vkd3d_shader.h @@ -54,6 +54,11 @@ enum vkd3d_shader_structure_type /** The structure is a vkd3d_shader_transform_feedback_info structure. */ VKD3D_SHADER_STRUCTURE_TYPE_TRANSFORM_FEEDBACK_INFO,
+ /** + * The structure is a vkd3d_shader_hlsl_source_info structure. + * \since 1.3 + */ + VKD3D_SHADER_STRUCTURE_TYPE_HLSL_SOURCE_INFO, /** * The structure is a vkd3d_shader_preprocess_info structure. * \since 1.3 @@ -790,6 +795,39 @@ struct vkd3d_shader_preprocess_info void *include_context; };
+/** + * A chained structure containing HLSL compilation parameters. + * + * This structure is optional. + * + * This structure extends vkd3d_shader_compile_info. + * + * This structure contains only input parameters. + * + * \since 1.3 + */ +struct vkd3d_shader_hlsl_source_info +{ + /** Must be set to VKD3D_SHADER_STRUCTURE_TYPE_HLSL_SOURCE_INFO. */ + enum vkd3d_shader_structure_type type; + /** Optional pointer to a structure containing further parameters. */ + const void *next; + + /** + * Optional pointer to a null-terminated string containing the shader entry + * point. + * + * If this parameter is NULL, vkd3d-shader uses the entry point "main". + */ + const char *entry_point; + struct vkd3d_shader_code secondary_code; + /** + * Pointer to a null-terminated string containing the target shader + * profile. + */ + const char *profile; +}; + /* root signature 1.0 */ enum vkd3d_shader_filter {