diff options
Diffstat (limited to 'src/mesa/drivers')
-rw-r--r-- | src/mesa/drivers/common/driverfuncs.c | 6 | ||||
-rw-r--r-- | src/mesa/drivers/dri/common/extension_helper.h | 38 |
2 files changed, 44 insertions, 0 deletions
diff --git a/src/mesa/drivers/common/driverfuncs.c b/src/mesa/drivers/common/driverfuncs.c index 9838e0b5ec..3ccbe54817 100644 --- a/src/mesa/drivers/common/driverfuncs.c +++ b/src/mesa/drivers/common/driverfuncs.c @@ -43,6 +43,7 @@ #include "fbobject.h" #include "texrender.h" #endif +#include "arrayobj.h" #include "driverfuncs.h" #include "tnl/tnl.h" @@ -220,6 +221,11 @@ _mesa_init_driver_functions(struct dd_function_table *driver) driver->BeginQuery = NULL; driver->EndQuery = NULL; + /* APPLE_vertex_array_object */ + driver->NewArrayObject = _mesa_new_array_object; + driver->DeleteArrayObject = _mesa_delete_array_object; + driver->BindArrayObject = NULL; + /* T&L stuff */ driver->NeedValidate = GL_FALSE; driver->ValidateTnlModule = NULL; diff --git a/src/mesa/drivers/dri/common/extension_helper.h b/src/mesa/drivers/dri/common/extension_helper.h index c21607c6be..6c8f71d66a 100644 --- a/src/mesa/drivers/dri/common/extension_helper.h +++ b/src/mesa/drivers/dri/common/extension_helper.h @@ -397,6 +397,13 @@ static const char UniformMatrix4fvARB_names[] = ""; #endif +#if defined(need_GL_APPLE_vertex_array_object) +static const char DeleteVertexArraysAPPLE_names[] = + "ip\0" /* Parameter signature */ + "glDeleteVertexArraysAPPLE\0" + ""; +#endif + #if defined(need_GL_SGIX_instruments) static const char ReadInstrumentsSGIX_names[] = "i\0" /* Parameter signature */ @@ -2472,6 +2479,13 @@ static const char ReplacementCodeuivSUN_names[] = ""; #endif +#if defined(need_GL_APPLE_vertex_array_object) +static const char GenVertexArraysAPPLE_names[] = + "ip\0" /* Parameter signature */ + "glGenVertexArraysAPPLE\0" + ""; +#endif + #if defined(need_GL_VERSION_1_4) || defined(need_GL_ARB_window_pos) || defined(need_GL_MESA_window_pos) static const char WindowPos2iMESA_names[] = "ii\0" /* Parameter signature */ @@ -3775,6 +3789,13 @@ static const char TexCoord4fVertex4fSUN_names[] = ""; #endif +#if defined(need_GL_APPLE_vertex_array_object) +static const char BindVertexArrayAPPLE_names[] = + "i\0" /* Parameter signature */ + "glBindVertexArrayAPPLE\0" + ""; +#endif + #if defined(need_GL_ARB_vertex_program) static const char GetProgramLocalParameterdvARB_names[] = "iip\0" /* Parameter signature */ @@ -3806,6 +3827,13 @@ static const char BlendFuncSeparateEXT_names[] = ""; #endif +#if defined(need_GL_APPLE_vertex_array_object) +static const char IsVertexArrayAPPLE_names[] = + "i\0" /* Parameter signature */ + "glIsVertexArrayAPPLE\0" + ""; +#endif + #if defined(need_GL_NV_vertex_program) static const char ProgramParameters4dvNV_names[] = "iiip\0" /* Parameter signature */ @@ -4606,6 +4634,16 @@ static const struct dri_extension_function GL_3DFX_tbuffer_functions[] = { }; #endif +#if defined(need_GL_APPLE_vertex_array_object) +static const struct dri_extension_function GL_APPLE_vertex_array_object_functions[] = { + { DeleteVertexArraysAPPLE_names, DeleteVertexArraysAPPLE_remap_index, 820 }, + { GenVertexArraysAPPLE_names, GenVertexArraysAPPLE_remap_index, 821 }, + { BindVertexArrayAPPLE_names, BindVertexArrayAPPLE_remap_index, 819 }, + { IsVertexArrayAPPLE_names, IsVertexArrayAPPLE_remap_index, 822 }, + { NULL, 0, 0 } +}; +#endif + #if defined(need_GL_ARB_draw_buffers) static const struct dri_extension_function GL_ARB_draw_buffers_functions[] = { { DrawBuffersARB_names, DrawBuffersARB_remap_index, 413 }, |