Add support for GL_EXT_samplerless_texture_functions
This commit is contained in:
46
Test/samplerlessTextureFunctions.frag
Normal file
46
Test/samplerlessTextureFunctions.frag
Normal file
@@ -0,0 +1,46 @@
|
||||
#version 450 core
|
||||
|
||||
layout(binding = 1) uniform texture2D tex2D;
|
||||
layout(binding = 1) uniform texture2DMS texMS;
|
||||
layout(binding = 0) uniform textureBuffer buf;
|
||||
|
||||
void testBad()
|
||||
{
|
||||
vec4 tex2DFetch = texelFetch(tex2D, ivec2(0, 0), 0);
|
||||
vec4 texMSFetch = texelFetch(texMS, ivec2(0, 0), 0);
|
||||
|
||||
// Allowed by KHR_vulkan_glsl without the extension. All others should
|
||||
// error.
|
||||
vec4 bufFetch = texelFetch(buf, 0);
|
||||
|
||||
vec4 tex2DFetchOffset = texelFetchOffset(tex2D, ivec2(0, 0), 0, ivec2(0, 0));
|
||||
|
||||
ivec2 tex2DSize = textureSize(tex2D, 0);
|
||||
ivec2 texMSSize = textureSize(texMS);
|
||||
int bufSize = textureSize(buf);
|
||||
|
||||
int tex2DLevels = textureQueryLevels(tex2D);
|
||||
|
||||
int texMSSamples = textureSamples(texMS);
|
||||
}
|
||||
|
||||
#extension GL_EXT_samplerless_texture_functions : enable
|
||||
|
||||
void main()
|
||||
{
|
||||
// These should all succeed.
|
||||
|
||||
vec4 tex2DFetch = texelFetch(tex2D, ivec2(0, 0), 0);
|
||||
vec4 texMSFetch = texelFetch(texMS, ivec2(0, 0), 0);
|
||||
vec4 bufFetch = texelFetch(buf, 0);
|
||||
|
||||
vec4 tex2DFetchOffset = texelFetchOffset(tex2D, ivec2(0, 0), 0, ivec2(0, 0));
|
||||
|
||||
ivec2 tex2DSize = textureSize(tex2D, 0);
|
||||
ivec2 texMSSize = textureSize(texMS);
|
||||
int bufSize = textureSize(buf);
|
||||
|
||||
int tex2DLevels = textureQueryLevels(tex2D);
|
||||
|
||||
int texMSSamples = textureSamples(texMS);
|
||||
}
|
||||
Reference in New Issue
Block a user