mirror of
https://github.com/KhronosGroup/glslang
synced 2024-11-10 04:20:06 +00:00
b4fd8d10f0
For short-circuit operator (&& and ||), the conversion is missing.
31 lines
496 B
GLSL
31 lines
496 B
GLSL
#version 450
|
|
|
|
layout(binding = 0, std140) uniform Uniform
|
|
{
|
|
bvec4 b4;
|
|
};
|
|
|
|
layout(binding = 1, std430) buffer Buffer
|
|
{
|
|
bvec2 b2;
|
|
};
|
|
|
|
void foo(bvec4 paramb4, out bvec2 paramb2)
|
|
{
|
|
bool b1 = paramb4.z;
|
|
paramb2 = bvec2(b1);
|
|
}
|
|
|
|
layout(location = 0) out vec4 fragColor;
|
|
|
|
void main()
|
|
{
|
|
b2 = bvec2(0.0);
|
|
if (b4.z)
|
|
b2 = bvec2(b4.x);
|
|
if (b2.x)
|
|
foo(b4, b2);
|
|
|
|
fragColor = vec4(b4.x && b4.y);
|
|
fragColor -= vec4(b4.x || b4.y);
|
|
} |