diff options
author | Kenneth Graunke <[email protected]> | 2019-09-12 19:12:10 -0700 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2019-09-16 13:40:41 -0700 |
commit | d9d6305b80b957ec80b2eb6ccffeab84f6766f19 (patch) | |
tree | c5a77e5068a1e61f465b452e3df5ae17e7898b9d | |
parent | fbad42bbb9d80abc538c698ca413255968eabda4 (diff) |
st/mesa: Increase GL_POINT_SIZE_RANGE minimum to 1.0
Table 23.54 of the OpenGL 4.5 spec lists the minimum values for
GL_POINT_SIZE_RANGE as [1, 1]. So zero is not allowed (even though
arguably this could be useful for MSAA rendering, where a sub-1px
point might cover only some samples...)
This fixes the WebGL 2.0 conformance suite's state.gl-get-calls test
on Chromium on Linux, which uses desktop OpenGL. The test checks that
the minimum value of GL_ALIASED_POINT_SIZE_RANGE is 1. Unfortunately,
that query doesn't exist in desktop GL, so it checks POINT_SIZE_RANGE,
which is the anti-aliased value. There's not really anything better
for Chromium to do here, unfortunately. When running Chromium with
--api=es3, it maps it to the correct query and the test already works.
Reviewed-by: Jordan Justen <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
-rw-r--r-- | src/mesa/state_tracker/st_extensions.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c index ed81134f4c5..40e51f828de 100644 --- a/src/mesa/state_tracker/st_extensions.c +++ b/src/mesa/state_tracker/st_extensions.c @@ -132,11 +132,8 @@ void st_init_limits(struct pipe_screen *screen, c->MaxPointSizeAA = _maxf(1.0f, screen->get_paramf(screen, PIPE_CAPF_MAX_POINT_WIDTH_AA)); - /* these are not queryable. Note that GL basically mandates a 1.0 minimum - * for non-aa sizes, but we can go down to 0.0 for aa points. - */ c->MinPointSize = 1.0f; - c->MinPointSizeAA = 0.0f; + c->MinPointSizeAA = 1.0f; c->MaxTextureMaxAnisotropy = _maxf(2.0f, |