diff options
author | Chip Davis <cdavis@codeweavers.com> | 2020-08-28 03:24:20 +0300 |
---|---|---|
committer | Chip Davis <cdavis@codeweavers.com> | 2020-09-02 17:18:25 +0300 |
commit | 4cf840ee7b585eca51bda0baaaecf0aae168fbaa (patch) | |
tree | b657deed1b3f00347cb5f8253b981a6b992bc0af /spirv_cross_c.h | |
parent | c7507e39d471241d633f8926de04c6565ad040a0 (diff) |
MSL: Support layered input attachments.
These need to use arrayed texture types, or Metal will complain when
binding the resource. The target layer is addressed relative to the
Layer output by the vertex pipeline, or to the ViewIndex if in a
multiview pipeline. Unlike with the s/t coordinates, Vulkan does not
forbid non-zero layer coordinates here, though this cannot be expressed
in Vulkan GLSL.
Supporting 3D textures will require additional work. Part of the problem
is that Metal does not allow texture views to subset a 3D texture, so we
need some way to pass the base depth to the shader.
Diffstat (limited to 'spirv_cross_c.h')
-rw-r--r-- | spirv_cross_c.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/spirv_cross_c.h b/spirv_cross_c.h index bb199144..06d832ce 100644 --- a/spirv_cross_c.h +++ b/spirv_cross_c.h @@ -33,7 +33,7 @@ extern "C" { /* Bumped if ABI or API breaks backwards compatibility. */ #define SPVC_C_API_VERSION_MAJOR 0 /* Bumped if APIs or enumerations are added in a backwards compatible way. */ -#define SPVC_C_API_VERSION_MINOR 38 +#define SPVC_C_API_VERSION_MINOR 39 /* Bumped if internal implementation details change. */ #define SPVC_C_API_VERSION_PATCH 0 @@ -637,6 +637,7 @@ typedef enum spvc_compiler_option SPVC_COMPILER_OPTION_GLSL_FORCE_FLATTENED_IO_BLOCKS = 66 | SPVC_COMPILER_OPTION_GLSL_BIT, SPVC_COMPILER_OPTION_MSL_MULTIVIEW_LAYERED_RENDERING = 67 | SPVC_COMPILER_OPTION_MSL_BIT, + SPVC_COMPILER_OPTION_MSL_ARRAYED_SUBPASS_INPUT = 68 | SPVC_COMPILER_OPTION_MSL_BIT, SPVC_COMPILER_OPTION_INT_MAX = 0x7fffffff } spvc_compiler_option; |