Migrate rendering to OpenGL 3.2 / OpenGL ES 3.0.

This commit is contained in:
Paul Chote
2019-08-31 10:30:02 +01:00
committed by RoosterDragon
parent 91c63034d3
commit ce8112fb5a
11 changed files with 250 additions and 103 deletions

View File

@@ -33,6 +33,9 @@ namespace OpenRA.Platforms.Default
var filename = Path.Combine(Platform.GameDir, "glsl", name + "." + ext);
var code = File.ReadAllText(filename);
var version = OpenGL.Features.HasFlag(OpenGL.GLFeatures.GLES) ? "300 es" : "140";
code = code.Replace("{VERSION}", version);
var shader = OpenGL.glCreateShader(type);
OpenGL.CheckGLError();
unsafe
@@ -77,6 +80,9 @@ namespace OpenRA.Platforms.Default
OpenGL.CheckGLError();
OpenGL.glBindAttribLocation(program, TexMetadataAttributeIndex, "aVertexTexMetadata");
OpenGL.CheckGLError();
OpenGL.glBindFragDataLocation(program, 0, "fragColor");
OpenGL.CheckGLError();
OpenGL.glAttachShader(program, vertexShader);
OpenGL.CheckGLError();
OpenGL.glAttachShader(program, fragmentShader);
@@ -135,6 +141,7 @@ namespace OpenRA.Platforms.Default
{
VerifyThreadAffinity();
OpenGL.glUseProgram(program);
OpenGL.CheckGLError();
// bind the textures
foreach (var kv in textures)