Full stack: implement textureQueryLod(*) and textureQueryLevels(*).
This commit is contained in:
parent
ef0118b26e
commit
2398b3a458
@ -126,3 +126,17 @@ layout(location=27, index=0) in vec4 indexIn; // ERROR, not on in
|
|||||||
layout(location=0, index=0) in; // ERROR, not just on in
|
layout(location=0, index=0) in; // ERROR, not just on in
|
||||||
layout(location=0, index=0) out; // ERROR, need a variable
|
layout(location=0, index=0) out; // ERROR, need a variable
|
||||||
layout(location=26, index=0) out indexBlock { int a; } indexBlockI; // ERROR, not on a block
|
layout(location=26, index=0) out indexBlock { int a; } indexBlockI; // ERROR, not on a block
|
||||||
|
|
||||||
|
uniform sampler1D samp1D;
|
||||||
|
uniform sampler2DShadow samp2Ds;
|
||||||
|
|
||||||
|
void qlod()
|
||||||
|
{
|
||||||
|
vec2 lod;
|
||||||
|
float pf;
|
||||||
|
vec2 pf2;
|
||||||
|
vec3 pf3;
|
||||||
|
|
||||||
|
lod = textureQueryLod(samp1D, pf); // ERROR, not until 400
|
||||||
|
lod = textureQueryLod(samp2Ds, pf2); // ERROR, not until 400
|
||||||
|
}
|
||||||
|
@ -139,3 +139,47 @@ void interp()
|
|||||||
interpolateAtCentroid(f); // ERROR, not interpolant
|
interpolateAtCentroid(f); // ERROR, not interpolant
|
||||||
interpolateAtSample(outp, 0); // ERROR, not interpolant
|
interpolateAtSample(outp, 0); // ERROR, not interpolant
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uniform sampler1D samp1D;
|
||||||
|
uniform isampler2D isamp2D;
|
||||||
|
uniform usampler3D usamp3D;
|
||||||
|
uniform samplerCube sampCube;
|
||||||
|
uniform isampler1DArray isamp1DA;
|
||||||
|
uniform usampler2DArray usamp2DA;
|
||||||
|
uniform isamplerCubeArray isampCubeA;
|
||||||
|
|
||||||
|
uniform sampler1DShadow samp1Ds;
|
||||||
|
uniform sampler2DShadow samp2Ds;
|
||||||
|
uniform samplerCubeShadow sampCubes;
|
||||||
|
uniform sampler1DArrayShadow samp1DAs;
|
||||||
|
uniform sampler2DArrayShadow samp2DAs;
|
||||||
|
uniform samplerCubeArrayShadow sampCubeAs;
|
||||||
|
|
||||||
|
uniform samplerBuffer sampBuf;
|
||||||
|
uniform sampler2DRect sampRect;
|
||||||
|
|
||||||
|
void qlod()
|
||||||
|
{
|
||||||
|
vec2 lod;
|
||||||
|
float pf;
|
||||||
|
vec2 pf2;
|
||||||
|
vec3 pf3;
|
||||||
|
|
||||||
|
lod = textureQueryLod(samp1D, pf);
|
||||||
|
lod = textureQueryLod(isamp2D, pf2);
|
||||||
|
lod = textureQueryLod(usamp3D, pf3);
|
||||||
|
lod = textureQueryLod(sampCube, pf3);
|
||||||
|
lod = textureQueryLod(isamp1DA, pf);
|
||||||
|
lod = textureQueryLod(usamp2DA, pf2);
|
||||||
|
lod = textureQueryLod(isampCubeA, pf3);
|
||||||
|
|
||||||
|
lod = textureQueryLod(samp1Ds, pf);
|
||||||
|
lod = textureQueryLod(samp2Ds, pf2);
|
||||||
|
lod = textureQueryLod(sampCubes, pf3);
|
||||||
|
lod = textureQueryLod(samp1DAs, pf);
|
||||||
|
lod = textureQueryLod(samp2DAs, pf2);
|
||||||
|
lod = textureQueryLod(sampCubeAs, pf3);
|
||||||
|
|
||||||
|
lod = textureQueryLod(sampBuf, pf); // ERROR
|
||||||
|
lod = textureQueryLod(sampRect, pf2); // ERROR
|
||||||
|
}
|
||||||
|
@ -101,3 +101,17 @@ void bits()
|
|||||||
}
|
}
|
||||||
|
|
||||||
layout(location = 7, index = 1) out vec4 indexedOut;
|
layout(location = 7, index = 1) out vec4 indexedOut;
|
||||||
|
|
||||||
|
uniform sampler1D samp1D;
|
||||||
|
uniform sampler2DShadow samp2Ds;
|
||||||
|
|
||||||
|
void qlod()
|
||||||
|
{
|
||||||
|
vec2 lod;
|
||||||
|
float pf;
|
||||||
|
vec2 pf2;
|
||||||
|
vec3 pf3;
|
||||||
|
|
||||||
|
lod = textureQueryLod(samp1D, pf); // ERROR, only in fragment
|
||||||
|
lod = textureQueryLod(samp2Ds, pf2); // ERROR, only in fragment
|
||||||
|
}
|
||||||
|
@ -146,3 +146,14 @@ layout(r8ui) uniform iimage2D i6bad; // ERROR, type mismatch
|
|||||||
uniform offcheck {
|
uniform offcheck {
|
||||||
layout(offset = 16) int foo; // ERROR
|
layout(offset = 16) int foo; // ERROR
|
||||||
} offcheckI;
|
} offcheckI;
|
||||||
|
|
||||||
|
uniform sampler1D samp1D;
|
||||||
|
uniform sampler1DShadow samp1Ds;
|
||||||
|
|
||||||
|
void qlod()
|
||||||
|
{
|
||||||
|
int levels;
|
||||||
|
|
||||||
|
levels = textureQueryLevels(samp1D); // ERROR, not until 430
|
||||||
|
levels = textureQueryLevels(samp1Ds); // ERROR, not until 430
|
||||||
|
}
|
@ -180,3 +180,44 @@ void fooq2()
|
|||||||
s += imageSamples(ii2dms);
|
s += imageSamples(ii2dms);
|
||||||
s += imageSamples(i2dmsa);
|
s += imageSamples(i2dmsa);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
uniform sampler1D samp1D;
|
||||||
|
uniform usampler2D usamp2D;
|
||||||
|
uniform isampler3D isamp3D;
|
||||||
|
uniform isamplerCube isampCube;
|
||||||
|
uniform isampler1DArray isamp1DA;
|
||||||
|
uniform sampler2DArray samp2DA;
|
||||||
|
uniform usamplerCubeArray usampCubeA;
|
||||||
|
|
||||||
|
uniform sampler1DShadow samp1Ds;
|
||||||
|
uniform sampler2DShadow samp2Ds;
|
||||||
|
uniform samplerCubeShadow sampCubes;
|
||||||
|
uniform sampler1DArrayShadow samp1DAs;
|
||||||
|
uniform sampler2DArrayShadow samp2DAs;
|
||||||
|
uniform samplerCubeArrayShadow sampCubeAs;
|
||||||
|
|
||||||
|
uniform samplerBuffer sampBuf;
|
||||||
|
uniform sampler2DRect sampRect;
|
||||||
|
|
||||||
|
void qlod()
|
||||||
|
{
|
||||||
|
int levels;
|
||||||
|
|
||||||
|
levels = textureQueryLevels(samp1D);
|
||||||
|
levels = textureQueryLevels(usamp2D);
|
||||||
|
levels = textureQueryLevels(isamp3D);
|
||||||
|
levels = textureQueryLevels(isampCube);
|
||||||
|
levels = textureQueryLevels(isamp1DA);
|
||||||
|
levels = textureQueryLevels(samp2DA);
|
||||||
|
levels = textureQueryLevels(usampCubeA);
|
||||||
|
|
||||||
|
levels = textureQueryLevels(samp1Ds);
|
||||||
|
levels = textureQueryLevels(samp2Ds);
|
||||||
|
levels = textureQueryLevels(sampCubes);
|
||||||
|
levels = textureQueryLevels(samp1DAs);
|
||||||
|
levels = textureQueryLevels(samp2DAs);
|
||||||
|
levels = textureQueryLevels(sampCubeAs);
|
||||||
|
|
||||||
|
levels = textureQueryLevels(sampBuf); // ERROR
|
||||||
|
levels = textureQueryLevels(sampRect); // ERROR
|
||||||
|
}
|
||||||
|
@ -33,7 +33,11 @@ ERROR: 0:126: 'index' : can only be used on an output
|
|||||||
ERROR: 0:126: 'location/component/index' : cannot declare a default, use a full declaration
|
ERROR: 0:126: 'location/component/index' : cannot declare a default, use a full declaration
|
||||||
ERROR: 0:127: 'location/component/index' : cannot declare a default, use a full declaration
|
ERROR: 0:127: 'location/component/index' : cannot declare a default, use a full declaration
|
||||||
ERROR: 0:128: 'output block' : not supported in this stage: fragment
|
ERROR: 0:128: 'output block' : not supported in this stage: fragment
|
||||||
ERROR: 34 compilation errors. No code generated.
|
ERROR: 0:140: 'textureQueryLod' : no matching overloaded function found
|
||||||
|
ERROR: 0:140: 'assign' : cannot convert from 'const float' to 'temp 2-component vector of float'
|
||||||
|
ERROR: 0:141: 'textureQueryLod' : no matching overloaded function found
|
||||||
|
ERROR: 0:141: 'assign' : cannot convert from 'const float' to 'temp 2-component vector of float'
|
||||||
|
ERROR: 38 compilation errors. No code generated.
|
||||||
|
|
||||||
|
|
||||||
Shader version: 330
|
Shader version: 330
|
||||||
@ -70,6 +74,11 @@ ERROR: node is still EOpNull!
|
|||||||
0:24 move second child to first child (temp 4-component vector of float)
|
0:24 move second child to first child (temp 4-component vector of float)
|
||||||
0:24 'outVar' (layout(location=0 index=0 ) out 4-component vector of float)
|
0:24 'outVar' (layout(location=0 index=0 ) out 4-component vector of float)
|
||||||
0:24 'inVar' (smooth in 4-component vector of float)
|
0:24 'inVar' (smooth in 4-component vector of float)
|
||||||
|
0:133 Function Definition: qlod( (global void)
|
||||||
|
0:133 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:140 'lod' (temp 2-component vector of float)
|
||||||
|
0:141 'lod' (temp 2-component vector of float)
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'inVar' (smooth in 4-component vector of float)
|
0:? 'inVar' (smooth in 4-component vector of float)
|
||||||
0:? 'outVar' (layout(location=0 index=0 ) out 4-component vector of float)
|
0:? 'outVar' (layout(location=0 index=0 ) out 4-component vector of float)
|
||||||
@ -102,6 +111,8 @@ ERROR: node is still EOpNull!
|
|||||||
0:? 'outVar4' (layout(location=0 index=1 ) out 4-component vector of float)
|
0:? 'outVar4' (layout(location=0 index=1 ) out 4-component vector of float)
|
||||||
0:? 'indexIn' (layout(location=27 index=0 ) smooth in 4-component vector of float)
|
0:? 'indexIn' (layout(location=27 index=0 ) smooth in 4-component vector of float)
|
||||||
0:? 'indexBlockI' (layout(location=26 index=0 ) out block{out int a})
|
0:? 'indexBlockI' (layout(location=26 index=0 ) out block{out int a})
|
||||||
|
0:? 'samp1D' (uniform sampler1D)
|
||||||
|
0:? 'samp2Ds' (uniform sampler2DShadow)
|
||||||
|
|
||||||
|
|
||||||
Linked fragment stage:
|
Linked fragment stage:
|
||||||
@ -143,6 +154,11 @@ ERROR: node is still EOpNull!
|
|||||||
0:24 move second child to first child (temp 4-component vector of float)
|
0:24 move second child to first child (temp 4-component vector of float)
|
||||||
0:24 'outVar' (layout(location=0 index=0 ) out 4-component vector of float)
|
0:24 'outVar' (layout(location=0 index=0 ) out 4-component vector of float)
|
||||||
0:24 'inVar' (smooth in 4-component vector of float)
|
0:24 'inVar' (smooth in 4-component vector of float)
|
||||||
|
0:133 Function Definition: qlod( (global void)
|
||||||
|
0:133 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:140 'lod' (temp 2-component vector of float)
|
||||||
|
0:141 'lod' (temp 2-component vector of float)
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'inVar' (smooth in 4-component vector of float)
|
0:? 'inVar' (smooth in 4-component vector of float)
|
||||||
0:? 'outVar' (layout(location=0 index=0 ) out 4-component vector of float)
|
0:? 'outVar' (layout(location=0 index=0 ) out 4-component vector of float)
|
||||||
@ -175,4 +191,6 @@ ERROR: node is still EOpNull!
|
|||||||
0:? 'outVar4' (layout(location=0 index=1 ) out 4-component vector of float)
|
0:? 'outVar4' (layout(location=0 index=1 ) out 4-component vector of float)
|
||||||
0:? 'indexIn' (layout(location=27 index=0 ) smooth in 4-component vector of float)
|
0:? 'indexIn' (layout(location=27 index=0 ) smooth in 4-component vector of float)
|
||||||
0:? 'indexBlockI' (layout(location=26 index=0 ) out block{out int a})
|
0:? 'indexBlockI' (layout(location=26 index=0 ) out block{out int a})
|
||||||
|
0:? 'samp1D' (uniform sampler1D)
|
||||||
|
0:? 'samp2Ds' (uniform sampler2DShadow)
|
||||||
|
|
||||||
|
@ -30,7 +30,11 @@ ERROR: 0:135: 'interpolateAtOffset' : first argument must be an interpolant, or
|
|||||||
ERROR: 0:136: 'interpolateAtOffset' : first argument must be an interpolant, or interpolant-array element
|
ERROR: 0:136: 'interpolateAtOffset' : first argument must be an interpolant, or interpolant-array element
|
||||||
ERROR: 0:139: 'interpolateAtCentroid' : first argument must be an interpolant, or interpolant-array element
|
ERROR: 0:139: 'interpolateAtCentroid' : first argument must be an interpolant, or interpolant-array element
|
||||||
ERROR: 0:140: 'interpolateAtSample' : first argument must be an interpolant, or interpolant-array element
|
ERROR: 0:140: 'interpolateAtSample' : first argument must be an interpolant, or interpolant-array element
|
||||||
ERROR: 30 compilation errors. No code generated.
|
ERROR: 0:183: 'textureQueryLod' : no matching overloaded function found
|
||||||
|
ERROR: 0:183: 'assign' : cannot convert from 'const float' to 'temp 2-component vector of float'
|
||||||
|
ERROR: 0:184: 'textureQueryLod' : no matching overloaded function found
|
||||||
|
ERROR: 0:184: 'assign' : cannot convert from 'const float' to 'temp 2-component vector of float'
|
||||||
|
ERROR: 34 compilation errors. No code generated.
|
||||||
|
|
||||||
|
|
||||||
Shader version: 400
|
Shader version: 400
|
||||||
@ -402,6 +406,76 @@ ERROR: node is still EOpNull!
|
|||||||
0:140 'outp' (out 4-component vector of float)
|
0:140 'outp' (out 4-component vector of float)
|
||||||
0:140 Constant:
|
0:140 Constant:
|
||||||
0:140 0 (const int)
|
0:140 0 (const int)
|
||||||
|
0:161 Function Definition: qlod( (global void)
|
||||||
|
0:161 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:168 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:168 'lod' (temp 2-component vector of float)
|
||||||
|
0:168 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:168 'samp1D' (uniform sampler1D)
|
||||||
|
0:168 'pf' (temp float)
|
||||||
|
0:169 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:169 'lod' (temp 2-component vector of float)
|
||||||
|
0:169 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:169 'isamp2D' (uniform isampler2D)
|
||||||
|
0:169 'pf2' (temp 2-component vector of float)
|
||||||
|
0:170 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:170 'lod' (temp 2-component vector of float)
|
||||||
|
0:170 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:170 'usamp3D' (uniform usampler3D)
|
||||||
|
0:170 'pf3' (temp 3-component vector of float)
|
||||||
|
0:171 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:171 'lod' (temp 2-component vector of float)
|
||||||
|
0:171 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:171 'sampCube' (uniform samplerCube)
|
||||||
|
0:171 'pf3' (temp 3-component vector of float)
|
||||||
|
0:172 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:172 'lod' (temp 2-component vector of float)
|
||||||
|
0:172 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:172 'isamp1DA' (uniform isampler1DArray)
|
||||||
|
0:172 'pf' (temp float)
|
||||||
|
0:173 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:173 'lod' (temp 2-component vector of float)
|
||||||
|
0:173 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:173 'usamp2DA' (uniform usampler2DArray)
|
||||||
|
0:173 'pf2' (temp 2-component vector of float)
|
||||||
|
0:174 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:174 'lod' (temp 2-component vector of float)
|
||||||
|
0:174 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:174 'isampCubeA' (uniform isamplerCubeArray)
|
||||||
|
0:174 'pf3' (temp 3-component vector of float)
|
||||||
|
0:176 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:176 'lod' (temp 2-component vector of float)
|
||||||
|
0:176 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:176 'samp1Ds' (uniform sampler1DShadow)
|
||||||
|
0:176 'pf' (temp float)
|
||||||
|
0:177 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:177 'lod' (temp 2-component vector of float)
|
||||||
|
0:177 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:177 'samp2Ds' (uniform sampler2DShadow)
|
||||||
|
0:177 'pf2' (temp 2-component vector of float)
|
||||||
|
0:178 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:178 'lod' (temp 2-component vector of float)
|
||||||
|
0:178 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:178 'sampCubes' (uniform samplerCubeShadow)
|
||||||
|
0:178 'pf3' (temp 3-component vector of float)
|
||||||
|
0:179 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:179 'lod' (temp 2-component vector of float)
|
||||||
|
0:179 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:179 'samp1DAs' (uniform sampler1DArrayShadow)
|
||||||
|
0:179 'pf' (temp float)
|
||||||
|
0:180 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:180 'lod' (temp 2-component vector of float)
|
||||||
|
0:180 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:180 'samp2DAs' (uniform sampler2DArrayShadow)
|
||||||
|
0:180 'pf2' (temp 2-component vector of float)
|
||||||
|
0:181 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:181 'lod' (temp 2-component vector of float)
|
||||||
|
0:181 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:181 'sampCubeAs' (uniform samplerCubeArrayShadow)
|
||||||
|
0:181 'pf3' (temp 3-component vector of float)
|
||||||
|
0:183 'lod' (temp 2-component vector of float)
|
||||||
|
0:184 'lod' (temp 2-component vector of float)
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'c2D' (smooth in 2-component vector of float)
|
0:? 'c2D' (smooth in 2-component vector of float)
|
||||||
0:? 'i' (flat in int)
|
0:? 'i' (flat in int)
|
||||||
@ -432,6 +506,21 @@ ERROR: node is still EOpNull!
|
|||||||
0:? 'colorfc' (centroid flat in 2-component vector of float)
|
0:? 'colorfc' (centroid flat in 2-component vector of float)
|
||||||
0:? 's1' (smooth in structure{global float x})
|
0:? 's1' (smooth in structure{global float x})
|
||||||
0:? 's2' (sample temp structure{global float x})
|
0:? 's2' (sample temp structure{global float x})
|
||||||
|
0:? 'samp1D' (uniform sampler1D)
|
||||||
|
0:? 'isamp2D' (uniform isampler2D)
|
||||||
|
0:? 'usamp3D' (uniform usampler3D)
|
||||||
|
0:? 'sampCube' (uniform samplerCube)
|
||||||
|
0:? 'isamp1DA' (uniform isampler1DArray)
|
||||||
|
0:? 'usamp2DA' (uniform usampler2DArray)
|
||||||
|
0:? 'isampCubeA' (uniform isamplerCubeArray)
|
||||||
|
0:? 'samp1Ds' (uniform sampler1DShadow)
|
||||||
|
0:? 'samp2Ds' (uniform sampler2DShadow)
|
||||||
|
0:? 'sampCubes' (uniform samplerCubeShadow)
|
||||||
|
0:? 'samp1DAs' (uniform sampler1DArrayShadow)
|
||||||
|
0:? 'samp2DAs' (uniform sampler2DArrayShadow)
|
||||||
|
0:? 'sampCubeAs' (uniform samplerCubeArrayShadow)
|
||||||
|
0:? 'sampBuf' (uniform samplerBuffer)
|
||||||
|
0:? 'sampRect' (uniform sampler2DRect)
|
||||||
|
|
||||||
|
|
||||||
Linked fragment stage:
|
Linked fragment stage:
|
||||||
@ -806,6 +895,76 @@ ERROR: node is still EOpNull!
|
|||||||
0:140 'outp' (out 4-component vector of float)
|
0:140 'outp' (out 4-component vector of float)
|
||||||
0:140 Constant:
|
0:140 Constant:
|
||||||
0:140 0 (const int)
|
0:140 0 (const int)
|
||||||
|
0:161 Function Definition: qlod( (global void)
|
||||||
|
0:161 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:168 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:168 'lod' (temp 2-component vector of float)
|
||||||
|
0:168 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:168 'samp1D' (uniform sampler1D)
|
||||||
|
0:168 'pf' (temp float)
|
||||||
|
0:169 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:169 'lod' (temp 2-component vector of float)
|
||||||
|
0:169 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:169 'isamp2D' (uniform isampler2D)
|
||||||
|
0:169 'pf2' (temp 2-component vector of float)
|
||||||
|
0:170 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:170 'lod' (temp 2-component vector of float)
|
||||||
|
0:170 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:170 'usamp3D' (uniform usampler3D)
|
||||||
|
0:170 'pf3' (temp 3-component vector of float)
|
||||||
|
0:171 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:171 'lod' (temp 2-component vector of float)
|
||||||
|
0:171 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:171 'sampCube' (uniform samplerCube)
|
||||||
|
0:171 'pf3' (temp 3-component vector of float)
|
||||||
|
0:172 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:172 'lod' (temp 2-component vector of float)
|
||||||
|
0:172 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:172 'isamp1DA' (uniform isampler1DArray)
|
||||||
|
0:172 'pf' (temp float)
|
||||||
|
0:173 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:173 'lod' (temp 2-component vector of float)
|
||||||
|
0:173 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:173 'usamp2DA' (uniform usampler2DArray)
|
||||||
|
0:173 'pf2' (temp 2-component vector of float)
|
||||||
|
0:174 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:174 'lod' (temp 2-component vector of float)
|
||||||
|
0:174 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:174 'isampCubeA' (uniform isamplerCubeArray)
|
||||||
|
0:174 'pf3' (temp 3-component vector of float)
|
||||||
|
0:176 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:176 'lod' (temp 2-component vector of float)
|
||||||
|
0:176 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:176 'samp1Ds' (uniform sampler1DShadow)
|
||||||
|
0:176 'pf' (temp float)
|
||||||
|
0:177 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:177 'lod' (temp 2-component vector of float)
|
||||||
|
0:177 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:177 'samp2Ds' (uniform sampler2DShadow)
|
||||||
|
0:177 'pf2' (temp 2-component vector of float)
|
||||||
|
0:178 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:178 'lod' (temp 2-component vector of float)
|
||||||
|
0:178 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:178 'sampCubes' (uniform samplerCubeShadow)
|
||||||
|
0:178 'pf3' (temp 3-component vector of float)
|
||||||
|
0:179 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:179 'lod' (temp 2-component vector of float)
|
||||||
|
0:179 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:179 'samp1DAs' (uniform sampler1DArrayShadow)
|
||||||
|
0:179 'pf' (temp float)
|
||||||
|
0:180 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:180 'lod' (temp 2-component vector of float)
|
||||||
|
0:180 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:180 'samp2DAs' (uniform sampler2DArrayShadow)
|
||||||
|
0:180 'pf2' (temp 2-component vector of float)
|
||||||
|
0:181 move second child to first child (temp 2-component vector of float)
|
||||||
|
0:181 'lod' (temp 2-component vector of float)
|
||||||
|
0:181 textureQueryLod (global 2-component vector of float)
|
||||||
|
0:181 'sampCubeAs' (uniform samplerCubeArrayShadow)
|
||||||
|
0:181 'pf3' (temp 3-component vector of float)
|
||||||
|
0:183 'lod' (temp 2-component vector of float)
|
||||||
|
0:184 'lod' (temp 2-component vector of float)
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'c2D' (smooth in 2-component vector of float)
|
0:? 'c2D' (smooth in 2-component vector of float)
|
||||||
0:? 'i' (flat in int)
|
0:? 'i' (flat in int)
|
||||||
@ -836,4 +995,19 @@ ERROR: node is still EOpNull!
|
|||||||
0:? 'colorfc' (centroid flat in 2-component vector of float)
|
0:? 'colorfc' (centroid flat in 2-component vector of float)
|
||||||
0:? 's1' (smooth in structure{global float x})
|
0:? 's1' (smooth in structure{global float x})
|
||||||
0:? 's2' (sample temp structure{global float x})
|
0:? 's2' (sample temp structure{global float x})
|
||||||
|
0:? 'samp1D' (uniform sampler1D)
|
||||||
|
0:? 'isamp2D' (uniform isampler2D)
|
||||||
|
0:? 'usamp3D' (uniform usampler3D)
|
||||||
|
0:? 'sampCube' (uniform samplerCube)
|
||||||
|
0:? 'isamp1DA' (uniform isampler1DArray)
|
||||||
|
0:? 'usamp2DA' (uniform usampler2DArray)
|
||||||
|
0:? 'isampCubeA' (uniform isamplerCubeArray)
|
||||||
|
0:? 'samp1Ds' (uniform sampler1DShadow)
|
||||||
|
0:? 'samp2Ds' (uniform sampler2DShadow)
|
||||||
|
0:? 'sampCubes' (uniform samplerCubeShadow)
|
||||||
|
0:? 'samp1DAs' (uniform sampler1DArrayShadow)
|
||||||
|
0:? 'samp2DAs' (uniform sampler2DArrayShadow)
|
||||||
|
0:? 'sampCubeAs' (uniform samplerCubeArrayShadow)
|
||||||
|
0:? 'sampBuf' (uniform samplerBuffer)
|
||||||
|
0:? 'sampRect' (uniform sampler2DRect)
|
||||||
|
|
||||||
|
@ -19,7 +19,11 @@ ERROR: 0:65: 'invocations' : can only apply to 'in'
|
|||||||
ERROR: 0:67: 'in' : type must be an array: inbls
|
ERROR: 0:67: 'in' : type must be an array: inbls
|
||||||
ERROR: 0:71: 'triangles' : inconsistent input primitive for array size of inbla
|
ERROR: 0:71: 'triangles' : inconsistent input primitive for array size of inbla
|
||||||
ERROR: 0:103: 'index' : there is no such layout identifier for this stage taking an assigned value
|
ERROR: 0:103: 'index' : there is no such layout identifier for this stage taking an assigned value
|
||||||
ERROR: 19 compilation errors. No code generated.
|
ERROR: 0:115: 'textureQueryLod' : no matching overloaded function found
|
||||||
|
ERROR: 0:115: 'assign' : cannot convert from 'const float' to 'temp 2-component vector of float'
|
||||||
|
ERROR: 0:116: 'textureQueryLod' : no matching overloaded function found
|
||||||
|
ERROR: 0:116: 'assign' : cannot convert from 'const float' to 'temp 2-component vector of float'
|
||||||
|
ERROR: 23 compilation errors. No code generated.
|
||||||
|
|
||||||
|
|
||||||
Shader version: 400
|
Shader version: 400
|
||||||
@ -165,6 +169,11 @@ ERROR: node is still EOpNull!
|
|||||||
0:100 'i2' (temp 2-component vector of int)
|
0:100 'i2' (temp 2-component vector of int)
|
||||||
0:100 findMSB (global 2-component vector of int)
|
0:100 findMSB (global 2-component vector of int)
|
||||||
0:100 'u2' (temp 2-component vector of uint)
|
0:100 'u2' (temp 2-component vector of uint)
|
||||||
|
0:108 Function Definition: qlod( (global void)
|
||||||
|
0:108 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:115 'lod' (temp 2-component vector of float)
|
||||||
|
0:116 'lod' (temp 2-component vector of float)
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'bn' (in 3-element array of block{in int a})
|
0:? 'bn' (in 3-element array of block{in int a})
|
||||||
0:? 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize})
|
0:? 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize})
|
||||||
@ -182,6 +191,8 @@ ERROR: node is still EOpNull!
|
|||||||
0:? 'inbls' (in block{in int a})
|
0:? 'inbls' (in block{in int a})
|
||||||
0:? 'inbla' (in 17-element array of block{in int a})
|
0:? 'inbla' (in 17-element array of block{in int a})
|
||||||
0:? 'indexedOut' (layout(location=7 stream=0 ) out 4-component vector of float)
|
0:? 'indexedOut' (layout(location=7 stream=0 ) out 4-component vector of float)
|
||||||
|
0:? 'samp1D' (uniform sampler1D)
|
||||||
|
0:? 'samp2Ds' (uniform sampler2DShadow)
|
||||||
|
|
||||||
|
|
||||||
Linked geometry stage:
|
Linked geometry stage:
|
||||||
@ -331,6 +342,11 @@ ERROR: node is still EOpNull!
|
|||||||
0:100 'i2' (temp 2-component vector of int)
|
0:100 'i2' (temp 2-component vector of int)
|
||||||
0:100 findMSB (global 2-component vector of int)
|
0:100 findMSB (global 2-component vector of int)
|
||||||
0:100 'u2' (temp 2-component vector of uint)
|
0:100 'u2' (temp 2-component vector of uint)
|
||||||
|
0:108 Function Definition: qlod( (global void)
|
||||||
|
0:108 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:115 'lod' (temp 2-component vector of float)
|
||||||
|
0:116 'lod' (temp 2-component vector of float)
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'bn' (in 3-element array of block{in int a})
|
0:? 'bn' (in 3-element array of block{in int a})
|
||||||
0:? 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize})
|
0:? 'gl_in' (in 3-element array of block{in 4-component vector of float Position gl_Position, in float PointSize gl_PointSize})
|
||||||
@ -348,4 +364,6 @@ ERROR: node is still EOpNull!
|
|||||||
0:? 'inbls' (in block{in int a})
|
0:? 'inbls' (in block{in int a})
|
||||||
0:? 'inbla' (in 17-element array of block{in int a})
|
0:? 'inbla' (in 17-element array of block{in int a})
|
||||||
0:? 'indexedOut' (layout(location=7 stream=0 ) out 4-component vector of float)
|
0:? 'indexedOut' (layout(location=7 stream=0 ) out 4-component vector of float)
|
||||||
|
0:? 'samp1D' (uniform sampler1D)
|
||||||
|
0:? 'samp2Ds' (uniform sampler2DShadow)
|
||||||
|
|
||||||
|
@ -49,7 +49,11 @@ ERROR: 0:142: 'r8_snorm' : does not apply to signed integer images
|
|||||||
ERROR: 0:143: 'rgba32ui' : does not apply to signed integer images
|
ERROR: 0:143: 'rgba32ui' : does not apply to signed integer images
|
||||||
ERROR: 0:144: 'r8ui' : does not apply to signed integer images
|
ERROR: 0:144: 'r8ui' : does not apply to signed integer images
|
||||||
ERROR: 0:147: 'offset on block member' : not supported for this version or the enabled extensions
|
ERROR: 0:147: 'offset on block member' : not supported for this version or the enabled extensions
|
||||||
ERROR: 48 compilation errors. No code generated.
|
ERROR: 0:157: 'textureQueryLevels' : no matching overloaded function found
|
||||||
|
ERROR: 0:157: 'assign' : cannot convert from 'const float' to 'temp int'
|
||||||
|
ERROR: 0:158: 'textureQueryLevels' : no matching overloaded function found
|
||||||
|
ERROR: 0:158: 'assign' : cannot convert from 'const float' to 'temp int'
|
||||||
|
ERROR: 52 compilation errors. No code generated.
|
||||||
|
|
||||||
|
|
||||||
Shader version: 420
|
Shader version: 420
|
||||||
@ -239,6 +243,11 @@ ERROR: node is still EOpNull!
|
|||||||
0:135 'qualim2' (layout(r32i ) coherent volatile readonly uniform iimage2D)
|
0:135 'qualim2' (layout(r32i ) coherent volatile readonly uniform iimage2D)
|
||||||
0:136 Function Call: passr(iI21; (global void)
|
0:136 Function Call: passr(iI21; (global void)
|
||||||
0:136 'iimg2D' (layout(r32i ) uniform iimage2D)
|
0:136 'iimg2D' (layout(r32i ) uniform iimage2D)
|
||||||
|
0:153 Function Definition: qlod( (global void)
|
||||||
|
0:153 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:157 'levels' (temp int)
|
||||||
|
0:158 'levels' (temp int)
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'v2' (smooth out 2-component vector of float)
|
0:? 'v2' (smooth out 2-component vector of float)
|
||||||
0:? 'bad' (in 10-element array of 4-component vector of float)
|
0:? 'bad' (in 10-element array of 4-component vector of float)
|
||||||
@ -290,6 +299,8 @@ ERROR: node is still EOpNull!
|
|||||||
0:? 'i5bad' (layout(rgba32ui ) uniform iimage2D)
|
0:? 'i5bad' (layout(rgba32ui ) uniform iimage2D)
|
||||||
0:? 'i6bad' (layout(r8ui ) uniform iimage2D)
|
0:? 'i6bad' (layout(r8ui ) uniform iimage2D)
|
||||||
0:? 'offcheckI' (layout(column_major shared ) uniform block{layout(column_major shared offset=16 ) uniform int foo})
|
0:? 'offcheckI' (layout(column_major shared ) uniform block{layout(column_major shared offset=16 ) uniform int foo})
|
||||||
|
0:? 'samp1D' (uniform sampler1D)
|
||||||
|
0:? 'samp1Ds' (uniform sampler1DShadow)
|
||||||
0:? 'gl_VertexID' (gl_VertexId int VertexId)
|
0:? 'gl_VertexID' (gl_VertexId int VertexId)
|
||||||
0:? 'gl_InstanceID' (gl_InstanceId int InstanceId)
|
0:? 'gl_InstanceID' (gl_InstanceId int InstanceId)
|
||||||
|
|
||||||
@ -484,6 +495,11 @@ ERROR: node is still EOpNull!
|
|||||||
0:135 'qualim2' (layout(r32i ) coherent volatile readonly uniform iimage2D)
|
0:135 'qualim2' (layout(r32i ) coherent volatile readonly uniform iimage2D)
|
||||||
0:136 Function Call: passr(iI21; (global void)
|
0:136 Function Call: passr(iI21; (global void)
|
||||||
0:136 'iimg2D' (layout(r32i ) uniform iimage2D)
|
0:136 'iimg2D' (layout(r32i ) uniform iimage2D)
|
||||||
|
0:153 Function Definition: qlod( (global void)
|
||||||
|
0:153 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:157 'levels' (temp int)
|
||||||
|
0:158 'levels' (temp int)
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'v2' (smooth out 2-component vector of float)
|
0:? 'v2' (smooth out 2-component vector of float)
|
||||||
0:? 'bad' (in 10-element array of 4-component vector of float)
|
0:? 'bad' (in 10-element array of 4-component vector of float)
|
||||||
@ -535,6 +551,8 @@ ERROR: node is still EOpNull!
|
|||||||
0:? 'i5bad' (layout(rgba32ui ) uniform iimage2D)
|
0:? 'i5bad' (layout(rgba32ui ) uniform iimage2D)
|
||||||
0:? 'i6bad' (layout(r8ui ) uniform iimage2D)
|
0:? 'i6bad' (layout(r8ui ) uniform iimage2D)
|
||||||
0:? 'offcheckI' (layout(column_major shared ) uniform block{layout(column_major shared offset=16 ) uniform int foo})
|
0:? 'offcheckI' (layout(column_major shared ) uniform block{layout(column_major shared offset=16 ) uniform int foo})
|
||||||
|
0:? 'samp1D' (uniform sampler1D)
|
||||||
|
0:? 'samp1Ds' (uniform sampler1DShadow)
|
||||||
0:? 'gl_VertexID' (gl_VertexId int VertexId)
|
0:? 'gl_VertexID' (gl_VertexId int VertexId)
|
||||||
0:? 'gl_InstanceID' (gl_InstanceId int InstanceId)
|
0:? 'gl_InstanceID' (gl_InstanceId int InstanceId)
|
||||||
|
|
||||||
|
@ -59,7 +59,11 @@ ERROR: 0:168: 'textureSamples and imageSamples' : not supported for this version
|
|||||||
ERROR: 0:169: 'textureSamples and imageSamples' : not supported for this version or the enabled extensions
|
ERROR: 0:169: 'textureSamples and imageSamples' : not supported for this version or the enabled extensions
|
||||||
ERROR: 0:170: 'textureSamples and imageSamples' : not supported for this version or the enabled extensions
|
ERROR: 0:170: 'textureSamples and imageSamples' : not supported for this version or the enabled extensions
|
||||||
ERROR: 0:171: 'textureSamples and imageSamples' : not supported for this version or the enabled extensions
|
ERROR: 0:171: 'textureSamples and imageSamples' : not supported for this version or the enabled extensions
|
||||||
ERROR: 59 compilation errors. No code generated.
|
ERROR: 0:221: 'textureQueryLevels' : no matching overloaded function found
|
||||||
|
ERROR: 0:221: 'assign' : cannot convert from 'const float' to 'temp int'
|
||||||
|
ERROR: 0:222: 'textureQueryLevels' : no matching overloaded function found
|
||||||
|
ERROR: 0:222: 'assign' : cannot convert from 'const float' to 'temp int'
|
||||||
|
ERROR: 63 compilation errors. No code generated.
|
||||||
|
|
||||||
|
|
||||||
Shader version: 430
|
Shader version: 430
|
||||||
@ -139,6 +143,63 @@ ERROR: node is still EOpNull!
|
|||||||
0:181 's' (temp int)
|
0:181 's' (temp int)
|
||||||
0:181 imageQuerySamples (global int)
|
0:181 imageQuerySamples (global int)
|
||||||
0:181 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
|
0:181 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
|
||||||
|
0:202 Function Definition: qlod( (global void)
|
||||||
|
0:202 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:206 move second child to first child (temp int)
|
||||||
|
0:206 'levels' (temp int)
|
||||||
|
0:206 textureQueryLevels (global int)
|
||||||
|
0:206 'samp1D' (uniform sampler1D)
|
||||||
|
0:207 move second child to first child (temp int)
|
||||||
|
0:207 'levels' (temp int)
|
||||||
|
0:207 textureQueryLevels (global int)
|
||||||
|
0:207 'usamp2D' (uniform usampler2D)
|
||||||
|
0:208 move second child to first child (temp int)
|
||||||
|
0:208 'levels' (temp int)
|
||||||
|
0:208 textureQueryLevels (global int)
|
||||||
|
0:208 'isamp3D' (uniform isampler3D)
|
||||||
|
0:209 move second child to first child (temp int)
|
||||||
|
0:209 'levels' (temp int)
|
||||||
|
0:209 textureQueryLevels (global int)
|
||||||
|
0:209 'isampCube' (uniform isamplerCube)
|
||||||
|
0:210 move second child to first child (temp int)
|
||||||
|
0:210 'levels' (temp int)
|
||||||
|
0:210 textureQueryLevels (global int)
|
||||||
|
0:210 'isamp1DA' (uniform isampler1DArray)
|
||||||
|
0:211 move second child to first child (temp int)
|
||||||
|
0:211 'levels' (temp int)
|
||||||
|
0:211 textureQueryLevels (global int)
|
||||||
|
0:211 'samp2DA' (uniform sampler2DArray)
|
||||||
|
0:212 move second child to first child (temp int)
|
||||||
|
0:212 'levels' (temp int)
|
||||||
|
0:212 textureQueryLevels (global int)
|
||||||
|
0:212 'usampCubeA' (uniform usamplerCubeArray)
|
||||||
|
0:214 move second child to first child (temp int)
|
||||||
|
0:214 'levels' (temp int)
|
||||||
|
0:214 textureQueryLevels (global int)
|
||||||
|
0:214 'samp1Ds' (uniform sampler1DShadow)
|
||||||
|
0:215 move second child to first child (temp int)
|
||||||
|
0:215 'levels' (temp int)
|
||||||
|
0:215 textureQueryLevels (global int)
|
||||||
|
0:215 'samp2Ds' (uniform sampler2DShadow)
|
||||||
|
0:216 move second child to first child (temp int)
|
||||||
|
0:216 'levels' (temp int)
|
||||||
|
0:216 textureQueryLevels (global int)
|
||||||
|
0:216 'sampCubes' (uniform samplerCubeShadow)
|
||||||
|
0:217 move second child to first child (temp int)
|
||||||
|
0:217 'levels' (temp int)
|
||||||
|
0:217 textureQueryLevels (global int)
|
||||||
|
0:217 'samp1DAs' (uniform sampler1DArrayShadow)
|
||||||
|
0:218 move second child to first child (temp int)
|
||||||
|
0:218 'levels' (temp int)
|
||||||
|
0:218 textureQueryLevels (global int)
|
||||||
|
0:218 'samp2DAs' (uniform sampler2DArrayShadow)
|
||||||
|
0:219 move second child to first child (temp int)
|
||||||
|
0:219 'levels' (temp int)
|
||||||
|
0:219 textureQueryLevels (global int)
|
||||||
|
0:219 'sampCubeAs' (uniform samplerCubeArrayShadow)
|
||||||
|
0:221 'levels' (temp int)
|
||||||
|
0:222 'levels' (temp int)
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'v4' (layout(location=3 ) temp 4-component vector of float)
|
0:? 'v4' (layout(location=3 ) temp 4-component vector of float)
|
||||||
0:? 'uv4' (layout(location=4 ) uniform 4-component vector of float)
|
0:? 'uv4' (layout(location=4 ) uniform 4-component vector of float)
|
||||||
@ -184,6 +245,21 @@ ERROR: node is still EOpNull!
|
|||||||
0:? 'us2dmsa' (uniform usampler2DMSArray)
|
0:? 'us2dmsa' (uniform usampler2DMSArray)
|
||||||
0:? 'ii2dms' (layout(rgba32i ) uniform iimage2DMS)
|
0:? 'ii2dms' (layout(rgba32i ) uniform iimage2DMS)
|
||||||
0:? 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
|
0:? 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
|
||||||
|
0:? 'samp1D' (uniform sampler1D)
|
||||||
|
0:? 'usamp2D' (uniform usampler2D)
|
||||||
|
0:? 'isamp3D' (uniform isampler3D)
|
||||||
|
0:? 'isampCube' (uniform isamplerCube)
|
||||||
|
0:? 'isamp1DA' (uniform isampler1DArray)
|
||||||
|
0:? 'samp2DA' (uniform sampler2DArray)
|
||||||
|
0:? 'usampCubeA' (uniform usamplerCubeArray)
|
||||||
|
0:? 'samp1Ds' (uniform sampler1DShadow)
|
||||||
|
0:? 'samp2Ds' (uniform sampler2DShadow)
|
||||||
|
0:? 'sampCubes' (uniform samplerCubeShadow)
|
||||||
|
0:? 'samp1DAs' (uniform sampler1DArrayShadow)
|
||||||
|
0:? 'samp2DAs' (uniform sampler2DArrayShadow)
|
||||||
|
0:? 'sampCubeAs' (uniform samplerCubeArrayShadow)
|
||||||
|
0:? 'sampBuf' (uniform samplerBuffer)
|
||||||
|
0:? 'sampRect' (uniform sampler2DRect)
|
||||||
0:? 'gl_VertexID' (gl_VertexId int VertexId)
|
0:? 'gl_VertexID' (gl_VertexId int VertexId)
|
||||||
0:? 'gl_InstanceID' (gl_InstanceId int InstanceId)
|
0:? 'gl_InstanceID' (gl_InstanceId int InstanceId)
|
||||||
|
|
||||||
@ -271,6 +347,63 @@ ERROR: node is still EOpNull!
|
|||||||
0:181 's' (temp int)
|
0:181 's' (temp int)
|
||||||
0:181 imageQuerySamples (global int)
|
0:181 imageQuerySamples (global int)
|
||||||
0:181 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
|
0:181 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
|
||||||
|
0:202 Function Definition: qlod( (global void)
|
||||||
|
0:202 Function Parameters:
|
||||||
|
0:? Sequence
|
||||||
|
0:206 move second child to first child (temp int)
|
||||||
|
0:206 'levels' (temp int)
|
||||||
|
0:206 textureQueryLevels (global int)
|
||||||
|
0:206 'samp1D' (uniform sampler1D)
|
||||||
|
0:207 move second child to first child (temp int)
|
||||||
|
0:207 'levels' (temp int)
|
||||||
|
0:207 textureQueryLevels (global int)
|
||||||
|
0:207 'usamp2D' (uniform usampler2D)
|
||||||
|
0:208 move second child to first child (temp int)
|
||||||
|
0:208 'levels' (temp int)
|
||||||
|
0:208 textureQueryLevels (global int)
|
||||||
|
0:208 'isamp3D' (uniform isampler3D)
|
||||||
|
0:209 move second child to first child (temp int)
|
||||||
|
0:209 'levels' (temp int)
|
||||||
|
0:209 textureQueryLevels (global int)
|
||||||
|
0:209 'isampCube' (uniform isamplerCube)
|
||||||
|
0:210 move second child to first child (temp int)
|
||||||
|
0:210 'levels' (temp int)
|
||||||
|
0:210 textureQueryLevels (global int)
|
||||||
|
0:210 'isamp1DA' (uniform isampler1DArray)
|
||||||
|
0:211 move second child to first child (temp int)
|
||||||
|
0:211 'levels' (temp int)
|
||||||
|
0:211 textureQueryLevels (global int)
|
||||||
|
0:211 'samp2DA' (uniform sampler2DArray)
|
||||||
|
0:212 move second child to first child (temp int)
|
||||||
|
0:212 'levels' (temp int)
|
||||||
|
0:212 textureQueryLevels (global int)
|
||||||
|
0:212 'usampCubeA' (uniform usamplerCubeArray)
|
||||||
|
0:214 move second child to first child (temp int)
|
||||||
|
0:214 'levels' (temp int)
|
||||||
|
0:214 textureQueryLevels (global int)
|
||||||
|
0:214 'samp1Ds' (uniform sampler1DShadow)
|
||||||
|
0:215 move second child to first child (temp int)
|
||||||
|
0:215 'levels' (temp int)
|
||||||
|
0:215 textureQueryLevels (global int)
|
||||||
|
0:215 'samp2Ds' (uniform sampler2DShadow)
|
||||||
|
0:216 move second child to first child (temp int)
|
||||||
|
0:216 'levels' (temp int)
|
||||||
|
0:216 textureQueryLevels (global int)
|
||||||
|
0:216 'sampCubes' (uniform samplerCubeShadow)
|
||||||
|
0:217 move second child to first child (temp int)
|
||||||
|
0:217 'levels' (temp int)
|
||||||
|
0:217 textureQueryLevels (global int)
|
||||||
|
0:217 'samp1DAs' (uniform sampler1DArrayShadow)
|
||||||
|
0:218 move second child to first child (temp int)
|
||||||
|
0:218 'levels' (temp int)
|
||||||
|
0:218 textureQueryLevels (global int)
|
||||||
|
0:218 'samp2DAs' (uniform sampler2DArrayShadow)
|
||||||
|
0:219 move second child to first child (temp int)
|
||||||
|
0:219 'levels' (temp int)
|
||||||
|
0:219 textureQueryLevels (global int)
|
||||||
|
0:219 'sampCubeAs' (uniform samplerCubeArrayShadow)
|
||||||
|
0:221 'levels' (temp int)
|
||||||
|
0:222 'levels' (temp int)
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'v4' (layout(location=3 ) temp 4-component vector of float)
|
0:? 'v4' (layout(location=3 ) temp 4-component vector of float)
|
||||||
0:? 'uv4' (layout(location=4 ) uniform 4-component vector of float)
|
0:? 'uv4' (layout(location=4 ) uniform 4-component vector of float)
|
||||||
@ -316,6 +449,21 @@ ERROR: node is still EOpNull!
|
|||||||
0:? 'us2dmsa' (uniform usampler2DMSArray)
|
0:? 'us2dmsa' (uniform usampler2DMSArray)
|
||||||
0:? 'ii2dms' (layout(rgba32i ) uniform iimage2DMS)
|
0:? 'ii2dms' (layout(rgba32i ) uniform iimage2DMS)
|
||||||
0:? 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
|
0:? 'i2dmsa' (layout(rgba32f ) uniform image2DMSArray)
|
||||||
|
0:? 'samp1D' (uniform sampler1D)
|
||||||
|
0:? 'usamp2D' (uniform usampler2D)
|
||||||
|
0:? 'isamp3D' (uniform isampler3D)
|
||||||
|
0:? 'isampCube' (uniform isamplerCube)
|
||||||
|
0:? 'isamp1DA' (uniform isampler1DArray)
|
||||||
|
0:? 'samp2DA' (uniform sampler2DArray)
|
||||||
|
0:? 'usampCubeA' (uniform usamplerCubeArray)
|
||||||
|
0:? 'samp1Ds' (uniform sampler1DShadow)
|
||||||
|
0:? 'samp2Ds' (uniform sampler2DShadow)
|
||||||
|
0:? 'sampCubes' (uniform samplerCubeShadow)
|
||||||
|
0:? 'samp1DAs' (uniform sampler1DArrayShadow)
|
||||||
|
0:? 'samp2DAs' (uniform sampler2DArrayShadow)
|
||||||
|
0:? 'sampCubeAs' (uniform samplerCubeArrayShadow)
|
||||||
|
0:? 'sampBuf' (uniform samplerBuffer)
|
||||||
|
0:? 'sampRect' (uniform sampler2DRect)
|
||||||
0:? 'gl_VertexID' (gl_VertexId int VertexId)
|
0:? 'gl_VertexID' (gl_VertexId int VertexId)
|
||||||
0:? 'gl_InstanceID' (gl_InstanceId int InstanceId)
|
0:? 'gl_InstanceID' (gl_InstanceId int InstanceId)
|
||||||
|
|
||||||
|
282
Test/baseResults/spv.queryL.frag.out
Normal file
282
Test/baseResults/spv.queryL.frag.out
Normal file
@ -0,0 +1,282 @@
|
|||||||
|
spv.queryL.frag
|
||||||
|
Warning, version 430 is not yet complete; most version-specific features are present, but some are missing.
|
||||||
|
|
||||||
|
|
||||||
|
Linked fragment stage:
|
||||||
|
|
||||||
|
|
||||||
|
// Module Version 99
|
||||||
|
// Generated by (magic number): 51a00bb
|
||||||
|
// Id's are bound by 211
|
||||||
|
|
||||||
|
Source GLSL 430
|
||||||
|
Capability Shader
|
||||||
|
1: ExtInstImport "GLSL.std.450"
|
||||||
|
MemoryModel Logical GLSL450
|
||||||
|
EntryPoint Fragment 4 "main"
|
||||||
|
ExecutionMode 4 OriginLowerLeft
|
||||||
|
Name 4 "main"
|
||||||
|
Name 9 "lod"
|
||||||
|
Name 13 "samp1D"
|
||||||
|
Name 16 "pf"
|
||||||
|
Name 23 "isamp2D"
|
||||||
|
Name 25 "pf2"
|
||||||
|
Name 34 "usamp3D"
|
||||||
|
Name 38 "pf3"
|
||||||
|
Name 46 "sampCube"
|
||||||
|
Name 55 "isamp1DA"
|
||||||
|
Name 64 "usamp2DA"
|
||||||
|
Name 73 "isampCubeA"
|
||||||
|
Name 82 "samp1Ds"
|
||||||
|
Name 91 "samp2Ds"
|
||||||
|
Name 100 "sampCubes"
|
||||||
|
Name 109 "samp1DAs"
|
||||||
|
Name 118 "samp2DAs"
|
||||||
|
Name 127 "sampCubeAs"
|
||||||
|
Name 134 "levels"
|
||||||
|
Name 140 "usamp2D"
|
||||||
|
Name 148 "isamp3D"
|
||||||
|
Name 156 "isampCube"
|
||||||
|
Name 168 "samp2DA"
|
||||||
|
Name 176 "usampCubeA"
|
||||||
|
Name 206 "sampBuf"
|
||||||
|
Name 210 "sampRect"
|
||||||
|
Decorate 206(sampBuf) NoStaticUse
|
||||||
|
Decorate 210(sampRect) NoStaticUse
|
||||||
|
2: TypeVoid
|
||||||
|
3: TypeFunction 2
|
||||||
|
6: TypeFloat 32
|
||||||
|
7: TypeVector 6(float) 2
|
||||||
|
8: TypePointer Function 7(fvec2)
|
||||||
|
10: TypeImage 6(float) 1D sampled format:Unknown
|
||||||
|
11: TypeSampledImage 10
|
||||||
|
12: TypePointer UniformConstant 11
|
||||||
|
13(samp1D): 12(ptr) Variable UniformConstant
|
||||||
|
15: TypePointer Function 6(float)
|
||||||
|
19: TypeInt 32 1
|
||||||
|
20: TypeImage 19(int) 2D sampled format:Unknown
|
||||||
|
21: TypeSampledImage 20
|
||||||
|
22: TypePointer UniformConstant 21
|
||||||
|
23(isamp2D): 22(ptr) Variable UniformConstant
|
||||||
|
30: TypeInt 32 0
|
||||||
|
31: TypeImage 30(int) 3D sampled format:Unknown
|
||||||
|
32: TypeSampledImage 31
|
||||||
|
33: TypePointer UniformConstant 32
|
||||||
|
34(usamp3D): 33(ptr) Variable UniformConstant
|
||||||
|
36: TypeVector 6(float) 3
|
||||||
|
37: TypePointer Function 36(fvec3)
|
||||||
|
43: TypeImage 6(float) Cube sampled format:Unknown
|
||||||
|
44: TypeSampledImage 43
|
||||||
|
45: TypePointer UniformConstant 44
|
||||||
|
46(sampCube): 45(ptr) Variable UniformConstant
|
||||||
|
52: TypeImage 19(int) 1D array sampled format:Unknown
|
||||||
|
53: TypeSampledImage 52
|
||||||
|
54: TypePointer UniformConstant 53
|
||||||
|
55(isamp1DA): 54(ptr) Variable UniformConstant
|
||||||
|
61: TypeImage 30(int) 2D array sampled format:Unknown
|
||||||
|
62: TypeSampledImage 61
|
||||||
|
63: TypePointer UniformConstant 62
|
||||||
|
64(usamp2DA): 63(ptr) Variable UniformConstant
|
||||||
|
70: TypeImage 19(int) Cube array sampled format:Unknown
|
||||||
|
71: TypeSampledImage 70
|
||||||
|
72: TypePointer UniformConstant 71
|
||||||
|
73(isampCubeA): 72(ptr) Variable UniformConstant
|
||||||
|
79: TypeImage 6(float) 1D depth sampled format:Unknown
|
||||||
|
80: TypeSampledImage 79
|
||||||
|
81: TypePointer UniformConstant 80
|
||||||
|
82(samp1Ds): 81(ptr) Variable UniformConstant
|
||||||
|
88: TypeImage 6(float) 2D depth sampled format:Unknown
|
||||||
|
89: TypeSampledImage 88
|
||||||
|
90: TypePointer UniformConstant 89
|
||||||
|
91(samp2Ds): 90(ptr) Variable UniformConstant
|
||||||
|
97: TypeImage 6(float) Cube depth sampled format:Unknown
|
||||||
|
98: TypeSampledImage 97
|
||||||
|
99: TypePointer UniformConstant 98
|
||||||
|
100(sampCubes): 99(ptr) Variable UniformConstant
|
||||||
|
106: TypeImage 6(float) 1D depth array sampled format:Unknown
|
||||||
|
107: TypeSampledImage 106
|
||||||
|
108: TypePointer UniformConstant 107
|
||||||
|
109(samp1DAs): 108(ptr) Variable UniformConstant
|
||||||
|
115: TypeImage 6(float) 2D depth array sampled format:Unknown
|
||||||
|
116: TypeSampledImage 115
|
||||||
|
117: TypePointer UniformConstant 116
|
||||||
|
118(samp2DAs): 117(ptr) Variable UniformConstant
|
||||||
|
124: TypeImage 6(float) Cube depth array sampled format:Unknown
|
||||||
|
125: TypeSampledImage 124
|
||||||
|
126: TypePointer UniformConstant 125
|
||||||
|
127(sampCubeAs): 126(ptr) Variable UniformConstant
|
||||||
|
133: TypePointer Function 19(int)
|
||||||
|
137: TypeImage 30(int) 2D sampled format:Unknown
|
||||||
|
138: TypeSampledImage 137
|
||||||
|
139: TypePointer UniformConstant 138
|
||||||
|
140(usamp2D): 139(ptr) Variable UniformConstant
|
||||||
|
145: TypeImage 19(int) 3D sampled format:Unknown
|
||||||
|
146: TypeSampledImage 145
|
||||||
|
147: TypePointer UniformConstant 146
|
||||||
|
148(isamp3D): 147(ptr) Variable UniformConstant
|
||||||
|
153: TypeImage 19(int) Cube sampled format:Unknown
|
||||||
|
154: TypeSampledImage 153
|
||||||
|
155: TypePointer UniformConstant 154
|
||||||
|
156(isampCube): 155(ptr) Variable UniformConstant
|
||||||
|
165: TypeImage 6(float) 2D array sampled format:Unknown
|
||||||
|
166: TypeSampledImage 165
|
||||||
|
167: TypePointer UniformConstant 166
|
||||||
|
168(samp2DA): 167(ptr) Variable UniformConstant
|
||||||
|
173: TypeImage 30(int) Cube array sampled format:Unknown
|
||||||
|
174: TypeSampledImage 173
|
||||||
|
175: TypePointer UniformConstant 174
|
||||||
|
176(usampCubeA): 175(ptr) Variable UniformConstant
|
||||||
|
203: TypeImage 6(float) Buffer sampled format:Unknown
|
||||||
|
204: TypeSampledImage 203
|
||||||
|
205: TypePointer UniformConstant 204
|
||||||
|
206(sampBuf): 205(ptr) Variable UniformConstant
|
||||||
|
207: TypeImage 6(float) Rect sampled format:Unknown
|
||||||
|
208: TypeSampledImage 207
|
||||||
|
209: TypePointer UniformConstant 208
|
||||||
|
210(sampRect): 209(ptr) Variable UniformConstant
|
||||||
|
4(main): 2 Function None 3
|
||||||
|
5: Label
|
||||||
|
9(lod): 8(ptr) Variable Function
|
||||||
|
16(pf): 15(ptr) Variable Function
|
||||||
|
25(pf2): 8(ptr) Variable Function
|
||||||
|
38(pf3): 37(ptr) Variable Function
|
||||||
|
134(levels): 133(ptr) Variable Function
|
||||||
|
14: 11 Load 13(samp1D)
|
||||||
|
17: 6(float) Load 16(pf)
|
||||||
|
18: 7(fvec2) ImageQueryLod 14 17
|
||||||
|
Store 9(lod) 18
|
||||||
|
24: 21 Load 23(isamp2D)
|
||||||
|
26: 7(fvec2) Load 25(pf2)
|
||||||
|
27: 7(fvec2) ImageQueryLod 24 26
|
||||||
|
28: 7(fvec2) Load 9(lod)
|
||||||
|
29: 7(fvec2) FAdd 28 27
|
||||||
|
Store 9(lod) 29
|
||||||
|
35: 32 Load 34(usamp3D)
|
||||||
|
39: 36(fvec3) Load 38(pf3)
|
||||||
|
40: 7(fvec2) ImageQueryLod 35 39
|
||||||
|
41: 7(fvec2) Load 9(lod)
|
||||||
|
42: 7(fvec2) FAdd 41 40
|
||||||
|
Store 9(lod) 42
|
||||||
|
47: 44 Load 46(sampCube)
|
||||||
|
48: 36(fvec3) Load 38(pf3)
|
||||||
|
49: 7(fvec2) ImageQueryLod 47 48
|
||||||
|
50: 7(fvec2) Load 9(lod)
|
||||||
|
51: 7(fvec2) FAdd 50 49
|
||||||
|
Store 9(lod) 51
|
||||||
|
56: 53 Load 55(isamp1DA)
|
||||||
|
57: 6(float) Load 16(pf)
|
||||||
|
58: 7(fvec2) ImageQueryLod 56 57
|
||||||
|
59: 7(fvec2) Load 9(lod)
|
||||||
|
60: 7(fvec2) FAdd 59 58
|
||||||
|
Store 9(lod) 60
|
||||||
|
65: 62 Load 64(usamp2DA)
|
||||||
|
66: 7(fvec2) Load 25(pf2)
|
||||||
|
67: 7(fvec2) ImageQueryLod 65 66
|
||||||
|
68: 7(fvec2) Load 9(lod)
|
||||||
|
69: 7(fvec2) FAdd 68 67
|
||||||
|
Store 9(lod) 69
|
||||||
|
74: 71 Load 73(isampCubeA)
|
||||||
|
75: 36(fvec3) Load 38(pf3)
|
||||||
|
76: 7(fvec2) ImageQueryLod 74 75
|
||||||
|
77: 7(fvec2) Load 9(lod)
|
||||||
|
78: 7(fvec2) FAdd 77 76
|
||||||
|
Store 9(lod) 78
|
||||||
|
83: 80 Load 82(samp1Ds)
|
||||||
|
84: 6(float) Load 16(pf)
|
||||||
|
85: 7(fvec2) ImageQueryLod 83 84
|
||||||
|
86: 7(fvec2) Load 9(lod)
|
||||||
|
87: 7(fvec2) FAdd 86 85
|
||||||
|
Store 9(lod) 87
|
||||||
|
92: 89 Load 91(samp2Ds)
|
||||||
|
93: 7(fvec2) Load 25(pf2)
|
||||||
|
94: 7(fvec2) ImageQueryLod 92 93
|
||||||
|
95: 7(fvec2) Load 9(lod)
|
||||||
|
96: 7(fvec2) FAdd 95 94
|
||||||
|
Store 9(lod) 96
|
||||||
|
101: 98 Load 100(sampCubes)
|
||||||
|
102: 36(fvec3) Load 38(pf3)
|
||||||
|
103: 7(fvec2) ImageQueryLod 101 102
|
||||||
|
104: 7(fvec2) Load 9(lod)
|
||||||
|
105: 7(fvec2) FAdd 104 103
|
||||||
|
Store 9(lod) 105
|
||||||
|
110: 107 Load 109(samp1DAs)
|
||||||
|
111: 6(float) Load 16(pf)
|
||||||
|
112: 7(fvec2) ImageQueryLod 110 111
|
||||||
|
113: 7(fvec2) Load 9(lod)
|
||||||
|
114: 7(fvec2) FAdd 113 112
|
||||||
|
Store 9(lod) 114
|
||||||
|
119: 116 Load 118(samp2DAs)
|
||||||
|
120: 7(fvec2) Load 25(pf2)
|
||||||
|
121: 7(fvec2) ImageQueryLod 119 120
|
||||||
|
122: 7(fvec2) Load 9(lod)
|
||||||
|
123: 7(fvec2) FAdd 122 121
|
||||||
|
Store 9(lod) 123
|
||||||
|
128: 125 Load 127(sampCubeAs)
|
||||||
|
129: 36(fvec3) Load 38(pf3)
|
||||||
|
130: 7(fvec2) ImageQueryLod 128 129
|
||||||
|
131: 7(fvec2) Load 9(lod)
|
||||||
|
132: 7(fvec2) FAdd 131 130
|
||||||
|
Store 9(lod) 132
|
||||||
|
135: 11 Load 13(samp1D)
|
||||||
|
136: 19(int) ImageQueryLevels 135
|
||||||
|
Store 134(levels) 136
|
||||||
|
141: 138 Load 140(usamp2D)
|
||||||
|
142: 19(int) ImageQueryLevels 141
|
||||||
|
143: 19(int) Load 134(levels)
|
||||||
|
144: 19(int) IAdd 143 142
|
||||||
|
Store 134(levels) 144
|
||||||
|
149: 146 Load 148(isamp3D)
|
||||||
|
150: 19(int) ImageQueryLevels 149
|
||||||
|
151: 19(int) Load 134(levels)
|
||||||
|
152: 19(int) IAdd 151 150
|
||||||
|
Store 134(levels) 152
|
||||||
|
157: 154 Load 156(isampCube)
|
||||||
|
158: 19(int) ImageQueryLevels 157
|
||||||
|
159: 19(int) Load 134(levels)
|
||||||
|
160: 19(int) IAdd 159 158
|
||||||
|
Store 134(levels) 160
|
||||||
|
161: 53 Load 55(isamp1DA)
|
||||||
|
162: 19(int) ImageQueryLevels 161
|
||||||
|
163: 19(int) Load 134(levels)
|
||||||
|
164: 19(int) IAdd 163 162
|
||||||
|
Store 134(levels) 164
|
||||||
|
169: 166 Load 168(samp2DA)
|
||||||
|
170: 19(int) ImageQueryLevels 169
|
||||||
|
171: 19(int) Load 134(levels)
|
||||||
|
172: 19(int) IAdd 171 170
|
||||||
|
Store 134(levels) 172
|
||||||
|
177: 174 Load 176(usampCubeA)
|
||||||
|
178: 19(int) ImageQueryLevels 177
|
||||||
|
179: 19(int) Load 134(levels)
|
||||||
|
180: 19(int) IAdd 179 178
|
||||||
|
Store 134(levels) 180
|
||||||
|
181: 80 Load 82(samp1Ds)
|
||||||
|
182: 19(int) ImageQueryLevels 181
|
||||||
|
Store 134(levels) 182
|
||||||
|
183: 89 Load 91(samp2Ds)
|
||||||
|
184: 19(int) ImageQueryLevels 183
|
||||||
|
185: 19(int) Load 134(levels)
|
||||||
|
186: 19(int) IAdd 185 184
|
||||||
|
Store 134(levels) 186
|
||||||
|
187: 98 Load 100(sampCubes)
|
||||||
|
188: 19(int) ImageQueryLevels 187
|
||||||
|
189: 19(int) Load 134(levels)
|
||||||
|
190: 19(int) IAdd 189 188
|
||||||
|
Store 134(levels) 190
|
||||||
|
191: 107 Load 109(samp1DAs)
|
||||||
|
192: 19(int) ImageQueryLevels 191
|
||||||
|
193: 19(int) Load 134(levels)
|
||||||
|
194: 19(int) IAdd 193 192
|
||||||
|
Store 134(levels) 194
|
||||||
|
195: 116 Load 118(samp2DAs)
|
||||||
|
196: 19(int) ImageQueryLevels 195
|
||||||
|
197: 19(int) Load 134(levels)
|
||||||
|
198: 19(int) IAdd 197 196
|
||||||
|
Store 134(levels) 198
|
||||||
|
199: 125 Load 127(sampCubeAs)
|
||||||
|
200: 19(int) ImageQueryLevels 199
|
||||||
|
201: 19(int) Load 134(levels)
|
||||||
|
202: 19(int) IAdd 201 200
|
||||||
|
Store 134(levels) 202
|
||||||
|
Return
|
||||||
|
FunctionEnd
|
64
Test/spv.queryL.frag
Normal file
64
Test/spv.queryL.frag
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
#version 430 core
|
||||||
|
|
||||||
|
uniform sampler1D samp1D;
|
||||||
|
uniform isampler2D isamp2D;
|
||||||
|
uniform usampler2D usamp2D;
|
||||||
|
uniform isampler3D isamp3D;
|
||||||
|
uniform usampler3D usamp3D;
|
||||||
|
uniform samplerCube sampCube;
|
||||||
|
uniform isamplerCube isampCube;
|
||||||
|
uniform isampler1DArray isamp1DA;
|
||||||
|
uniform sampler2DArray samp2DA;
|
||||||
|
uniform usampler2DArray usamp2DA;
|
||||||
|
uniform isamplerCubeArray isampCubeA;
|
||||||
|
uniform usamplerCubeArray usampCubeA;
|
||||||
|
|
||||||
|
uniform sampler1DShadow samp1Ds;
|
||||||
|
uniform sampler2DShadow samp2Ds;
|
||||||
|
uniform samplerCubeShadow sampCubes;
|
||||||
|
uniform sampler1DArrayShadow samp1DAs;
|
||||||
|
uniform sampler2DArrayShadow samp2DAs;
|
||||||
|
uniform samplerCubeArrayShadow sampCubeAs;
|
||||||
|
|
||||||
|
uniform samplerBuffer sampBuf;
|
||||||
|
uniform sampler2DRect sampRect;
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
vec2 lod;
|
||||||
|
float pf;
|
||||||
|
vec2 pf2;
|
||||||
|
vec3 pf3;
|
||||||
|
|
||||||
|
lod = textureQueryLod(samp1D, pf);
|
||||||
|
lod += textureQueryLod(isamp2D, pf2);
|
||||||
|
lod += textureQueryLod(usamp3D, pf3);
|
||||||
|
lod += textureQueryLod(sampCube, pf3);
|
||||||
|
lod += textureQueryLod(isamp1DA, pf);
|
||||||
|
lod += textureQueryLod(usamp2DA, pf2);
|
||||||
|
lod += textureQueryLod(isampCubeA, pf3);
|
||||||
|
|
||||||
|
lod += textureQueryLod(samp1Ds, pf);
|
||||||
|
lod += textureQueryLod(samp2Ds, pf2);
|
||||||
|
lod += textureQueryLod(sampCubes, pf3);
|
||||||
|
lod += textureQueryLod(samp1DAs, pf);
|
||||||
|
lod += textureQueryLod(samp2DAs, pf2);
|
||||||
|
lod += textureQueryLod(sampCubeAs, pf3);
|
||||||
|
|
||||||
|
int levels;
|
||||||
|
|
||||||
|
levels = textureQueryLevels(samp1D);
|
||||||
|
levels += textureQueryLevels(usamp2D);
|
||||||
|
levels += textureQueryLevels(isamp3D);
|
||||||
|
levels += textureQueryLevels(isampCube);
|
||||||
|
levels += textureQueryLevels(isamp1DA);
|
||||||
|
levels += textureQueryLevels(samp2DA);
|
||||||
|
levels += textureQueryLevels(usampCubeA);
|
||||||
|
|
||||||
|
levels = textureQueryLevels(samp1Ds);
|
||||||
|
levels += textureQueryLevels(samp2Ds);
|
||||||
|
levels += textureQueryLevels(sampCubes);
|
||||||
|
levels += textureQueryLevels(samp1DAs);
|
||||||
|
levels += textureQueryLevels(samp2DAs);
|
||||||
|
levels += textureQueryLevels(sampCubeAs);
|
||||||
|
}
|
@ -80,3 +80,4 @@ spv.voidFunction.frag
|
|||||||
spv.whileLoop.frag
|
spv.whileLoop.frag
|
||||||
spv.atomic.comp
|
spv.atomic.comp
|
||||||
spv.AofA.frag
|
spv.AofA.frag
|
||||||
|
spv.queryL.frag
|
||||||
|
@ -2,5 +2,5 @@
|
|||||||
// For the version, it uses the latest git tag followed by the number of commits.
|
// For the version, it uses the latest git tag followed by the number of commits.
|
||||||
// For the date, it uses the current date (when then script is run).
|
// For the date, it uses the current date (when then script is run).
|
||||||
|
|
||||||
#define GLSLANG_REVISION "3.0.755"
|
#define GLSLANG_REVISION "3.0.756"
|
||||||
#define GLSLANG_DATE "15-Sep-2015"
|
#define GLSLANG_DATE "15-Sep-2015"
|
||||||
|
@ -1849,6 +1849,7 @@ void TBuiltIns::initialize(int version, EProfile profile)
|
|||||||
add2ndGenerationSamplingImaging(version, profile);
|
add2ndGenerationSamplingImaging(version, profile);
|
||||||
|
|
||||||
//printf("%s\n", commonBuiltins.c_str());
|
//printf("%s\n", commonBuiltins.c_str());
|
||||||
|
//printf("%s\n", stageBuiltins[EShLangFragment].c_str());
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
@ -1946,21 +1947,21 @@ void TBuiltIns::add2ndGenerationSamplingImaging(int version, EProfile profile)
|
|||||||
//
|
//
|
||||||
void TBuiltIns::addQueryFunctions(TSampler sampler, TString& typeName, int version, EProfile profile)
|
void TBuiltIns::addQueryFunctions(TSampler sampler, TString& typeName, int version, EProfile profile)
|
||||||
{
|
{
|
||||||
//
|
|
||||||
// textureSize
|
|
||||||
//
|
|
||||||
|
|
||||||
if (sampler.image && ((profile == EEsProfile && version < 310) || (profile != EEsProfile && version < 430)))
|
if (sampler.image && ((profile == EEsProfile && version < 310) || (profile != EEsProfile && version < 430)))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
//
|
||||||
|
// textureSize() and imageSize()
|
||||||
|
//
|
||||||
|
|
||||||
|
int sizeDims = dimMap[sampler.dim] + (sampler.arrayed ? 1 : 0) - (sampler.dim == EsdCube ? 1 : 0);
|
||||||
if (profile == EEsProfile)
|
if (profile == EEsProfile)
|
||||||
commonBuiltins.append("highp ");
|
commonBuiltins.append("highp ");
|
||||||
int dims = dimMap[sampler.dim] + (sampler.arrayed ? 1 : 0) - (sampler.dim == EsdCube ? 1 : 0);
|
if (sizeDims == 1)
|
||||||
if (dims == 1)
|
|
||||||
commonBuiltins.append("int");
|
commonBuiltins.append("int");
|
||||||
else {
|
else {
|
||||||
commonBuiltins.append("ivec");
|
commonBuiltins.append("ivec");
|
||||||
commonBuiltins.append(postfixes[dims]);
|
commonBuiltins.append(postfixes[sizeDims]);
|
||||||
}
|
}
|
||||||
if (sampler.image)
|
if (sampler.image)
|
||||||
commonBuiltins.append(" imageSize(readonly writeonly volatile coherent ");
|
commonBuiltins.append(" imageSize(readonly writeonly volatile coherent ");
|
||||||
@ -1972,6 +1973,10 @@ void TBuiltIns::addQueryFunctions(TSampler sampler, TString& typeName, int versi
|
|||||||
else
|
else
|
||||||
commonBuiltins.append(");\n");
|
commonBuiltins.append(");\n");
|
||||||
|
|
||||||
|
//
|
||||||
|
// textureSamples() and imageSamples()
|
||||||
|
//
|
||||||
|
|
||||||
// GL_ARB_shader_texture_image_samples
|
// GL_ARB_shader_texture_image_samples
|
||||||
// TODO: spec issue? there are no memory qualifiers; how to query a writeonly/readonly image, etc?
|
// TODO: spec issue? there are no memory qualifiers; how to query a writeonly/readonly image, etc?
|
||||||
if (profile != EEsProfile && version >= 430 && sampler.ms) {
|
if (profile != EEsProfile && version >= 430 && sampler.ms) {
|
||||||
@ -1983,6 +1988,32 @@ void TBuiltIns::addQueryFunctions(TSampler sampler, TString& typeName, int versi
|
|||||||
commonBuiltins.append(typeName);
|
commonBuiltins.append(typeName);
|
||||||
commonBuiltins.append(");\n");
|
commonBuiltins.append(");\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// textureQueryLod(), fragment stage only
|
||||||
|
//
|
||||||
|
|
||||||
|
if (profile != EEsProfile && version >= 400 && ! sampler.image && sampler.dim != EsdRect && ! sampler.ms && sampler.dim != EsdBuffer) {
|
||||||
|
stageBuiltins[EShLangFragment].append("vec2 textureQueryLod(");
|
||||||
|
stageBuiltins[EShLangFragment].append(typeName);
|
||||||
|
if (dimMap[sampler.dim] == 1)
|
||||||
|
stageBuiltins[EShLangFragment].append(", float");
|
||||||
|
else {
|
||||||
|
stageBuiltins[EShLangFragment].append(", vec");
|
||||||
|
stageBuiltins[EShLangFragment].append(postfixes[dimMap[sampler.dim]]);
|
||||||
|
}
|
||||||
|
stageBuiltins[EShLangFragment].append(");\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// textureQueryLevels()
|
||||||
|
//
|
||||||
|
|
||||||
|
if (profile != EEsProfile && version >= 430 && ! sampler.image && sampler.dim != EsdRect && ! sampler.ms && sampler.dim != EsdBuffer) {
|
||||||
|
commonBuiltins.append("int textureQueryLevels(");
|
||||||
|
commonBuiltins.append(typeName);
|
||||||
|
commonBuiltins.append(");\n");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
Loading…
x
Reference in New Issue
Block a user