зеркало из https://github.com/AvaloniaUI/angle.git
Expose translator issues with struct samplers.
Struct samplers assert in the Vulkan and Metal backends during rewriting. Add a test - skipped for now on these backends - to highlight this issue. Bug: angleproject:6641 Change-Id: I95cbc9e5f4122f1ac7db926ac44c4cccc1b6f87a Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/3256235 Reviewed-by: Geoff Lang <geofflang@chromium.org> Commit-Queue: Kenneth Russell <kbr@chromium.org>
This commit is contained in:
Родитель
a517d4d95f
Коммит
88ca3b18ab
|
@ -25,6 +25,10 @@
|
|||
4889 VULKAN : GeometryShaderTest.LayeredFramebufferPreRenderClear3DColor/* = SKIP
|
||||
4889 VULKAN : GLSLTest_ES31.VaryingTessellationSampleInAndOut/* = SKIP
|
||||
|
||||
// Vulkan generic
|
||||
6641 VULKAN : UniformTest.UnusedStructInlineUniform/* = SKIP
|
||||
6641 VULKAN : UniformTest.UnusedStructInlineUniformWithSampler/* = SKIP
|
||||
|
||||
// Windows
|
||||
3786 WIN NVIDIA D3D11 : BufferDataOverflowTest.VertexBufferIntegerOverflow/* = SKIP
|
||||
4092 WIN VULKAN : BufferDataOverflowTest.VertexBufferIntegerOverflow/* = SKIP
|
||||
|
@ -108,6 +112,8 @@
|
|||
6570 MAC INTEL OPENGL : WebGLCompatibilityTest.RGB32FTextures/* = SKIP
|
||||
6603 MAC OPENGL : ProgramBinaryES3Test.SaveAndLoadDetachedShaders/* = SKIP
|
||||
6643 MAC AMD OPENGL : TransformFeedbackTest.TransformFeedbackQueryPausedDrawThenResume/* = SKIP
|
||||
6641 MAC METAL : UniformTest.UnusedStructInlineUniform/* = SKIP
|
||||
6641 MAC METAL : UniformTest.UnusedStructInlineUniformWithSampler/* = SKIP
|
||||
|
||||
// Failures from Transform Feedback Enablement. Passes on BigSur
|
||||
6407 MAC NVIDIA METAL : TransformFeedbackTest.OptimizedVaryings/ES3_Metal = SKIP
|
||||
|
|
|
@ -1461,6 +1461,58 @@ void main()
|
|||
EXPECT_PIXEL_COLOR_EQ(0, 0, GLColor::green);
|
||||
}
|
||||
|
||||
TEST_P(UniformTest, UnusedStructInlineUniform)
|
||||
{
|
||||
constexpr char kVS[] = R"(precision highp float;
|
||||
attribute vec4 position;
|
||||
void main()
|
||||
{
|
||||
gl_Position = position;
|
||||
})";
|
||||
|
||||
constexpr char kFS[] = R"(precision highp float;
|
||||
uniform struct {
|
||||
vec3 aVec3;
|
||||
vec2 aVec2;
|
||||
}aUniform;
|
||||
varying vec2 texcoord;
|
||||
void main()
|
||||
{
|
||||
gl_FragColor = vec4(0,1,0,1);
|
||||
})";
|
||||
|
||||
mProgram = CompileProgram(kVS, kFS);
|
||||
ASSERT_NE(mProgram, 0u);
|
||||
drawQuad(mProgram, "position", 0.5f);
|
||||
EXPECT_PIXEL_COLOR_EQ(0, 0, GLColor::green);
|
||||
}
|
||||
|
||||
TEST_P(UniformTest, UnusedStructInlineUniformWithSampler)
|
||||
{
|
||||
constexpr char kVS[] = R"(precision highp float;
|
||||
attribute vec4 position;
|
||||
void main()
|
||||
{
|
||||
gl_Position = position;
|
||||
})";
|
||||
|
||||
constexpr char kFS[] = R"(precision highp float;
|
||||
uniform struct {
|
||||
sampler2D aSampler;
|
||||
vec3 aVec3;
|
||||
}aUniform;
|
||||
varying vec2 texcoord;
|
||||
void main()
|
||||
{
|
||||
gl_FragColor = vec4(0,1,0,1);
|
||||
})";
|
||||
|
||||
mProgram = CompileProgram(kVS, kFS);
|
||||
ASSERT_NE(mProgram, 0u);
|
||||
drawQuad(mProgram, "position", 0.5f);
|
||||
EXPECT_PIXEL_COLOR_EQ(0, 0, GLColor::green);
|
||||
}
|
||||
|
||||
// Use this to select which configurations (e.g. which renderer, which GLES major version) these
|
||||
// tests should be run against.
|
||||
ANGLE_INSTANTIATE_TEST_ES2_AND_ES3(SimpleUniformTest);
|
||||
|
|
Загрузка…
Ссылка в новой задаче