summaryrefslogtreecommitdiffstats
path: root/source
diff options
context:
space:
mode:
Diffstat (limited to 'source')
-rw-r--r--source/slang/slang-type-layout.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/source/slang/slang-type-layout.cpp b/source/slang/slang-type-layout.cpp
index c6acf5250..98a324d96 100644
--- a/source/slang/slang-type-layout.cpp
+++ b/source/slang/slang-type-layout.cpp
@@ -1898,6 +1898,19 @@ struct MetalArgumentBufferElementLayoutRulesImpl : ObjectLayoutRulesImpl, Defaul
return SimpleLayoutInfo(LayoutResourceKind::MetalArgumentBufferElement, 1);
}
+ SimpleLayoutInfo GetVectorLayout(
+ BaseType elementType,
+ SimpleLayoutInfo elementInfo,
+ size_t elementCount) override
+ {
+ SLANG_UNUSED(elementType);
+ SLANG_UNUSED(elementInfo);
+ SLANG_UNUSED(elementCount);
+
+ // A vector occupies one [[id]] slot in a metal argument buffer.
+ return SimpleLayoutInfo(LayoutResourceKind::MetalArgumentBufferElement, 1);
+ }
+
virtual ObjectLayoutInfo GetObjectLayout(ShaderParameterKind kind, const Options& /* options */)
override
{