diff options
author | Chris Forbes <[email protected]> | 2012-11-30 21:22:14 +1300 |
---|---|---|
committer | Chris Forbes <[email protected]> | 2013-03-02 11:35:16 +1300 |
commit | 1822496f3a7baf1c1726fda008cb89fbbade5c8d (patch) | |
tree | 03eec65012883b8a943b24fdc8837bd3fa0b0f14 /src/mesa/main/enable.c | |
parent | 7c1017e292b2d27af6d7e15db874f50223d73e15 (diff) |
mesa: implement sample mask
V2: - fix multiline comment style
- stop using ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH since that
doesn't exist anymore.
V3: - check for the extension being enabled
- tidier flagging of _NEW_MULTISAMPLE
- fix weird indentation in get.c
V4: - move flush later in SampleMaski()
Signed-off-by: Chris Forbes <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Diffstat (limited to 'src/mesa/main/enable.c')
-rw-r--r-- | src/mesa/main/enable.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c index 7e85fdfb3f4..b688f050b1f 100644 --- a/src/mesa/main/enable.c +++ b/src/mesa/main/enable.c @@ -1013,6 +1013,17 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state) } break; + /* ARB_texture_multisample */ + case GL_SAMPLE_MASK: + if (!_mesa_is_desktop_gl(ctx)) + goto invalid_enum_error; + CHECK_EXTENSION(ARB_texture_multisample, cap); + if (ctx->Multisample.SampleMask == state) + return; + FLUSH_VERTICES(ctx, _NEW_MULTISAMPLE); + ctx->Multisample.SampleMask = state; + break; + default: goto invalid_enum_error; } @@ -1583,6 +1594,13 @@ _mesa_IsEnabled( GLenum cap ) CHECK_EXTENSION(OES_EGL_image_external); return is_texture_enabled(ctx, TEXTURE_EXTERNAL_BIT); + /* ARB_texture_multisample */ + case GL_SAMPLE_MASK: + if (!_mesa_is_desktop_gl(ctx)) + goto invalid_enum_error; + CHECK_EXTENSION(ARB_texture_multisample); + return ctx->Multisample.SampleMask; + default: goto invalid_enum_error; } |