X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Ffg_gl2.c;h=38b0acbb26e4f8e102aaea4d68e150feb1217ac7;hb=207c3128bf025b5e025bace5c0425d380dd72aa9;hp=9e31502bb916c833f16f1be044dee37bafdf0b13;hpb=cadeadc74ba1ce5c9d81bb72f29504a007b28cae;p=freeglut diff --git a/src/fg_gl2.c b/src/fg_gl2.c index 9e31502..38b0acb 100644 --- a/src/fg_gl2.c +++ b/src/fg_gl2.c @@ -37,18 +37,26 @@ void FGAPIENTRY glutSetVertexAttribNormal(GLint attrib) { fgStructure.CurrentWindow->Window.attribute_v_normal = attrib; } +void FGAPIENTRY glutSetVertexAttribTexCoord2(GLint attrib) { + if (fgStructure.CurrentWindow != NULL) + fgStructure.CurrentWindow->Window.attribute_v_texture = attrib; +} + void fgInitGL2() { - fgState.HasOpenGL20 = 0; - // TODO: Mesa returns a valid stub function, rather than NULL, - // when we request a non-existent function +#ifdef GL_ES_VERSION_2_0 + fgState.HasOpenGL20 = (fgState.MajorVersion >= 2); +#else + /* TODO: Mesa returns a valid stub function, rather than NULL, + when we request a non-existent function */ #define CHECK(func, a) if ((a) == NULL) { fgWarning("fgInitGL2: " func " is NULL"); return; } - CHECK("fghGenBuffers", fghGenBuffers = (FGH_PFNGLGENBUFFERSPROC) glutGetProcAddress ("glGenBuffers")); - CHECK("fghDeleteBuffers", fghDeleteBuffers = (FGH_PFNGLDELETEBUFFERSPROC) glutGetProcAddress ("glDeleteBuffers")); - CHECK("fghBindBuffer", fghBindBuffer = (FGH_PFNGLBINDBUFFERPROC) glutGetProcAddress ("glBindBuffer")); - CHECK("fghBufferData", fghBufferData = (FGH_PFNGLBUFFERDATAPROC) glutGetProcAddress ("glBufferData")); - CHECK("fghVertexAttribPointer", fghVertexAttribPointer = (FGH_PFNGLVERTEXATTRIBPOINTERPROC) glutGetProcAddress ("glVertexAttribPointer")); - CHECK("fghEnableVertexAttribArray", fghEnableVertexAttribArray = (FGH_PFNGLENABLEVERTEXATTRIBARRAYPROC) glutGetProcAddress ("glEnableVertexAttribArray")); - CHECK("fghDisableVertexAttribArray", fghDisableVertexAttribArray = (FGH_PFNGLDISABLEVERTEXATTRIBARRAYPROC) glutGetProcAddress ("glDisableVertexAttribArray")); + CHECK("fghGenBuffers", fghGenBuffers = (FGH_PFNGLGENBUFFERSPROC)glutGetProcAddress("glGenBuffers")); + CHECK("fghDeleteBuffers", fghDeleteBuffers = (FGH_PFNGLDELETEBUFFERSPROC)glutGetProcAddress("glDeleteBuffers")); + CHECK("fghBindBuffer", fghBindBuffer = (FGH_PFNGLBINDBUFFERPROC)glutGetProcAddress("glBindBuffer")); + CHECK("fghBufferData", fghBufferData = (FGH_PFNGLBUFFERDATAPROC)glutGetProcAddress("glBufferData")); + CHECK("fghVertexAttribPointer", fghVertexAttribPointer = (FGH_PFNGLVERTEXATTRIBPOINTERPROC)glutGetProcAddress("glVertexAttribPointer")); + CHECK("fghEnableVertexAttribArray", fghEnableVertexAttribArray = (FGH_PFNGLENABLEVERTEXATTRIBARRAYPROC)glutGetProcAddress("glEnableVertexAttribArray")); + CHECK("fghDisableVertexAttribArray", fghDisableVertexAttribArray = (FGH_PFNGLDISABLEVERTEXATTRIBARRAYPROC)glutGetProcAddress("glDisableVertexAttribArray")); #undef CHECK fgState.HasOpenGL20 = 1; +#endif }