summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
Diffstat (limited to 'source')
-rw-r--r--source/slang/hlsl.meta.slang20
1 files changed, 20 insertions, 0 deletions
diff --git a/source/slang/hlsl.meta.slang b/source/slang/hlsl.meta.slang
index 11470212a..e1dc8a59a 100644
--- a/source/slang/hlsl.meta.slang
+++ b/source/slang/hlsl.meta.slang
@@ -2564,6 +2564,26 @@ extension __TextureImpl<T,Shape,isArray,1,sampleCount,0,isShadow,isCombined,form
}
}
+ __subscript(vector<uint, Shape.dimensions+isArray> location) -> T
+ {
+ __glsl_extension(GL_EXT_samplerless_texture_functions)
+ [__readNone]
+ [ForceInline]
+ [require(cpp_glsl_hlsl_metal_spirv, texture_sm_4_1_samplerless)]
+ get
+ {
+ __target_switch
+ {
+ case cpp:
+ case hlsl:
+ __intrinsic_asm "($0).sample[$1]";
+ case metal:
+ case glsl:
+ case spirv:
+ return Load(location, 0);
+ }
+ }
+ }
__subscript(vector<uint, Shape.dimensions+isArray> location, int sampleIndex) -> T
{
__glsl_extension(GL_EXT_samplerless_texture_functions)