summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Foley <tfoley@nvidia.com>2017-07-10 10:52:30 -0700
committerTim Foley <tfoley@nvidia.com>2017-07-10 10:52:30 -0700
commitd6d49eac224a0d03c8f941deb59ee1520ff0ab5e (patch)
treee220ec5f54e5a5970a2307a87891a301d35f1546
parentb2fb0f7134de4e0b1a0db685eb1ae3c0678a33c5 (diff)
Add support for `imageBuffer`
This was mostly just a missing `typedef` in the Slang standard library code. This should also cover `textureBuffer` and `samplerBuffer`.
-rw-r--r--source/slang/emit.cpp1
-rw-r--r--source/slang/slang-stdlib.cpp1
-rw-r--r--source/slang/type-defs.h1
3 files changed, 3 insertions, 0 deletions
diff --git a/source/slang/emit.cpp b/source/slang/emit.cpp
index 1630f1c79..2791a436e 100644
--- a/source/slang/emit.cpp
+++ b/source/slang/emit.cpp
@@ -776,6 +776,7 @@ struct EmitVisitor
case TextureType::Shape2D: Emit("2D"); break;
case TextureType::Shape3D: Emit("3D"); break;
case TextureType::ShapeCube: Emit("Cube"); break;
+ case TextureType::ShapeBuffer: Emit("Buffer"); break;
default:
assert(!"unreachable");
break;
diff --git a/source/slang/slang-stdlib.cpp b/source/slang/slang-stdlib.cpp
index 23d66201a..9d6f812cd 100644
--- a/source/slang/slang-stdlib.cpp
+++ b/source/slang/slang-stdlib.cpp
@@ -1914,6 +1914,7 @@ namespace Slang
{ "2D", TextureType::Shape2D, 2 },
{ "3D", TextureType::Shape3D, 3 },
{ "Cube", TextureType::ShapeCube, 3 },
+ { "Buffer", TextureType::ShapeBuffer, 1 },
};
static const int kBaseTextureTypeCount = sizeof(kBaseTextureTypes) / sizeof(kBaseTextureTypes[0]);
diff --git a/source/slang/type-defs.h b/source/slang/type-defs.h
index a01b49277..ae64cce2e 100644
--- a/source/slang/type-defs.h
+++ b/source/slang/type-defs.h
@@ -125,6 +125,7 @@ RAW(
Shape2D = SLANG_TEXTURE_2D,
Shape3D = SLANG_TEXTURE_3D,
ShapeCube = SLANG_TEXTURE_CUBE,
+ ShapeBuffer = SLANG_TEXTURE_BUFFER,
Shape1DArray = Shape1D | ArrayFlag,
Shape2DArray = Shape2D | ArrayFlag,