On Fri, 26 Oct 2018 at 12:35, Erik Faye-Lund <[email protected]> wrote: > > On Thu, 2018-10-25 at 14:39 +0100, Emil Velikov wrote: > > On Thu, 25 Oct 2018 at 11:07, Erik Faye-Lund > > <[email protected]> wrote: > > > > > > On Wed, 2018-10-24 at 16:32 +0100, Emil Velikov wrote: > > > > Hi Erik, > > > > > > > > A bit of an open question, do we want this test on GLES? If yes, > > > > see > > > > the GLES > > > > notes below. > > > > > > > > > > Right. I think I'm fine with only OpenGL for now, as this is a > > > quirk- > > > test. > > > > > > But yeah, it's totally valuable for GLES as well, and as you point > > > our, should be pretty easy to port there. I'll leave that for the > > > future for now, though. > > > > > > > Alternatively, I've only spotted couple small nitpicks. > > > > > > > > On Thu, 20 Sep 2018 at 19:19, Erik Faye-Lund > > > > <[email protected]> wrote: > > > > > > > > > > Drivers who implement GL_ALPHA textures by swizzling a GL_R > > > > > texture > > > > > needs to be prepared to offer multiple blend-colors, otherwise > > > > > they > > > > > will produce the wrong result, because the blend-color will > > > > > also > > > > > need per-format swizzling. > > > > > > > > > > Similarly, when drivers implement GL_RGB with GL_RGBA and > > > > > adjust > > > > > the > > > > > blend-factors, they need to have separate blend-factors for all > > > > > framebuffer attachments or the results will be wrong. > > > > > > > > > > This reveals a couple of bugs in virgl, where these currently > > > > > fail. > > > > > > > > > > Signed-off-by: Erik Faye-Lund <[email protected]> > > > > > --- > > > > > tests/fbo/CMakeLists.gl.txt | 1 + > > > > > tests/fbo/fbo-blending-format-quirks.c | 175 > > > > > +++++++++++++++++++++++++ > > > > > tests/opengl.py | 1 + > > > > > 3 files changed, 177 insertions(+) > > > > > create mode 100644 tests/fbo/fbo-blending-format-quirks.c > > > > > > > > > > diff --git a/tests/fbo/CMakeLists.gl.txt > > > > > b/tests/fbo/CMakeLists.gl.txt > > > > > index d594c24d3..1a1a60765 100644 > > > > > --- a/tests/fbo/CMakeLists.gl.txt > > > > > +++ b/tests/fbo/CMakeLists.gl.txt > > > > > @@ -29,6 +29,7 @@ piglit_add_executable (fbo-blit fbo-blit.c) > > > > > piglit_add_executable (fbo-blit-d24s8 fbo-blit-d24s8.c) > > > > > piglit_add_executable (fbo-blit-stretch fbo-blit-stretch.cpp) > > > > > piglit_add_executable (fbo-blending-formats fbo-blending- > > > > > formats.c) > > > > > +piglit_add_executable (fbo-blending-format-quirks fbo- > > > > > blending- > > > > > format-quirks.c) > > > > > > > > GLES: > > > > Add a trivial .gles1.txt and/or gles2.txt file. You can use the > > > > ext_image_dma_buf_import ones for reference. > > > > > > > > > > > > > piglit_add_executable (fbo-blending-snorm fbo-blending- > > > > > snorm.c) > > > > > piglit_add_executable (fbo-colormask-formats fbo-colormask- > > > > > formats.c) > > > > > piglit_add_executable (fbo-copypix fbo-copypix.c) > > > > > diff --git a/tests/fbo/fbo-blending-format-quirks.c > > > > > b/tests/fbo/fbo-blending-format-quirks.c > > > > > new file mode 100644 > > > > > index 000000000..f6865d42b > > > > > --- /dev/null > > > > > +++ b/tests/fbo/fbo-blending-format-quirks.c > > > > > +#include "piglit-util-gl.h" > > > > > + > > > > > +PIGLIT_GL_TEST_CONFIG_BEGIN > > > > > + > > > > > + config.supports_gl_compat_version = 10; > > > > > + > > > > > > > > GLES: > > > > #ifdef PIGLIT_USE_OPENGL > > > > config.supports_gl_compat_version = 10; > > > > #else > > > > config.supports_gl_es_version = ... > > > > #endif > > > > > > > > > > > > > +enum piglit_result piglit_display(void) > > > > > +{ > > > > > + int i; > > > > > + enum piglit_result result, end_result = PIGLIT_PASS; > > > > > + bool all_skip = true; > > > > > + > > > > > + struct { > > > > > > > > static const > > > > > > > > > > Fixed, thanks. > > > > > > > > + const char *name; > > > > > + GLenum formats[2]; > > > > > + GLenum factors[2]; > > > > > + float expect[2][4]; > > > > > + } cases[] = { > > > > > > > > > > > > > + > > > > > +void piglit_init(int argc, char **argv) > > > > > +{ > > > > > > > > piglit_require_extension("GL_EXT_framebuffer_object"); > > > > > > > > You need this ^^ > > > > Right, thanks. Fixed. > > However, I used tests/fbo/fbo-blending-formats.c as a reference, and > this doesn't seem to do this either. So perhaps a fixup there is in > order as well? > I think so. That's somewhat orthogonal to this patch, so I'd leave that for another day.
> Also, I'm curious; EXT_framebuffer_object is an old, arguably broken > spec. Why are we requiring it rather than ARB_framebuffer_object? Is > the assumption that everyone who implements ARB_framebuffer_object will > also implement EXT_framebuffer_object? > Silly answer off the top of my head - everything in mesa supports the EXT one, unlike the ARB one. > If I were to create a new driver today, I think I would drop > EXT_framebuffer_object, because it creates an ambiguity if framebuffer > objects are shared among contexts or not... So I'm not sure it's a good > assumption. > > Better, I think, would be to require *either*. > That's a good call IMHO. > I'm leaving the test as-is with your suggested change, though. I think > this is a much bigger question, which can be dealt with independently. > Agreed. Thanks Emil _______________________________________________ Piglit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/piglit
