Added support for OpenGL 3.2 and the following extensions: AMD_draw_buffers_blend, ARB_depth_clamp, ARB_draw_buffers_blend, ARB_draw_elements_base_vertex, ARB_fragment_coord_conventions, ARB_provoking_vertex, ARB_sample_shading, ARB_seamless_cube_map, ARB_shader_texture_lod, ARB_texture_cube_map_array, ARB_texture_gather, ARB_texture_multisample, ARB_texture_query_lod, ARB_vertex_array_bgra, EXT_separate_shader_objects, EXT_texture_snorm, NV_copy_image, NV_parameter_buffer_object2.
This commit is contained in:
parent
b37909187e
commit
b130c415f7
|
@ -48,7 +48,7 @@ import java.nio.IntBuffer;
|
|||
* implementation. Developers may encounter debug contexts being the same as non-debug contexts or forward compatible
|
||||
* contexts having support for deprecated functionality.
|
||||
* <p/>
|
||||
* Warning: This functionality is currently available on the Windows platform only. However, if the forwardCompatible
|
||||
* If the forwardCompatible
|
||||
* attribute is used, LWJGL will not load the deprecated functionality (as defined in the OpenGL 3.0 specification). This
|
||||
* means that developers can start working on cleaning up their applications without an OpenGL 3.0 complaint driver.
|
||||
*
|
||||
|
@ -64,6 +64,9 @@ public final class ContextAttribs {
|
|||
private boolean debug;
|
||||
private boolean forwardCompatible;
|
||||
|
||||
private boolean profileCore;
|
||||
private boolean profileCompatibility;
|
||||
|
||||
public ContextAttribs() {
|
||||
this(1, 0);
|
||||
}
|
||||
|
@ -72,7 +75,7 @@ public final class ContextAttribs {
|
|||
if ( majorVersion < 0 ||
|
||||
3 < majorVersion ||
|
||||
minorVersion < 0 ||
|
||||
(majorVersion == 3 && 1 < minorVersion) ||
|
||||
(majorVersion == 3 && 2 < minorVersion) ||
|
||||
(majorVersion == 2 && 1 < minorVersion) ||
|
||||
(majorVersion == 1 && 5 < minorVersion) )
|
||||
throw new IllegalArgumentException("Invalid OpenGL version specified: " + majorVersion + '.' + minorVersion);
|
||||
|
@ -84,6 +87,9 @@ public final class ContextAttribs {
|
|||
|
||||
this.debug = false;
|
||||
this.forwardCompatible = false;
|
||||
|
||||
this.profileCore = 3 < majorVersion || (majorVersion == 3 && 2 <= minorVersion) ? true : false;
|
||||
this.profileCompatibility = false;
|
||||
}
|
||||
|
||||
private ContextAttribs(final ContextAttribs attribs) {
|
||||
|
@ -94,6 +100,9 @@ public final class ContextAttribs {
|
|||
|
||||
this.debug = attribs.debug;
|
||||
this.forwardCompatible = attribs.forwardCompatible;
|
||||
|
||||
this.profileCore = attribs.profileCore;
|
||||
this.profileCompatibility = attribs.profileCompatibility;
|
||||
}
|
||||
|
||||
public int getMajorVersion() {
|
||||
|
@ -116,27 +125,74 @@ public final class ContextAttribs {
|
|||
return forwardCompatible;
|
||||
}
|
||||
|
||||
public boolean isProfileCore() {
|
||||
return profileCore;
|
||||
}
|
||||
|
||||
public boolean isProfileCompatibility() {
|
||||
return profileCompatibility;
|
||||
}
|
||||
|
||||
public ContextAttribs withLayer(final int layerPlane) {
|
||||
if ( layerPlane < 0 )
|
||||
throw new IllegalArgumentException("Invalid layer plane specified: " + layerPlane);
|
||||
|
||||
if ( layerPlane == this.layerPlane )
|
||||
return this;
|
||||
|
||||
final ContextAttribs attribs = new ContextAttribs(this);
|
||||
attribs.layerPlane = layerPlane;
|
||||
return attribs;
|
||||
}
|
||||
|
||||
public ContextAttribs withDebug(final boolean debug) {
|
||||
if ( debug == this.debug )
|
||||
return this;
|
||||
|
||||
final ContextAttribs attribs = new ContextAttribs(this);
|
||||
attribs.debug = debug;
|
||||
return attribs;
|
||||
}
|
||||
|
||||
public ContextAttribs withForwardCompatible(final boolean forwardCompatible) {
|
||||
if ( forwardCompatible == this.forwardCompatible )
|
||||
return this;
|
||||
|
||||
final ContextAttribs attribs = new ContextAttribs(this);
|
||||
attribs.forwardCompatible = forwardCompatible;
|
||||
return attribs;
|
||||
}
|
||||
|
||||
public ContextAttribs withProfileCore(final boolean profileCore) {
|
||||
if ( majorVersion < 3 || (majorVersion == 3 && minorVersion < 2) )
|
||||
throw new IllegalArgumentException("Profiles are only supported on OpenGL version 3.2 or higher.");
|
||||
|
||||
if ( profileCore == this.profileCore )
|
||||
return this;
|
||||
|
||||
final ContextAttribs attribs = new ContextAttribs(this);
|
||||
attribs.profileCore = profileCore;
|
||||
if ( profileCore )
|
||||
attribs.profileCompatibility = false;
|
||||
|
||||
return attribs;
|
||||
}
|
||||
|
||||
public ContextAttribs withProfileCompatibility(final boolean profileCompatibility) {
|
||||
if ( majorVersion < 3 || (majorVersion == 3 && minorVersion < 2) )
|
||||
throw new IllegalArgumentException("Profiles are only supported on OpenGL version 3.2 or higher.");
|
||||
|
||||
if ( profileCompatibility == this.profileCompatibility )
|
||||
return this;
|
||||
|
||||
final ContextAttribs attribs = new ContextAttribs(this);
|
||||
attribs.profileCompatibility = profileCompatibility;
|
||||
if ( profileCompatibility )
|
||||
attribs.profileCore = false;
|
||||
|
||||
return attribs;
|
||||
}
|
||||
|
||||
private static ContextAttribsImplementation getImplementation() {
|
||||
switch ( LWJGLUtil.getPlatform() ) {
|
||||
case LWJGLUtil.PLATFORM_LINUX:
|
||||
|
@ -168,6 +224,14 @@ public final class ContextAttribs {
|
|||
if ( 0 < flags )
|
||||
attribCount++;
|
||||
|
||||
int profileMask = 0;
|
||||
if ( profileCore )
|
||||
profileMask |= implementation.getProfileCoreBit();
|
||||
else if ( profileCompatibility )
|
||||
profileMask |= implementation.getProfileCompatibilityBit();
|
||||
if ( 0 < profileMask )
|
||||
attribCount++;
|
||||
|
||||
if ( attribCount == 0 )
|
||||
return null;
|
||||
|
||||
|
@ -181,6 +245,8 @@ public final class ContextAttribs {
|
|||
attribs.put(implementation.getLayerPlaneAttrib()).put(layerPlane);
|
||||
if ( 0 < flags )
|
||||
attribs.put(implementation.getFlagsAttrib()).put(flags);
|
||||
if ( 0 < profileMask )
|
||||
attribs.put(implementation.getProfileMaskAttrib()).put(profileMask);
|
||||
|
||||
attribs.put(0);
|
||||
attribs.rewind();
|
||||
|
@ -195,6 +261,13 @@ public final class ContextAttribs {
|
|||
sb.append(" - Layer=").append(layerPlane);
|
||||
sb.append(" - Debug=").append(debug);
|
||||
sb.append(" - ForwardCompatible=").append(forwardCompatible);
|
||||
sb.append(" - Profile=");
|
||||
if ( profileCore )
|
||||
sb.append("Core");
|
||||
else if ( profileCompatibility )
|
||||
sb.append("Compatibility");
|
||||
else
|
||||
sb.append("None");
|
||||
|
||||
return sb.toString();
|
||||
}
|
||||
|
|
|
@ -47,4 +47,10 @@ interface ContextAttribsImplementation {
|
|||
|
||||
int getForwardCompatibleBit();
|
||||
|
||||
int getProfileMaskAttrib();
|
||||
|
||||
int getProfileCoreBit();
|
||||
|
||||
int getProfileCompatibilityBit();
|
||||
|
||||
}
|
|
@ -200,6 +200,8 @@ public final class GLContext {
|
|||
}
|
||||
|
||||
// ----------------------[ 3.X ]----------------------
|
||||
if ( 3 < majorVersion || (3 == majorVersion && 2 <= minorVersion) )
|
||||
supported_extensions.add("OpenGL32");
|
||||
if ( 3 < majorVersion || (3 == majorVersion && 1 <= minorVersion) )
|
||||
supported_extensions.add("OpenGL31");
|
||||
if ( 3 <= majorVersion )
|
||||
|
|
|
@ -44,10 +44,14 @@ final class LinuxContextAttribs implements ContextAttribsImplementation {
|
|||
private static final int GLX_CONTEXT_MINOR_VERSION_ARB = 0x2092;
|
||||
private static final int GLX_CONTEXT_LAYER_PLANE_ARB = 0x2093;
|
||||
private static final int GLX_CONTEXT_FLAGS_ARB = 0x2094;
|
||||
private static final int GLX_CONTEXT_PROFILE_MASK_ARB = 0x9126;
|
||||
|
||||
private static final int GLX_CONTEXT_DEBUG_BIT_ARB = 0x0001;
|
||||
private static final int GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB = 0x0002;
|
||||
|
||||
private static final int GLX_CONTEXT_CORE_PROFILE_BIT_ARB = 0x00000001;
|
||||
private static final int GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB = 0x00000002;
|
||||
|
||||
LinuxContextAttribs() {
|
||||
}
|
||||
|
||||
|
@ -75,4 +79,16 @@ final class LinuxContextAttribs implements ContextAttribsImplementation {
|
|||
return GLX_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB;
|
||||
}
|
||||
|
||||
public int getProfileMaskAttrib() {
|
||||
return GLX_CONTEXT_PROFILE_MASK_ARB;
|
||||
}
|
||||
|
||||
public int getProfileCoreBit() {
|
||||
return GLX_CONTEXT_CORE_PROFILE_BIT_ARB;
|
||||
}
|
||||
|
||||
public int getProfileCompatibilityBit() {
|
||||
return GLX_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB;
|
||||
}
|
||||
|
||||
}
|
|
@ -44,10 +44,14 @@ final class MacOSXContextAttribs implements ContextAttribsImplementation {
|
|||
private static final int XGL_CONTEXT_MINOR_VERSION_ARB = 0x2092;
|
||||
private static final int XGL_CONTEXT_LAYER_PLANE_ARB = 0x2093;
|
||||
private static final int XGL_CONTEXT_FLAGS_ARB = 0x2094;
|
||||
private static final int XGL_CONTEXT_PROFILE_MASK_ARB = 0x9126;
|
||||
|
||||
private static final int XGL_CONTEXT_DEBUG_BIT_ARB = 0x0001;
|
||||
private static final int XGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB = 0x0002;
|
||||
|
||||
private static final int XGL_CONTEXT_CORE_PROFILE_BIT_ARB = 0x00000001;
|
||||
private static final int XGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB = 0x00000002;
|
||||
|
||||
MacOSXContextAttribs() {
|
||||
}
|
||||
|
||||
|
@ -75,4 +79,16 @@ final class MacOSXContextAttribs implements ContextAttribsImplementation {
|
|||
return XGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB;
|
||||
}
|
||||
|
||||
public int getProfileMaskAttrib() {
|
||||
return XGL_CONTEXT_PROFILE_MASK_ARB;
|
||||
}
|
||||
|
||||
public int getProfileCoreBit() {
|
||||
return XGL_CONTEXT_CORE_PROFILE_BIT_ARB;
|
||||
}
|
||||
|
||||
public int getProfileCompatibilityBit() {
|
||||
return XGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB;
|
||||
}
|
||||
|
||||
}
|
|
@ -42,10 +42,14 @@ final class WindowsContextAttribs implements ContextAttribsImplementation {
|
|||
private static final int WGL_CONTEXT_MINOR_VERSION_ARB = 0x2092;
|
||||
private static final int WGL_CONTEXT_LAYER_PLANE_ARB = 0x2093;
|
||||
private static final int WGL_CONTEXT_FLAGS_ARB = 0x2094;
|
||||
private static final int WGL_CONTEXT_PROFILE_MASK_ARB = 0x9126;
|
||||
|
||||
private static final int WGL_CONTEXT_DEBUG_BIT_ARB = 0x0001;
|
||||
private static final int WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB = 0x0002;
|
||||
|
||||
private static final int WGL_CONTEXT_CORE_PROFILE_BIT_ARB = 0x00000001;
|
||||
private static final int WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB = 0x00000002;
|
||||
|
||||
WindowsContextAttribs() {
|
||||
}
|
||||
|
||||
|
@ -73,4 +77,16 @@ final class WindowsContextAttribs implements ContextAttribsImplementation {
|
|||
return WGL_CONTEXT_FORWARD_COMPATIBLE_BIT_ARB;
|
||||
}
|
||||
|
||||
public int getProfileMaskAttrib() {
|
||||
return WGL_CONTEXT_PROFILE_MASK_ARB;
|
||||
}
|
||||
|
||||
public int getProfileCoreBit() {
|
||||
return WGL_CONTEXT_CORE_PROFILE_BIT_ARB;
|
||||
}
|
||||
|
||||
public int getProfileCompatibilityBit() {
|
||||
return WGL_CONTEXT_COMPATIBILITY_PROFILE_BIT_ARB;
|
||||
}
|
||||
|
||||
}
|
|
@ -48,17 +48,23 @@ public class FieldsGenerator {
|
|||
if (!(field_type instanceof PrimitiveType))
|
||||
throw new RuntimeException("Field " + field.getSimpleName() + " is not a primitive type");
|
||||
PrimitiveType field_type_prim = (PrimitiveType)field_type;
|
||||
if (field_type_prim.getKind() != PrimitiveType.Kind.INT)
|
||||
throw new RuntimeException("Field " + field.getSimpleName() + " is not of type 'int'");
|
||||
Integer field_value = (Integer)field.getConstantValue();
|
||||
if (field_type_prim.getKind() != PrimitiveType.Kind.INT && field_type_prim.getKind() != PrimitiveType.Kind.LONG)
|
||||
throw new RuntimeException("Field " + field.getSimpleName() + " is not of type 'int' or 'long'");
|
||||
Object field_value = field.getConstantValue();
|
||||
if (field_value == null)
|
||||
throw new RuntimeException("Field " + field.getSimpleName() + " has no initial value");
|
||||
}
|
||||
|
||||
private static void generateField(PrintWriter writer, FieldDeclaration field) {
|
||||
Integer field_value = (Integer)field.getConstantValue();
|
||||
validateField(field);
|
||||
String field_value_string = Integer.toHexString(field_value);
|
||||
|
||||
Object value = field.getConstantValue();
|
||||
String field_value_string;
|
||||
if ( value.getClass().equals(Integer.class) )
|
||||
field_value_string = Integer.toHexString((Integer)field.getConstantValue());
|
||||
else
|
||||
field_value_string = Long.toHexString((Long)field.getConstantValue()) + 'l';
|
||||
|
||||
Utils.printDocComment(writer, field);
|
||||
// Print field declaration
|
||||
writer.println("\tpublic static final " + field.getType().toString() + " " + field.getSimpleName() + " = 0x" + field_value_string + ";");
|
||||
|
|
|
@ -41,14 +41,16 @@ package org.lwjgl.util.generator;
|
|||
* $Id$
|
||||
*/
|
||||
|
||||
import com.sun.mirror.declaration.*;
|
||||
import com.sun.mirror.type.*;
|
||||
|
||||
import java.io.*;
|
||||
import java.util.*;
|
||||
import java.io.PrintWriter;
|
||||
import java.nio.*;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import com.sun.mirror.declaration.AnnotationMirror;
|
||||
import com.sun.mirror.type.PrimitiveType;
|
||||
|
||||
public class GLTypeMap implements TypeMap {
|
||||
|
||||
private static final Map<Class, PrimitiveType.Kind> native_types_to_primitive;
|
||||
|
||||
static {
|
||||
|
@ -78,11 +80,14 @@ public class GLTypeMap implements TypeMap {
|
|||
native_types_to_primitive.put(GLvoid.class, PrimitiveType.Kind.BYTE);
|
||||
native_types_to_primitive.put(GLint64EXT.class, PrimitiveType.Kind.LONG);
|
||||
native_types_to_primitive.put(GLuint64EXT.class, PrimitiveType.Kind.LONG);
|
||||
native_types_to_primitive.put(GLint64.class, PrimitiveType.Kind.LONG);
|
||||
native_types_to_primitive.put(GLuint64.class, PrimitiveType.Kind.LONG);
|
||||
native_types_to_primitive.put(GLsync.class, PrimitiveType.Kind.LONG);
|
||||
}
|
||||
|
||||
public PrimitiveType.Kind getPrimitiveTypeFromNativeType(Class native_type) {
|
||||
PrimitiveType.Kind kind = native_types_to_primitive.get(native_type);
|
||||
if (kind == null)
|
||||
if ( kind == null )
|
||||
throw new RuntimeException("Unsupported type " + native_type);
|
||||
return kind;
|
||||
}
|
||||
|
@ -96,50 +101,46 @@ public class GLTypeMap implements TypeMap {
|
|||
}
|
||||
|
||||
public Signedness getSignednessFromType(Class type) {
|
||||
if (GLuint.class.equals(type))
|
||||
if ( GLuint.class.equals(type) )
|
||||
return Signedness.UNSIGNED;
|
||||
else if (GLint.class.equals(type))
|
||||
else if ( GLint.class.equals(type) )
|
||||
return Signedness.SIGNED;
|
||||
else if (GLushort.class.equals(type))
|
||||
else if ( GLushort.class.equals(type) )
|
||||
return Signedness.UNSIGNED;
|
||||
else if (GLshort.class.equals(type))
|
||||
else if ( GLshort.class.equals(type) )
|
||||
return Signedness.SIGNED;
|
||||
else if (GLubyte.class.equals(type))
|
||||
else if ( GLubyte.class.equals(type) )
|
||||
return Signedness.UNSIGNED;
|
||||
else if (GLbyte.class.equals(type))
|
||||
else if ( GLbyte.class.equals(type) )
|
||||
return Signedness.SIGNED;
|
||||
else if (GLuint64EXT.class.equals(type))
|
||||
else if ( GLuint64EXT.class.equals(type) )
|
||||
return Signedness.UNSIGNED;
|
||||
else if (GLint64EXT.class.equals(type))
|
||||
else if ( GLint64EXT.class.equals(type) )
|
||||
return Signedness.SIGNED;
|
||||
else if ( GLuint64.class.equals(type) )
|
||||
return Signedness.UNSIGNED;
|
||||
else if ( GLint64.class.equals(type) )
|
||||
return Signedness.SIGNED;
|
||||
else
|
||||
return Signedness.NONE;
|
||||
}
|
||||
|
||||
public String translateAnnotation(Class annotation_type) {
|
||||
if (annotation_type.equals(GLuint.class))
|
||||
if ( annotation_type.equals(GLuint.class) || annotation_type.equals(GLint.class) )
|
||||
return "i";
|
||||
else if (annotation_type.equals(GLint.class))
|
||||
return "i";
|
||||
else if (annotation_type.equals(GLushort.class))
|
||||
return"s";
|
||||
else if (annotation_type.equals(GLshort.class))
|
||||
else if ( annotation_type.equals(GLushort.class) || annotation_type.equals(GLshort.class) )
|
||||
return "s";
|
||||
else if (annotation_type.equals(GLubyte.class))
|
||||
else if ( annotation_type.equals(GLubyte.class) || annotation_type.equals(GLbyte.class) )
|
||||
return "b";
|
||||
else if (annotation_type.equals(GLbyte.class))
|
||||
return "b";
|
||||
else if (annotation_type.equals(GLfloat.class))
|
||||
else if ( annotation_type.equals(GLfloat.class) )
|
||||
return "f";
|
||||
else if (annotation_type.equals(GLdouble.class))
|
||||
else if ( annotation_type.equals(GLdouble.class) )
|
||||
return "d";
|
||||
else if (annotation_type.equals(GLhalf.class))
|
||||
else if ( annotation_type.equals(GLhalf.class) )
|
||||
return "h";
|
||||
else if (annotation_type.equals(GLuint64EXT.class))
|
||||
else if ( annotation_type.equals(GLuint64EXT.class) || annotation_type.equals(GLint64EXT.class) || annotation_type.equals(GLuint64.class) || annotation_type.equals(GLint64.class) )
|
||||
return "i64";
|
||||
else if (annotation_type.equals(GLint64EXT.class))
|
||||
return "i64";
|
||||
else if (annotation_type.equals(GLboolean.class) || annotation_type.equals(GLvoid.class))
|
||||
else if ( annotation_type.equals(GLboolean.class) || annotation_type.equals(GLvoid.class) )
|
||||
return "";
|
||||
else
|
||||
throw new RuntimeException(annotation_type + " is not allowed");
|
||||
|
@ -147,7 +148,7 @@ public class GLTypeMap implements TypeMap {
|
|||
|
||||
public Class getNativeTypeFromPrimitiveType(PrimitiveType.Kind kind) {
|
||||
Class type;
|
||||
switch (kind) {
|
||||
switch ( kind ) {
|
||||
case INT:
|
||||
type = GLint.class;
|
||||
break;
|
||||
|
@ -184,43 +185,43 @@ public class GLTypeMap implements TypeMap {
|
|||
}
|
||||
|
||||
private static Class[] getValidBufferTypes(Class type) {
|
||||
if (type.equals(IntBuffer.class))
|
||||
return new Class[]{GLbitfield.class, GLenum.class, GLhandleARB.class, GLint.class,
|
||||
GLsizei.class, GLuint.class};
|
||||
else if (type.equals(FloatBuffer.class))
|
||||
return new Class[]{GLclampf.class, GLfloat.class};
|
||||
else if (type.equals(ByteBuffer.class))
|
||||
return new Class[]{GLboolean.class, GLbyte.class, GLcharARB.class, GLchar.class, GLubyte.class, GLvoid.class};
|
||||
else if (type.equals(ShortBuffer.class))
|
||||
return new Class[]{GLhalf.class, GLshort.class, GLushort.class};
|
||||
else if (type.equals(DoubleBuffer.class))
|
||||
return new Class[]{GLclampd.class, GLdouble.class};
|
||||
else if (type.equals(LongBuffer.class))
|
||||
return new Class[]{GLint64EXT.class, GLuint64EXT.class};
|
||||
if ( type.equals(IntBuffer.class) )
|
||||
return new Class[] { GLbitfield.class, GLenum.class, GLhandleARB.class, GLint.class,
|
||||
GLsizei.class, GLuint.class };
|
||||
else if ( type.equals(FloatBuffer.class) )
|
||||
return new Class[] { GLclampf.class, GLfloat.class };
|
||||
else if ( type.equals(ByteBuffer.class) )
|
||||
return new Class[] { GLboolean.class, GLbyte.class, GLcharARB.class, GLchar.class, GLubyte.class, GLvoid.class };
|
||||
else if ( type.equals(ShortBuffer.class) )
|
||||
return new Class[] { GLhalf.class, GLshort.class, GLushort.class };
|
||||
else if ( type.equals(DoubleBuffer.class) )
|
||||
return new Class[] { GLclampd.class, GLdouble.class };
|
||||
else if ( type.equals(LongBuffer.class) )
|
||||
return new Class[] { GLint64EXT.class, GLuint64EXT.class, GLint64.class, GLuint64.class, GLsync.class };
|
||||
else
|
||||
return new Class[]{};
|
||||
return new Class[] { };
|
||||
}
|
||||
|
||||
private static Class[] getValidPrimitiveTypes(Class type) {
|
||||
if (type.equals(long.class))
|
||||
return new Class[]{GLintptrARB.class, GLuint.class, GLintptr.class, GLsizeiptrARB.class, GLsizeiptr.class, GLint64EXT.class, GLuint64EXT.class};
|
||||
else if (type.equals(int.class))
|
||||
return new Class[]{GLbitfield.class, GLenum.class, GLhandleARB.class, GLint.class, GLuint.class,
|
||||
GLsizei.class};
|
||||
else if (type.equals(double.class))
|
||||
return new Class[]{GLclampd.class, GLdouble.class};
|
||||
else if (type.equals(float.class))
|
||||
return new Class[]{GLclampf.class, GLfloat.class};
|
||||
else if (type.equals(short.class))
|
||||
return new Class[]{GLhalf.class, GLshort.class, GLushort.class};
|
||||
else if (type.equals(byte.class))
|
||||
return new Class[]{GLbyte.class, GLcharARB.class, GLchar.class, GLubyte.class};
|
||||
else if (type.equals(boolean.class))
|
||||
return new Class[]{GLboolean.class};
|
||||
else if (type.equals(void.class))
|
||||
return new Class[]{GLvoid.class};
|
||||
if ( type.equals(long.class) )
|
||||
return new Class[] { GLintptrARB.class, GLuint.class, GLintptr.class, GLsizeiptrARB.class, GLsizeiptr.class, GLint64EXT.class, GLuint64EXT.class, GLint64.class, GLuint64.class, GLsync.class };
|
||||
else if ( type.equals(int.class) )
|
||||
return new Class[] { GLbitfield.class, GLenum.class, GLhandleARB.class, GLint.class, GLuint.class,
|
||||
GLsizei.class };
|
||||
else if ( type.equals(double.class) )
|
||||
return new Class[] { GLclampd.class, GLdouble.class };
|
||||
else if ( type.equals(float.class) )
|
||||
return new Class[] { GLclampf.class, GLfloat.class };
|
||||
else if ( type.equals(short.class) )
|
||||
return new Class[] { GLhalf.class, GLshort.class, GLushort.class };
|
||||
else if ( type.equals(byte.class) )
|
||||
return new Class[] { GLbyte.class, GLcharARB.class, GLchar.class, GLubyte.class };
|
||||
else if ( type.equals(boolean.class) )
|
||||
return new Class[] { GLboolean.class };
|
||||
else if ( type.equals(void.class) )
|
||||
return new Class[] { GLvoid.class };
|
||||
else
|
||||
return new Class[]{};
|
||||
return new Class[] { };
|
||||
}
|
||||
|
||||
public String getTypedefPrefix() {
|
||||
|
@ -233,55 +234,59 @@ public class GLTypeMap implements TypeMap {
|
|||
|
||||
public Class[] getValidAnnotationTypes(Class type) {
|
||||
Class[] valid_types;
|
||||
if (Buffer.class.isAssignableFrom(type))
|
||||
if ( Buffer.class.isAssignableFrom(type) )
|
||||
valid_types = getValidBufferTypes(type);
|
||||
else if (type.isPrimitive())
|
||||
else if ( type.isPrimitive() )
|
||||
valid_types = getValidPrimitiveTypes(type);
|
||||
else if (String.class.equals(type))
|
||||
valid_types = new Class[]{GLubyte.class};
|
||||
else if ( String.class.equals(type) )
|
||||
valid_types = new Class[] { GLubyte.class };
|
||||
else
|
||||
valid_types = new Class[]{};
|
||||
valid_types = new Class[] { };
|
||||
return valid_types;
|
||||
}
|
||||
|
||||
public Class getInverseType(Class type) {
|
||||
if (GLuint.class.equals(type))
|
||||
if ( GLuint.class.equals(type) )
|
||||
return GLint.class;
|
||||
else if (GLint.class.equals(type))
|
||||
else if ( GLint.class.equals(type) )
|
||||
return GLuint.class;
|
||||
else if (GLushort.class.equals(type))
|
||||
else if ( GLushort.class.equals(type) )
|
||||
return GLshort.class;
|
||||
else if (GLshort.class.equals(type))
|
||||
else if ( GLshort.class.equals(type) )
|
||||
return GLushort.class;
|
||||
else if (GLubyte.class.equals(type))
|
||||
else if ( GLubyte.class.equals(type) )
|
||||
return GLbyte.class;
|
||||
else if (GLbyte.class.equals(type))
|
||||
else if ( GLbyte.class.equals(type) )
|
||||
return GLubyte.class;
|
||||
else if (GLuint64EXT.class.equals(type))
|
||||
else if ( GLuint64EXT.class.equals(type) )
|
||||
return GLint64EXT.class;
|
||||
else if (GLint64EXT.class.equals(type))
|
||||
else if ( GLint64EXT.class.equals(type) )
|
||||
return GLuint64EXT.class;
|
||||
else if ( GLuint64.class.equals(type) )
|
||||
return GLint64.class;
|
||||
else if ( GLint64.class.equals(type) )
|
||||
return GLuint64.class;
|
||||
else
|
||||
return null;
|
||||
}
|
||||
|
||||
public String getAutoTypeFromAnnotation(AnnotationMirror annotation) {
|
||||
Class annotation_class = NativeTypeTranslator.getClassFromType(annotation.getAnnotationType());
|
||||
if (annotation_class.equals(GLint.class))
|
||||
if ( annotation_class.equals(GLint.class) )
|
||||
return "GL11.GL_INT";
|
||||
else if (annotation_class.equals(GLbyte.class))
|
||||
else if ( annotation_class.equals(GLbyte.class) )
|
||||
return "GL11.GL_BYTE";
|
||||
else if (annotation_class.equals(GLshort.class))
|
||||
else if ( annotation_class.equals(GLshort.class) )
|
||||
return "GL11.GL_SHORT";
|
||||
if (annotation_class.equals(GLuint.class))
|
||||
if ( annotation_class.equals(GLuint.class) )
|
||||
return "GL11.GL_UNSIGNED_INT";
|
||||
else if (annotation_class.equals(GLubyte.class))
|
||||
else if ( annotation_class.equals(GLubyte.class) )
|
||||
return "GL11.GL_UNSIGNED_BYTE";
|
||||
else if (annotation_class.equals(GLushort.class))
|
||||
else if ( annotation_class.equals(GLushort.class) )
|
||||
return "GL11.GL_UNSIGNED_SHORT";
|
||||
else if (annotation_class.equals(GLfloat.class))
|
||||
else if ( annotation_class.equals(GLfloat.class) )
|
||||
return "GL11.GL_FLOAT";
|
||||
else if (annotation_class.equals(GLdouble.class))
|
||||
else if ( annotation_class.equals(GLdouble.class) )
|
||||
return "GL11.GL_DOUBLE";
|
||||
else
|
||||
return null;
|
||||
|
|
|
@ -129,6 +129,9 @@ typedef unsigned short GLhalfNV;
|
|||
typedef unsigned short GLhalf;
|
||||
typedef int64_t GLint64EXT;
|
||||
typedef uint64_t GLuint64EXT;
|
||||
typedef int64_t GLint64;
|
||||
typedef uint64_t GLuint64;
|
||||
typedef struct __GLsync *GLsync;
|
||||
|
||||
/* helper stuff */
|
||||
|
||||
|
|
|
@ -0,0 +1,49 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
import org.lwjgl.util.generator.GLenum;
|
||||
import org.lwjgl.util.generator.GLuint;
|
||||
|
||||
public interface AMD_draw_buffers_blend {
|
||||
|
||||
void glBlendFuncIndexedAMD(@GLuint int buf, @GLenum int src, @GLenum int dst);
|
||||
|
||||
void glBlendFuncSeparateIndexedAMD(@GLuint int buf, @GLenum int srcRGB, @GLenum int dstRGB,
|
||||
@GLenum int srcAlpha, @GLenum int dstAlpha);
|
||||
|
||||
void glBlendEquationIndexedAMD(@GLuint int buf, @GLenum int mode);
|
||||
|
||||
void glBlendEquationSeparateIndexedAMD(@GLuint int buf, @GLenum int modeRGB,
|
||||
@GLenum int modeAlpha);
|
||||
|
||||
}
|
|
@ -0,0 +1,43 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
public interface ARB_depth_clamp {
|
||||
|
||||
/**
|
||||
* Accepted by the <cap> parameter of Enable, Disable, and IsEnabled,
|
||||
* and by the <pname> parameter of GetBooleanv, GetIntegerv,
|
||||
* GetFloatv, and GetDoublev:
|
||||
*/
|
||||
int GL_DEPTH_CLAMP = 0x864F;
|
||||
|
||||
}
|
|
@ -0,0 +1,47 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
import org.lwjgl.util.generator.GLenum;
|
||||
import org.lwjgl.util.generator.GLuint;
|
||||
|
||||
public interface ARB_draw_buffers_blend {
|
||||
|
||||
void glBlendEquationiARB(@GLuint int buf, @GLenum int mode);
|
||||
|
||||
void glBlendEquationSeparateiARB(@GLuint int buf, @GLenum int modeRGB, @GLenum int modeAlpha);
|
||||
|
||||
void glBlendFunciARB(@GLuint int buf, @GLenum int src, @GLenum int dst);
|
||||
|
||||
void glBlendFuncSeparateiARB(@GLuint int buf, @GLenum int srcRGB, @GLenum int dstRGB, @GLenum int srcAlpha, @GLenum int dstAlpha);
|
||||
|
||||
}
|
|
@ -0,0 +1,63 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
import org.lwjgl.util.generator.*;
|
||||
|
||||
import java.nio.Buffer;
|
||||
|
||||
public interface ARB_draw_elements_base_vertex {
|
||||
|
||||
void glDrawElementsBaseVertex(@GLenum int mode, @AutoSize("indices") @GLsizei int count, @AutoType("indices") @GLenum int type,
|
||||
@BufferObject(BufferKind.ElementVBO)
|
||||
@Const
|
||||
@GLubyte
|
||||
@GLushort
|
||||
@GLuint Buffer indices, int basevertex);
|
||||
|
||||
void glDrawRangeElementsBaseVertex(@GLenum int mode, @GLuint int start, @GLuint int end, @AutoSize("indices") @GLsizei int count, @AutoType("indices") @GLenum int type,
|
||||
@BufferObject(BufferKind.ElementVBO)
|
||||
@Const
|
||||
@GLubyte
|
||||
@GLushort
|
||||
@GLuint Buffer indices, int basevertex);
|
||||
|
||||
void glDrawElementsInstancedBaseVertex(@GLenum int mode, @AutoSize("indices") @GLsizei int count, @AutoType("indices") @GLenum int type,
|
||||
@BufferObject(BufferKind.ElementVBO)
|
||||
@Const
|
||||
@GLubyte
|
||||
@GLushort
|
||||
@GLuint Buffer indices, @GLsizei int primcount, int basevertex);
|
||||
|
||||
//void glMultiDrawElementsBaseVertex(@GLenum int mode, @GLsizei*count, @GLenum int type, void**indices, @GLsizei int primcount, int*basevertex)
|
||||
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
public interface ARB_fragment_coord_conventions {
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
import org.lwjgl.util.generator.GLenum;
|
||||
|
||||
public interface ARB_provoking_vertex {
|
||||
|
||||
/** Accepted by the <mode> parameter of ProvokingVertex: */
|
||||
int GL_FIRST_VERTEX_CONVENTION = 0x8E4D;
|
||||
int GL_LAST_VERTEX_CONVENTION = 0x8E4E;
|
||||
|
||||
/**
|
||||
* Accepted by the <pname> parameter of GetBooleanv, GetIntegerv,
|
||||
* GetFloatv, and GetDoublev:
|
||||
*/
|
||||
int GL_PROVOKING_VERTEX = 0x8E4F;
|
||||
int GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION = 0x8E4C;
|
||||
|
||||
void glProvokingVertex(@GLenum int mode);
|
||||
|
||||
}
|
|
@ -0,0 +1,53 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
import org.lwjgl.util.generator.GLclampf;
|
||||
|
||||
public interface ARB_sample_shading {
|
||||
|
||||
/**
|
||||
* Accepted by the <cap> parameter of Enable, Disable, and IsEnabled,
|
||||
* and by the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv,
|
||||
* and GetDoublev:
|
||||
*/
|
||||
int GL_SAMPLE_SHADING_ARB = 0x8C36;
|
||||
|
||||
/**
|
||||
* Accepted by the <pname> parameter of GetBooleanv, GetDoublev,
|
||||
* GetIntegerv, and GetFloatv:
|
||||
*/
|
||||
int GL_MIN_SAMPLE_SHADING_VALUE_ARB = 0x8C37;
|
||||
|
||||
void glMinSampleShadingARB(@GLclampf float value);
|
||||
|
||||
}
|
|
@ -0,0 +1,43 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
public interface ARB_seamless_cube_map {
|
||||
|
||||
/**
|
||||
* Accepted by the <cap> parameter of Enable, Disable and IsEnabled,
|
||||
* and by the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv
|
||||
* and GetDoublev:
|
||||
*/
|
||||
int GL_TEXTURE_CUBE_MAP_SEAMLESS = 0x884F;
|
||||
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
public interface ARB_shader_texture_lod {
|
||||
}
|
|
@ -0,0 +1,93 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
import org.lwjgl.util.generator.*;
|
||||
|
||||
import java.nio.IntBuffer;
|
||||
import java.nio.LongBuffer;
|
||||
|
||||
@Extension(postfix = "")
|
||||
public interface ARB_sync {
|
||||
|
||||
/** Accepted as the <pname> parameter of GetInteger64v: */
|
||||
int GL_MAX_SERVER_WAIT_TIMEOUT = 0x9111;
|
||||
|
||||
/** Accepted as the <pname> parameter of GetSynciv: */
|
||||
int GL_OBJECT_TYPE = 0x9112;
|
||||
int GL_SYNC_CONDITION = 0x9113;
|
||||
int GL_SYNC_STATUS = 0x9114;
|
||||
int GL_SYNC_FLAGS = 0x9115;
|
||||
|
||||
/** Returned in <values> for GetSynciv <pname> OBJECT_TYPE: */
|
||||
int GL_SYNC_FENCE = 0x9116;
|
||||
|
||||
/** Returned in <values> for GetSynciv <pname> SYNC_CONDITION: */
|
||||
int GL_SYNC_GPU_COMMANDS_COMPLETE = 0x9117;
|
||||
|
||||
/** Returned in <values> for GetSynciv <pname> SYNC_STATUS: */
|
||||
int GL_UNSIGNALED = 0x9118;
|
||||
int GL_SIGNALED = 0x9119;
|
||||
|
||||
/** Accepted in the <flags> parameter of ClientWaitSync: */
|
||||
int GL_SYNC_FLUSH_COMMANDS_BIT = 0x00000001;
|
||||
|
||||
/** Accepted in the <timeout> parameter of WaitSync: */
|
||||
long GL_TIMEOUT_IGNORED = 0xFFFFFFFFFFFFFFFFl;
|
||||
|
||||
/** Returned by ClientWaitSync: */
|
||||
int GL_ALREADY_SIGNALED = 0x911A;
|
||||
int GL_TIMEOUT_EXPIRED = 0x911B;
|
||||
int GL_CONDITION_SATISFIED = 0x911C;
|
||||
int GL_WAIT_FAILED = 0x911D;
|
||||
|
||||
@GLsync
|
||||
long glFenceSync(@GLenum int condition, @GLbitfield int flags);
|
||||
|
||||
boolean glIsSync(@GLsync long sync);
|
||||
|
||||
void glDeleteSync(@GLsync long sync);
|
||||
|
||||
@GLenum
|
||||
int glClientWaitSync(@GLsync long sync, @GLbitfield int flags, @GLuint64 long timeout);
|
||||
|
||||
void glWaitSync(@GLsync long sync, @GLbitfield int flags, @GLuint64 long timeout);
|
||||
|
||||
@StripPostfix("params")
|
||||
void glGetInteger64v(@GLenum int pname, @OutParameter @Check("1") @GLint64 LongBuffer params);
|
||||
|
||||
void glGetSynciv(@GLsync long sync, @GLenum int pname,
|
||||
@AutoSize("values") @GLsizei int bufSize,
|
||||
@OutParameter @GLsizei @Check(value = "1", canBeNull = true) IntBuffer length,
|
||||
@OutParameter IntBuffer values);
|
||||
|
||||
}
|
|
@ -0,0 +1,65 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
public interface ARB_texture_cube_map_array {
|
||||
|
||||
/**
|
||||
* Accepted by the <target> parameter of TexParameteri, TexParameteriv,
|
||||
* TexParameterf, TexParameterfv, BindTexture, and GenerateMipmap:
|
||||
* <p/>
|
||||
* Accepted by the <target> parameter of TexImage3D, TexSubImage3D,
|
||||
* CompressedTeximage3D, CompressedTexSubImage3D and CopyTexSubImage3D:
|
||||
* <p/>
|
||||
* Accepted by the <tex> parameter of GetTexImage:
|
||||
*/
|
||||
int GL_TEXTURE_CUBE_MAP_ARRAY_ARB = 0x9009;
|
||||
|
||||
/**
|
||||
* Accepted by the <pname> parameter of GetBooleanv, GetDoublev,
|
||||
* GetIntegerv and GetFloatv:
|
||||
*/
|
||||
int GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB = 0x900A;
|
||||
|
||||
/**
|
||||
* Accepted by the <target> parameter of TexImage3D, TexSubImage3D,
|
||||
* CompressedTeximage3D, CompressedTexSubImage3D and CopyTexSubImage3D:
|
||||
*/
|
||||
int GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB = 0x900B;
|
||||
|
||||
/** Returned by the <type> parameter of GetActiveUniform: */
|
||||
int GL_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900C;
|
||||
int GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB = 0x900D;
|
||||
int GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900E;
|
||||
int GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900F;
|
||||
|
||||
}
|
|
@ -0,0 +1,44 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
public interface ARB_texture_gather {
|
||||
|
||||
/**
|
||||
* Accepted by the <pname> parameter of GetBooleanv, GetIntegerv,
|
||||
* GetFloatv, and GetDoublev:
|
||||
*/
|
||||
int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = 0x8E5E;
|
||||
int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = 0x8E5F;
|
||||
int GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB = 0x8F9F;
|
||||
|
||||
}
|
|
@ -0,0 +1,111 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
import org.lwjgl.util.generator.*;
|
||||
|
||||
import java.nio.FloatBuffer;
|
||||
|
||||
@Extension(postfix = "")
|
||||
public interface ARB_texture_multisample {
|
||||
|
||||
/** Accepted by the <pname> parameter of GetMultisamplefv: */
|
||||
int GL_SAMPLE_POSITION = 0x8E50;
|
||||
|
||||
/**
|
||||
* Accepted by the <cap> parameter of Enable, Disable, and IsEnabled, and by
|
||||
* the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv, and
|
||||
* GetDoublev:
|
||||
*/
|
||||
int GL_SAMPLE_MASK = 0x8E51;
|
||||
|
||||
/**
|
||||
* Accepted by the <target> parameter of GetBooleani_v and
|
||||
* GetIntegeri_v:
|
||||
*/
|
||||
int GL_SAMPLE_MASK_VALUE = 0x8E52;
|
||||
|
||||
/**
|
||||
* Accepted by the <target> parameter of BindTexture and
|
||||
* TexImage2DMultisample:
|
||||
*/
|
||||
int GL_TEXTURE_2D_MULTISAMPLE = 0x9100;
|
||||
|
||||
/** Accepted by the <target> parameter of TexImage2DMultisample: */
|
||||
int GL_PROXY_TEXTURE_2D_MULTISAMPLE = 0x9101;
|
||||
|
||||
/**
|
||||
* Accepted by the <target> parameter of BindTexture and
|
||||
* TexImage3DMultisample:
|
||||
*/
|
||||
int GL_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9102;
|
||||
|
||||
/** Accepted by the <target> parameter of TexImage3DMultisample: */
|
||||
int GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9103;
|
||||
|
||||
/**
|
||||
* Accepted by the <pname> parameter of GetBooleanv, GetDoublev, GetIntegerv,
|
||||
* and GetFloatv:
|
||||
*/
|
||||
int GL_MAX_SAMPLE_MASK_WORDS = 0x8E59;
|
||||
int GL_MAX_COLOR_TEXTURE_SAMPLES = 0x910E;
|
||||
int GL_MAX_DEPTH_TEXTURE_SAMPLES = 0x910F;
|
||||
int GL_MAX_INTEGER_SAMPLES = 0x9110;
|
||||
int GL_TEXTURE_BINDING_2D_MULTISAMPLE = 0x9104;
|
||||
int GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = 0x9105;
|
||||
|
||||
/** Accepted by the <pname> parameter of GetTexLevelParameter */
|
||||
int GL_TEXTURE_SAMPLES = 0x9106;
|
||||
int GL_TEXTURE_FIXED_SAMPLE_LOCATIONS = 0x9107;
|
||||
|
||||
/** Returned by the <type> parameter of GetActiveUniform: */
|
||||
int GL_SAMPLER_2D_MULTISAMPLE = 0x9108;
|
||||
int GL_INT_SAMPLER_2D_MULTISAMPLE = 0x9109;
|
||||
int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = 0x910A;
|
||||
int GL_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910B;
|
||||
int GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910C;
|
||||
int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910D;
|
||||
|
||||
void glTexImage2DMultisample(@GLenum int target, @GLsizei int samples, int internalformat,
|
||||
@GLsizei int width, @GLsizei int height,
|
||||
boolean fixedsamplelocations);
|
||||
|
||||
void glTexImage3DMultisample(@GLenum int target, @GLsizei int samples, int internalformat,
|
||||
@GLsizei int width, @GLsizei int height, @GLsizei int depth,
|
||||
boolean fixedsamplelocations);
|
||||
|
||||
@StripPostfix("val")
|
||||
void glGetMultisamplefv(@GLenum int pname, @GLuint int index, @OutParameter @Check("2") FloatBuffer val);
|
||||
|
||||
void glSampleMaski(@GLuint int index, @GLbitfield int mask);
|
||||
|
||||
}
|
|
@ -0,0 +1,35 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
public interface ARB_texture_query_lod {
|
||||
}
|
|
@ -0,0 +1,42 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
public interface ARB_vertex_array_bgra {
|
||||
|
||||
/**
|
||||
* Accepted by the <size> parameter of ColorPointer,
|
||||
* SecondaryColorPointer, and VertexAttribPointer:
|
||||
*/
|
||||
int GL_BGRA = 0x80E1;
|
||||
|
||||
}
|
|
@ -0,0 +1,49 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
import org.lwjgl.util.generator.*;
|
||||
|
||||
import java.nio.ByteBuffer;
|
||||
|
||||
public interface EXT_separate_shader_objects {
|
||||
|
||||
/** Accepted by <type> parameter to GetIntegerv and GetFloatv: */
|
||||
int GL_ACTIVE_PROGRAM_EXT = 0x8B8D;
|
||||
|
||||
void glUseShaderProgramEXT(@GLenum int type, @GLuint int program);
|
||||
|
||||
void glActiveProgramEXT(@GLuint int program);
|
||||
|
||||
@GLuint int glCreateShaderProgramEXT(@GLenum int type, @NullTerminated @Const @GLchar ByteBuffer string);
|
||||
|
||||
}
|
|
@ -0,0 +1,70 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
public interface EXT_texture_snorm {
|
||||
|
||||
/**
|
||||
* Accepted by the <internalFormat> parameter of TexImage1D,
|
||||
* TexImage2D, and TexImage3D:
|
||||
*/
|
||||
int GL_RED_SNORM = 0x8F90;
|
||||
int GL_RG_SNORM = 0x8F91;
|
||||
int GL_RGB_SNORM = 0x8F92;
|
||||
int GL_RGBA_SNORM = 0x8F93;
|
||||
int GL_ALPHA_SNORM = 0x9010;
|
||||
int GL_LUMINANCE_SNORM = 0x9011;
|
||||
int GL_LUMINANCE_ALPHA_SNORM = 0x9012;
|
||||
int GL_INTENSITY_SNORM = 0x9013;
|
||||
|
||||
int GL_R8_SNORM = 0x8F94;
|
||||
int GL_RG8_SNORM = 0x8F95;
|
||||
int GL_RGB8_SNORM = 0x8F96;
|
||||
int GL_RGBA8_SNORM = 0x8F97;
|
||||
int GL_ALPHA8_SNORM = 0x9014;
|
||||
int GL_LUMINANCE8_SNORM = 0x9015;
|
||||
int GL_LUMINANCE8_ALPHA8_SNORM = 0x9016;
|
||||
int GL_INTENSITY8_SNORM = 0x9017;
|
||||
|
||||
int GL_R16_SNORM = 0x8F98;
|
||||
int GL_RG16_SNORM = 0x8F99;
|
||||
int GL_RGB16_SNORM = 0x8F9A;
|
||||
int GL_RGBA16_SNORM = 0x8F9B;
|
||||
int GL_ALPHA16_SNORM = 0x9018;
|
||||
int GL_LUMINANCE16_SNORM = 0x9019;
|
||||
int GL_LUMINANCE16_ALPHA16_SNORM = 0x901A;
|
||||
int GL_INTENSITY16_SNORM = 0x901B;
|
||||
|
||||
/** Returned by GetTexLevelParmeter */
|
||||
int GL_SIGNED_NORMALIZED = 0x8F9C;
|
||||
|
||||
}
|
|
@ -0,0 +1,318 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
import org.lwjgl.util.generator.*;
|
||||
|
||||
import java.nio.Buffer;
|
||||
import java.nio.FloatBuffer;
|
||||
import java.nio.LongBuffer;
|
||||
import java.nio.IntBuffer;
|
||||
|
||||
public interface GL32 {
|
||||
|
||||
// ----------------------------------------------------------
|
||||
// ----------------------[ OpenGL 3.2 ]----------------------
|
||||
// ----------------------------------------------------------
|
||||
|
||||
int GL_MAX_VERTEX_OUTPUT_COMPONENTS = 0x9122;
|
||||
int GL_MAX_GEOMETRY_INPUT_COMPONENTS = 0x9123;
|
||||
int GL_MAX_GEOMETRY_OUTPUT_COMPONENTS = 0x9124;
|
||||
int GL_MAX_FRAGMENT_INPUT_COMPONENTS = 0x9125;
|
||||
|
||||
// ---------------------------------------------------------------------
|
||||
// ----------------------[ ARB_vertex_array_bgra ]----------------------
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
int GL_BGRA = 0x80E1;
|
||||
|
||||
// -----------------------------------------------------------------------------
|
||||
// ----------------------[ ARB_draw_elements_base_vertex ]----------------------
|
||||
// -----------------------------------------------------------------------------
|
||||
|
||||
void glDrawElementsBaseVertex(@GLenum int mode, @AutoSize("indices") @GLsizei int count, @AutoType("indices") @GLenum int type,
|
||||
@BufferObject(BufferKind.ElementVBO)
|
||||
@Const
|
||||
@GLubyte
|
||||
@GLushort
|
||||
@GLuint Buffer indices, int basevertex);
|
||||
|
||||
void glDrawRangeElementsBaseVertex(@GLenum int mode, @GLuint int start, @GLuint int end, @AutoSize("indices") @GLsizei int count, @AutoType("indices") @GLenum int type,
|
||||
@BufferObject(BufferKind.ElementVBO)
|
||||
@Const
|
||||
@GLubyte
|
||||
@GLushort
|
||||
@GLuint Buffer indices, int basevertex);
|
||||
|
||||
void glDrawElementsInstancedBaseVertex(@GLenum int mode, @AutoSize("indices") @GLsizei int count, @AutoType("indices") @GLenum int type,
|
||||
@BufferObject(BufferKind.ElementVBO)
|
||||
@Const
|
||||
@GLubyte
|
||||
@GLushort
|
||||
@GLuint Buffer indices, @GLsizei int primcount, int basevertex);
|
||||
|
||||
//void glMultiDrawElementsBaseVertex(@GLenum int mode, @GLsizei*count, @GLenum int type, void**indices, @GLsizei int primcount, int*basevertex)
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
// ----------------------[ ARB_provoking_vertex ]----------------------
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
/** Accepted by the <mode> parameter of ProvokingVertex: */
|
||||
int GL_FIRST_VERTEX_CONVENTION = 0x8E4D;
|
||||
int GL_LAST_VERTEX_CONVENTION = 0x8E4E;
|
||||
|
||||
/**
|
||||
* Accepted by the <pname> parameter of GetBooleanv, GetIntegerv,
|
||||
* GetFloatv, and GetDoublev:
|
||||
*/
|
||||
int GL_PROVOKING_VERTEX = 0x8E4F;
|
||||
int GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION = 0x8E4C;
|
||||
|
||||
void glProvokingVertex(@GLenum int mode);
|
||||
|
||||
// ---------------------------------------------------------------------
|
||||
// ----------------------[ ARB_seamless_cube_map ]----------------------
|
||||
// ---------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Accepted by the <cap> parameter of Enable, Disable and IsEnabled,
|
||||
* and by the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv
|
||||
* and GetDoublev:
|
||||
*/
|
||||
int GL_TEXTURE_CUBE_MAP_SEAMLESS = 0x884F;
|
||||
|
||||
// -----------------------------------------------------------------------
|
||||
// ----------------------[ ARB_texture_multisample ]----------------------
|
||||
// -----------------------------------------------------------------------
|
||||
|
||||
/** Accepted by the <pname> parameter of GetMultisamplefv: */
|
||||
int GL_SAMPLE_POSITION = 0x8E50;
|
||||
|
||||
/**
|
||||
* Accepted by the <cap> parameter of Enable, Disable, and IsEnabled, and by
|
||||
* the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv, and
|
||||
* GetDoublev:
|
||||
*/
|
||||
int GL_SAMPLE_MASK = 0x8E51;
|
||||
|
||||
/**
|
||||
* Accepted by the <target> parameter of GetBooleani_v and
|
||||
* GetIntegeri_v:
|
||||
*/
|
||||
int GL_SAMPLE_MASK_VALUE = 0x8E52;
|
||||
|
||||
/**
|
||||
* Accepted by the <target> parameter of BindTexture and
|
||||
* TexImage2DMultisample:
|
||||
*/
|
||||
int GL_TEXTURE_2D_MULTISAMPLE = 0x9100;
|
||||
|
||||
/** Accepted by the <target> parameter of TexImage2DMultisample: */
|
||||
int GL_PROXY_TEXTURE_2D_MULTISAMPLE = 0x9101;
|
||||
|
||||
/**
|
||||
* Accepted by the <target> parameter of BindTexture and
|
||||
* TexImage3DMultisample:
|
||||
*/
|
||||
int GL_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9102;
|
||||
|
||||
/** Accepted by the <target> parameter of TexImage3DMultisample: */
|
||||
int GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9103;
|
||||
|
||||
/**
|
||||
* Accepted by the <pname> parameter of GetBooleanv, GetDoublev, GetIntegerv,
|
||||
* and GetFloatv:
|
||||
*/
|
||||
int GL_MAX_SAMPLE_MASK_WORDS = 0x8E59;
|
||||
int GL_MAX_COLOR_TEXTURE_SAMPLES = 0x910E;
|
||||
int GL_MAX_DEPTH_TEXTURE_SAMPLES = 0x910F;
|
||||
int GL_MAX_INTEGER_SAMPLES = 0x9110;
|
||||
int GL_TEXTURE_BINDING_2D_MULTISAMPLE = 0x9104;
|
||||
int GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = 0x9105;
|
||||
|
||||
/** Accepted by the <pname> parameter of GetTexLevelParameter */
|
||||
int GL_TEXTURE_SAMPLES = 0x9106;
|
||||
int GL_TEXTURE_FIXED_SAMPLE_LOCATIONS = 0x9107;
|
||||
|
||||
/** Returned by the <type> parameter of GetActiveUniform: */
|
||||
int GL_SAMPLER_2D_MULTISAMPLE = 0x9108;
|
||||
int GL_INT_SAMPLER_2D_MULTISAMPLE = 0x9109;
|
||||
int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = 0x910A;
|
||||
int GL_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910B;
|
||||
int GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910C;
|
||||
int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910D;
|
||||
|
||||
void glTexImage2DMultisample(@GLenum int target, @GLsizei int samples, int internalformat,
|
||||
@GLsizei int width, @GLsizei int height,
|
||||
boolean fixedsamplelocations);
|
||||
|
||||
void glTexImage3DMultisample(@GLenum int target, @GLsizei int samples, int internalformat,
|
||||
@GLsizei int width, @GLsizei int height, @GLsizei int depth,
|
||||
boolean fixedsamplelocations);
|
||||
|
||||
@StripPostfix("val")
|
||||
void glGetMultisamplefv(@GLenum int pname, @GLuint int index, @OutParameter @Check("2") FloatBuffer val);
|
||||
|
||||
void glSampleMaski(@GLuint int index, @GLbitfield int mask);
|
||||
|
||||
// ---------------------------------------------------------------
|
||||
// ----------------------[ ARB_depth_clamp ]----------------------
|
||||
// ---------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Accepted by the <cap> parameter of Enable, Disable, and IsEnabled,
|
||||
* and by the <pname> parameter of GetBooleanv, GetIntegerv,
|
||||
* GetFloatv, and GetDoublev:
|
||||
*/
|
||||
int GL_DEPTH_CLAMP = 0x864F;
|
||||
|
||||
// --------------------------------------------------------------------
|
||||
// ----------------------[ ARB_geometry_shader4 ]----------------------
|
||||
// --------------------------------------------------------------------
|
||||
|
||||
/**
|
||||
* Accepted by the <type> parameter of CreateShader and returned by the
|
||||
* <params> parameter of GetShaderiv:
|
||||
*/
|
||||
int GL_GEOMETRY_SHADER = 0x8DD9;
|
||||
|
||||
/**
|
||||
* Accepted by the <pname> parameter of ProgramParameteriEXT and
|
||||
* GetProgramiv:
|
||||
*/
|
||||
int GL_GEOMETRY_VERTICES_OUT = 0x8DDA;
|
||||
int GL_GEOMETRY_INPUT_TYPE = 0x8DDB;
|
||||
int GL_GEOMETRY_OUTPUT_TYPE = 0x8DDC;
|
||||
|
||||
/**
|
||||
* Accepted by the <pname> parameter of GetBooleanv, GetIntegerv,
|
||||
* GetFloatv, and GetDoublev:
|
||||
*/
|
||||
int GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS = 0x8C29;
|
||||
//int GL_MAX_GEOMETRY_VARYING_COMPONENTS = 0x8DDD; -- Missing from 3.2 spec
|
||||
//int GL_MAX_VERTEX_VARYING_COMPONENTS = 0x8DDE; -- Missing from 3.2 spec
|
||||
int GL_MAX_VARYING_COMPONENTS = 0x8B4B;
|
||||
int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS = 0x8DDF;
|
||||
int GL_MAX_GEOMETRY_OUTPUT_VERTICES = 0x8DE0;
|
||||
int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS = 0x8DE1;
|
||||
|
||||
/**
|
||||
* Accepted by the <mode> parameter of Begin, DrawArrays,
|
||||
* MultiDrawArrays, DrawElements, MultiDrawElements, and
|
||||
* DrawRangeElements:
|
||||
*/
|
||||
int GL_LINES_ADJACENCY = 0xA;
|
||||
int GL_LINE_STRIP_ADJACENCY = 0xB;
|
||||
int GL_TRIANGLES_ADJACENCY = 0xC;
|
||||
int GL_TRIANGLE_STRIP_ADJACENCY = 0xD;
|
||||
|
||||
/** Returned by CheckFramebufferStatusEXT: */
|
||||
int GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS = 0x8DA8;
|
||||
int GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT = 0x8DA9;
|
||||
|
||||
/**
|
||||
* Accepted by the <pname> parameter of GetFramebufferAttachment-
|
||||
* ParameterivEXT:
|
||||
*/
|
||||
int GL_FRAMEBUFFER_ATTACHMENT_LAYERED = 0x8DA7;
|
||||
int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 0x8CD4;
|
||||
|
||||
/**
|
||||
* Accepted by the <cap> parameter of Enable, Disable, and IsEnabled,
|
||||
* and by the <pname> parameter of GetIntegerv, GetFloatv, GetDoublev,
|
||||
* and GetBooleanv:
|
||||
*/
|
||||
int GL_PROGRAM_POINT_SIZE = 0x8642;
|
||||
|
||||
void glProgramParameteri(@GLuint int program, @GLenum int pname, int value);
|
||||
|
||||
void glFramebufferTexture(@GLenum int target, @GLenum int attachment, @GLuint int texture, int level);
|
||||
|
||||
void glFramebufferTextureLayer(@GLenum int target, @GLenum int attachment, @GLuint int texture, int level, int layer);
|
||||
|
||||
void glFramebufferTextureFace(@GLenum int target, @GLenum int attachment, @GLuint int texture, int level, @GLenum int face);
|
||||
|
||||
// --------------------------------------------------------
|
||||
// ----------------------[ ARB_sync ]----------------------
|
||||
// --------------------------------------------------------
|
||||
|
||||
/** Accepted as the <pname> parameter of GetInteger64v: */
|
||||
int GL_MAX_SERVER_WAIT_TIMEOUT = 0x9111;
|
||||
|
||||
/** Accepted as the <pname> parameter of GetSynciv: */
|
||||
int GL_OBJECT_TYPE = 0x9112;
|
||||
int GL_SYNC_CONDITION = 0x9113;
|
||||
int GL_SYNC_STATUS = 0x9114;
|
||||
int GL_SYNC_FLAGS = 0x9115;
|
||||
|
||||
/** Returned in <values> for GetSynciv <pname> OBJECT_TYPE: */
|
||||
int GL_SYNC_FENCE = 0x9116;
|
||||
|
||||
/** Returned in <values> for GetSynciv <pname> SYNC_CONDITION: */
|
||||
int GL_SYNC_GPU_COMMANDS_COMPLETE = 0x9117;
|
||||
|
||||
/** Returned in <values> for GetSynciv <pname> SYNC_STATUS: */
|
||||
int GL_UNSIGNALED = 0x9118;
|
||||
int GL_SIGNALED = 0x9119;
|
||||
|
||||
/** Accepted in the <flags> parameter of ClientWaitSync: */
|
||||
int GL_SYNC_FLUSH_COMMANDS_BIT = 0x00000001;
|
||||
|
||||
/** Accepted in the <timeout> parameter of WaitSync: */
|
||||
long GL_TIMEOUT_IGNORED = 0xFFFFFFFFFFFFFFFFl;
|
||||
|
||||
/** Returned by ClientWaitSync: */
|
||||
int GL_ALREADY_SIGNALED = 0x911A;
|
||||
int GL_TIMEOUT_EXPIRED = 0x911B;
|
||||
int GL_CONDITION_SATISFIED = 0x911C;
|
||||
int GL_WAIT_FAILED = 0x911D;
|
||||
|
||||
/*
|
||||
@GLsync long glFenceSync(@GLenum int condition, @GLbitfield int flags);
|
||||
|
||||
boolean glIsSync(@GLsync long sync);
|
||||
|
||||
void glDeleteSync(@GLsync long sync);
|
||||
|
||||
@GLenum int glClientWaitSync(@GLsync long sync, @GLbitfield int flags, @GLuint64 long timeout);
|
||||
|
||||
void glWaitSync(@GLsync long sync, @GLbitfield int flags, @GLuint64 long timeout);
|
||||
|
||||
@StripPostfix("params")
|
||||
void glGetInteger64v(@GLenum int pname, @OutParameter @Check("1") @GLint64 LongBuffer params);
|
||||
|
||||
void glGetSynciv(@GLsync long sync, @GLenum int pname,
|
||||
@AutoSize("values") @GLsizei int bufSize,
|
||||
@OutParameter @GLsizei @Check(value = "1", canBeNull = true) IntBuffer length,
|
||||
@OutParameter IntBuffer values);
|
||||
*/
|
||||
}
|
|
@ -0,0 +1,49 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
import org.lwjgl.util.generator.GLenum;
|
||||
import org.lwjgl.util.generator.GLsizei;
|
||||
import org.lwjgl.util.generator.GLuint;
|
||||
|
||||
public interface NV_copy_image {
|
||||
|
||||
void glCopyImageSubDataNV(
|
||||
@GLuint int srcName, @GLenum int srcTarget, int srcLevel,
|
||||
int srcX, int srcY, int srcZ,
|
||||
@GLuint int dstName, @GLenum int dstTarget, int dstLevel,
|
||||
int dstX, int dstY, int dstZ,
|
||||
@GLsizei int width, @GLsizei int height, @GLsizei int depth);
|
||||
|
||||
// TODO: Implement WGL and GLX cross-context copying.
|
||||
|
||||
}
|
|
@ -0,0 +1,36 @@
|
|||
/*
|
||||
* Copyright (c) 2002-2008 LWJGL Project
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
*
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
*
|
||||
* * Neither the name of 'LWJGL' nor the names of
|
||||
* its contributors may be used to endorse or promote products derived
|
||||
* from this software without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
||||
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
package org.lwjgl.opengl;
|
||||
|
||||
public interface NV_parameter_buffer_object2 {
|
||||
|
||||
}
|
Loading…
Reference in New Issue