Switch to the ARB apis and add capability and compile/link status checking.

This commit is contained in:
Paul Chote
2010-11-12 18:50:56 +13:00
parent 9a1ce6945b
commit 493631cd90
3 changed files with 52 additions and 30 deletions

View File

@@ -86,10 +86,12 @@ namespace OpenRA.Renderer.Glsl
Gl.glEnableClientState( Gl.GL_TEXTURE_COORD_ARRAY );
CheckGlError();
Gl.glEnable(Gl.GL_BLEND);
Gl.glBlendFunc(Gl.GL_SRC_ALPHA, Gl.GL_ONE_MINUS_SRC_ALPHA);
Sdl.SDL_SetModState( 0 ); // i have had enough.
var extensions = Gl.glGetString(Gl.GL_EXTENSIONS);
if (!extensions.Contains("GL_ARB_vertex_shader") || !extensions.Contains("GL_ARB_fragment_shader"))
throw new InvalidProgramException("Unsupported GPU. OpenRA requires the GL_ARB_vertex_shader and GL_ARB_fragment_shader extensions.");
}
public void EnableScissor( int left, int top, int width, int height )