1 /* 2 * Copyright (c) 2002-2008 LWJGL Project 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: 8 * 9 * * Redistributions of source code must retain the above copyright 10 * notice, this list of conditions and the following disclaimer. 11 * 12 * * Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in the 14 * documentation and/or other materials provided with the distribution. 15 * 16 * * Neither the name of 'LWJGL' nor the names of 17 * its contributors may be used to endorse or promote products derived 18 * from this software without specific prior written permission. 19 * 20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 21 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 22 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 23 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 24 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 25 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 26 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 27 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 28 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 29 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 30 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31 */ 32 package org.lwjgl.opengl; 33 34 import org.lwjgl.util.generator.*; 35 import org.lwjgl.util.generator.opengl.GLbitfield; 36 import org.lwjgl.util.generator.opengl.GLenum; 37 import org.lwjgl.util.generator.opengl.GLsizei; 38 import org.lwjgl.util.generator.opengl.GLuint; 39 40 import java.nio.FloatBuffer; 41 42 @Extension(postfix = "") 43 public interface ARB_texture_multisample { 44 45 /** Accepted by the <pname> parameter of GetMultisamplefv: */ 46 int GL_SAMPLE_POSITION = 0x8E50; 47 48 /** 49 * Accepted by the <cap> parameter of Enable, Disable, and IsEnabled, and by 50 * the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv, and 51 * GetDoublev: 52 */ 53 int GL_SAMPLE_MASK = 0x8E51; 54 55 /** 56 * Accepted by the <target> parameter of GetBooleani_v and 57 * GetIntegeri_v: 58 */ 59 int GL_SAMPLE_MASK_VALUE = 0x8E52; 60 61 /** 62 * Accepted by the <target> parameter of BindTexture and 63 * TexImage2DMultisample: 64 */ 65 int GL_TEXTURE_2D_MULTISAMPLE = 0x9100; 66 67 /** Accepted by the <target> parameter of TexImage2DMultisample: */ 68 int GL_PROXY_TEXTURE_2D_MULTISAMPLE = 0x9101; 69 70 /** 71 * Accepted by the <target> parameter of BindTexture and 72 * TexImage3DMultisample: 73 */ 74 int GL_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9102; 75 76 /** Accepted by the <target> parameter of TexImage3DMultisample: */ 77 int GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9103; 78 79 /** 80 * Accepted by the <pname> parameter of GetBooleanv, GetDoublev, GetIntegerv, 81 * and GetFloatv: 82 */ 83 int GL_MAX_SAMPLE_MASK_WORDS = 0x8E59; 84 int GL_MAX_COLOR_TEXTURE_SAMPLES = 0x910E; 85 int GL_MAX_DEPTH_TEXTURE_SAMPLES = 0x910F; 86 int GL_MAX_INTEGER_SAMPLES = 0x9110; 87 int GL_TEXTURE_BINDING_2D_MULTISAMPLE = 0x9104; 88 int GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = 0x9105; 89 90 /** Accepted by the <pname> parameter of GetTexLevelParameter */ 91 int GL_TEXTURE_SAMPLES = 0x9106; 92 int GL_TEXTURE_FIXED_SAMPLE_LOCATIONS = 0x9107; 93 94 /** Returned by the <type> parameter of GetActiveUniform: */ 95 int GL_SAMPLER_2D_MULTISAMPLE = 0x9108; 96 int GL_INT_SAMPLER_2D_MULTISAMPLE = 0x9109; 97 int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = 0x910A; 98 int GL_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910B; 99 int GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910C; 100 int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910D; 101 102 @Reuse("GL32") glTexImage2DMultisample(@Lenum int target, @GLsizei int samples, int internalformat, @GLsizei int width, @GLsizei int height, boolean fixedsamplelocations)103 void glTexImage2DMultisample(@GLenum int target, @GLsizei int samples, int internalformat, 104 @GLsizei int width, @GLsizei int height, 105 boolean fixedsamplelocations); 106 107 @Reuse("GL32") glTexImage3DMultisample(@Lenum int target, @GLsizei int samples, int internalformat, @GLsizei int width, @GLsizei int height, @GLsizei int depth, boolean fixedsamplelocations)108 void glTexImage3DMultisample(@GLenum int target, @GLsizei int samples, int internalformat, 109 @GLsizei int width, @GLsizei int height, @GLsizei int depth, 110 boolean fixedsamplelocations); 111 112 @Reuse("GL32") 113 @StripPostfix("val") glGetMultisamplefv(@Lenum int pname, @GLuint int index, @OutParameter @Check(R) FloatBuffer val)114 void glGetMultisamplefv(@GLenum int pname, @GLuint int index, @OutParameter @Check("2") FloatBuffer val); 115 116 @Reuse("GL32") glSampleMaski(@Luint int index, @GLbitfield int mask)117 void glSampleMaski(@GLuint int index, @GLbitfield int mask); 118 119 }