summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2019-09-12 19:12:10 -0700
committerKenneth Graunke <[email protected]>2019-09-16 13:40:41 -0700
commitd9d6305b80b957ec80b2eb6ccffeab84f6766f19 (patch)
treec5a77e5068a1e61f465b452e3df5ae17e7898b9d
parentfbad42bbb9d80abc538c698ca413255968eabda4 (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.c5
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,