X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=builtin_data%2F_builtin.glsl;h=b671f944df83da4960a5809fc4b28ab4f07839ff;hb=215d5bed27ad3de92557ae1b631695a036d29741;hp=94a7ca696c4f9d5187f15a5cd8abbc9656b5c737;hpb=91e65bc9e24a6889995081035f6f6f0a78a6c20e;p=libs%2Fgl.git diff --git a/builtin_data/_builtin.glsl b/builtin_data/_builtin.glsl index 94a7ca69..b671f944 100644 --- a/builtin_data/_builtin.glsl +++ b/builtin_data/_builtin.glsl @@ -39,6 +39,10 @@ typedef image(dimensions=1[], shadow, sampled) float sampler1DArrayShadow; typedef image(dimensions=2[], shadow, sampled) float sampler2DArrayShadow; typedef image(dimensions=cube, shadow, sampled) float samplerCubeShadow; typedef image(dimensions=cube[], shadow, sampled) float samplerCubeArrayShadow; +typedef image(dimensions=2, sampled, multisample) float sampler2DMS; +typedef image(dimensions=2[], sampled, multisample) float sampler2DMSArray; + +const float PI = 3.1415926535; // BEGIN BUILTIN FUNCTIONS float radians(float degrees); @@ -471,6 +475,36 @@ ivec2 textureSize(samplerCubeShadow sampler, int lod); ivec2 textureSize(sampler1DArrayShadow sampler, int lod); ivec3 textureSize(sampler2DArrayShadow sampler, int lod); ivec3 textureSize(samplerCubeArrayShadow sampler, int lod); +ivec2 textureSize(sampler2DMS sampler, int lod); +ivec3 textureSize(sampler2DMSArray sampler, int lod); +vec2 textureQueryLod(sampler1D sampler, float P); +vec2 textureQueryLod(sampler2D sampler, vec2 P); +vec2 textureQueryLod(sampler3D sampler, vec3 P); +vec2 textureQueryLod(sampler1DArray sampler, float P); +vec2 textureQueryLod(sampler2DArray sampler, vec2 P); +vec2 textureQueryLod(samplerCube sampler, vec3 P); +vec2 textureQueryLod(samplerCubeArray sampler, vec3 P); +vec2 textureQueryLod(sampler1DShadow sampler, float P); +vec2 textureQueryLod(sampler2DShadow sampler, vec2 P); +vec2 textureQueryLod(samplerCubeShadow sampler, vec3 P); +vec2 textureQueryLod(sampler1DArrayShadow sampler, float P); +vec2 textureQueryLod(sampler2DArrayShadow sampler, vec2 P); +vec2 textureQueryLod(samplerCubeArrayShadow sampler, vec3 P); +int textureQueryLevels(sampler1D sampler); +int textureQueryLevels(sampler2D sampler); +int textureQueryLevels(sampler3D sampler); +int textureQueryLevels(sampler1DArray sampler); +int textureQueryLevels(sampler2DArray sampler); +int textureQueryLevels(samplerCube sampler); +int textureQueryLevels(samplerCubeArray sampler); +int textureQueryLevels(sampler1DShadow sampler); +int textureQueryLevels(sampler2DShadow sampler); +int textureQueryLevels(samplerCubeShadow sampler); +int textureQueryLevels(sampler1DArrayShadow sampler); +int textureQueryLevels(sampler2DArrayShadow sampler); +int textureQueryLevels(samplerCubeArrayShadow sampler); +int textureSamples(sampler2DMS sampler); +int textureSamples(sampler2DMSArray sampler); vec4 texture(sampler1D sampler, float P); vec4 texture(sampler2D sampler, vec2 P); vec4 texture(sampler3D sampler, vec3 P); @@ -496,6 +530,8 @@ vec4 texelFetch(sampler2D sampler, ivec2 P, int lod); vec4 texelFetch(sampler3D sampler, ivec3 P, int lod); vec4 texelFetch(sampler1DArray sampler, ivec2 P, int lod); vec4 texelFetch(sampler2DArray sampler, ivec3 P, int lod); +vec4 texelFetch(sampler2DMS sampler, ivec2 P, int sample); +vec4 texelFetch(sampler2DMSArray sampler, ivec3 P, int sample); // END BUILTIN FUNCTIONS #pragma MSP stage(vertex)