internal static void LoadEntryPoints() { if (Viewport == null) { Viewport = LoadFunction <ViewportDelegate>("glViewport"); } if (Scissor == null) { Scissor = LoadFunction <ScissorDelegate>("glScissor"); } //if (MakeCurrent == null) // MakeCurrent = LoadFunction<MakeCurrentDelegate>("glMakeCurrent"); GetError = LoadFunction <GetErrorDelegate>("glGetError"); EnableVertexAttribArray = LoadFunction <EnableVertexAttribArrayDelegate>("glEnableVertexAttribArray"); DisableVertexAttribArray = LoadFunction <DisableVertexAttribArrayDelegate>("glDisableVertexAttribArray"); _getStringInternal = LoadFunction <GetStringDelegate>("glGetString"); ClearDepth = LoadFunction <ClearDepthDelegate>("glClearDepth") ?? LoadFunction <ClearDepthDelegate>("glClearDepthf"); Clear = LoadFunction <ClearDelegate>("glClear"); ClearColor = LoadFunction <ClearColorDelegate>("glClearColor"); ClearStencil = LoadFunction <ClearStencilDelegate>("glClearStencil"); Enable = LoadFunction <EnableDelegate>("glEnable"); Disable = LoadFunction <DisableDelegate>("glDisable"); BindBuffer = LoadFunction <BindBufferDelegate>("glBindBuffer"); //DrawBuffers = LoadFunction<DrawBuffersDelegate>("glDrawBuffers"); //DrawElements = LoadFunction<DrawElementsDelegate>("glDrawElements"); DrawArrays = LoadFunction <DrawArraysDelegate>("glDrawArrays"); //Uniform1i = LoadFunction<Uniform1iDelegate>("glUniform1i"); //Uniform4fv = LoadFunction<Uniform4fvDelegate>("glUniform4fv"); //ReadPixelsInternal = LoadFunction<ReadPixelsDelegate>("glReadPixels"); CreateShader = LoadFunction <CreateShaderDelegate>("glCreateShader"); ShaderSourceInternal = LoadFunction <ShaderSourceDelegate>("glShaderSource"); CompileShader = LoadFunction <CompileShaderDelegate>("glCompileShader"); ColorMask = LoadFunction <ColorMaskDelegate>("glColorMask"); //TODO: DepthFunc = LoadFunction<DepthFuncDelegate>("glDepthFunc"); DepthMask = LoadFunction <DepthMaskDelegate>("glDepthMask"); StencilMask = LoadFunction <StencilMaskDelegate>("glStencilMask"); GenBuffers = LoadFunction <GenBuffersDelegate>("glGenBuffers"); BufferData = LoadFunction <BufferDataDelegate>("glBufferData"); //MapBuffer = LoadFunction<MapBufferDelegate>("glMapBuffer"); //UnmapBuffer = LoadFunction<UnmapBufferDelegate>("glUnmapBuffer"); BufferSubData = LoadFunction <BufferSubDataDelegate>("glBufferSubData"); //DeleteBuffers = LoadFunction<DeleteBuffersDelegate>("glDeleteBuffers"); VertexAttribPointer = LoadFunction <VertexAttribPointerDelegate>("glVertexAttribPointer"); }
static void OpenGLNativeVERSION_1_5Init() { _GenQueries = GetProcAdress< GenQueriesDelegate >( "glGenQueries" ); _DeleteQueries = GetProcAdress< DeleteQueriesDelegate >( "glDeleteQueries" ); _IsQuery = GetProcAdress< IsQueryDelegate >( "glIsQuery" ); _BeginQuery = GetProcAdress< BeginQueryDelegate >( "glBeginQuery" ); _EndQuery = GetProcAdress< EndQueryDelegate >( "glEndQuery" ); _GetQueryiv = GetProcAdress< GetQueryivDelegate >( "glGetQueryiv" ); _GetQueryObjectiv = GetProcAdress< GetQueryObjectivDelegate >( "glGetQueryObjectiv" ); _GetQueryObjectuiv = GetProcAdress< GetQueryObjectuivDelegate >( "glGetQueryObjectuiv" ); _BindBuffer = GetProcAdress< BindBufferDelegate >( "glBindBuffer" ); _DeleteBuffers = GetProcAdress< DeleteBuffersDelegate >( "glDeleteBuffers" ); _GenBuffers = GetProcAdress< GenBuffersDelegate >( "glGenBuffers" ); _IsBuffer = GetProcAdress< IsBufferDelegate >( "glIsBuffer" ); _BufferData = GetProcAdress< BufferDataDelegate >( "glBufferData" ); _BufferSubData = GetProcAdress< BufferSubDataDelegate >( "glBufferSubData" ); _GetBufferSubData = GetProcAdress< GetBufferSubDataDelegate >( "glGetBufferSubData" ); _MapBuffer = GetProcAdress< MapBufferDelegate >( "glMapBuffer" ); _UnmapBuffer = GetProcAdress< UnmapBufferDelegate >( "glUnmapBuffer" ); _GetBufferParameteriv = GetProcAdress< GetBufferParameterivDelegate >( "glGetBufferParameteriv" ); _GetBufferPointerv = GetProcAdress< GetBufferPointervDelegate >( "glGetBufferPointerv" ); }
internal static void Initialize(AbstractGLGraphicDriver driver) { GenBuffers = (GenBuffersDelegate) Marshal.GetDelegateForFunctionPointer(driver.GetGLEntryPoint("glGenBuffers"), typeof(GenBuffersDelegate)); DeleteBuffers = (DeleteBuffersDelegate) Marshal.GetDelegateForFunctionPointer(driver.GetGLEntryPoint("glDeleteBuffers"), typeof(DeleteBuffersDelegate)); BindBuffer = (BindBufferDelegate) Marshal.GetDelegateForFunctionPointer(driver.GetGLEntryPoint("glBindBuffer"), typeof(BindBufferDelegate)); BufferData = (BufferDataDelegate) Marshal.GetDelegateForFunctionPointer(driver.GetGLEntryPoint("glBufferData"), typeof(BufferDataDelegate)); BufferSubData = (BufferSubDataDelegate) Marshal.GetDelegateForFunctionPointer(driver.GetGLEntryPoint("glBufferSubData"), typeof(BufferSubDataDelegate)); }