Added support for ARB_vertex_buffer_object

This commit is contained in:
Elias Naur 2003-04-03 11:32:32 +00:00
parent 267b868db7
commit d7ff86a7d3
6 changed files with 421 additions and 4 deletions

View file

@ -1481,6 +1481,18 @@ public class GL extends CoreGL implements GLConstants {
int outZ,
int outW);
public native void bindBufferARB(int target, int buffer);
public native void deleteBuffersARB(int n, int buffers);
public native void genBuffersARB(int n, int buffers);
public native boolean isBufferARB(int buffer);
public native void bufferDataARB(int target, int size, int data, int usage);
public native void bufferSubDataARB(int target, int offset, int size, int data);
public native void getBufferSubDataARB(int target, int offset, int size, int data);
public native int mapBufferARB(int target, int access);
public native boolean unmapBufferARB(int target);
public native void getBufferParameterivARB(int target, int pname, int params);
public native void getBufferPointervARB(int target, int pname, int params);
/*
* Available extensions
*/
@ -1503,6 +1515,7 @@ public class GL extends CoreGL implements GLConstants {
public boolean ARB_transpose_matrix;
public boolean ARB_vertex_blend;
public boolean ARB_vertex_program;
public boolean ARB_vertex_buffer_object;
public boolean ARB_window_pos;
public boolean EXT_abgr;
public boolean EXT_bgra;

View file

@ -0,0 +1,77 @@
/*
* Copyright (c) 2002 Lightweight Java Game Library 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 'Light Weight Java Game Library' 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.
*/
/**
* $Id$
*
* ARB_vertex_buffer_object constants.
*
* @author elias_naur <elias_naur@users.sourceforge.net>
* @version $Revision$
*/
package org.lwjgl.opengl.arb;
public interface ARBVertexBufferObject
{
public static final int ARRAY_BUFFER_ARB = 0x8892;
public static final int ELEMENT_ARRAY_BUFFER_ARB = 0x8893;
public static final int ARRAY_BUFFER_BINDING_ARB = 0x8894;
public static final int ELEMENT_ARRAY_BUFFER_BINDING_ARB = 0x8895;
public static final int VERTEX_ARRAY_BUFFER_BINDING_ARB = 0x8896;
public static final int NORMAL_ARRAY_BUFFER_BINDING_ARB = 0x8897;
public static final int COLOR_ARRAY_BUFFER_BINDING_ARB = 0x8898;
public static final int INDEX_ARRAY_BUFFER_BINDING_ARB = 0x8899;
public static final int TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB = 0x889A;
public static final int EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB = 0x889B;
public static final int SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x889C;
public static final int FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB = 0x889D;
public static final int WEIGHT_ARRAY_BUFFER_BINDING_ARB = 0x889E;
public static final int VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB = 0x889F;
public static final int STREAM_DRAW_ARB = 0x88E0;
public static final int STREAM_READ_ARB = 0x88E1;
public static final int STREAM_COPY_ARB = 0x88E2;
public static final int STATIC_DRAW_ARB = 0x88E4;
public static final int STATIC_READ_ARB = 0x88E5;
public static final int STATIC_COPY_ARB = 0x88E6;
public static final int DYNAMIC_DRAW_ARB = 0x88E8;
public static final int DYNAMIC_READ_ARB = 0x88E9;
public static final int DYNAMIC_COPY_ARB = 0x88EA;
public static final int READ_ONLY_ARB = 0x88B8;
public static final int WRITE_ONLY_ARB = 0x88B9;
public static final int READ_WRITE_ARB = 0x88BA;
public static final int BUFFER_SIZE_ARB = 0x8764;
public static final int BUFFER_USAGE_ARB = 0x8765;
public static final int BUFFER_ACCESS_ARB = 0x88BB;
public static final int BUFFER_MAPPED_ARB = 0x88BC;
public static final int BUFFER_MAP_POINTER_ARB = 0x88BD;
}