1
0
mirror of https://github.com/FunkyFr3sh/cnc-ddraw.git synced 2025-03-24 17:49:52 +01:00

prevent switching to GDI on core profile

This commit is contained in:
FunkyFr3sh 2018-05-24 05:21:24 +02:00
parent 90758a08c8
commit 52bc5ad23f

View File

@ -156,6 +156,9 @@ DWORD WINAPI render_main(void)
{ {
glUseProgram(paletteConvProgram); glUseProgram(paletteConvProgram);
glUniform1i(glGetUniformLocation(paletteConvProgram, "SurfaceTex"), 0);
glUniform1i(glGetUniformLocation(paletteConvProgram, "PaletteTex"), 1);
if (gotOpenglV3) if (gotOpenglV3)
{ {
mainVertexCoordAttrLoc = glGetAttribLocation(paletteConvProgram, "VertexCoord"); mainVertexCoordAttrLoc = glGetAttribLocation(paletteConvProgram, "VertexCoord");
@ -241,18 +244,6 @@ DWORD WINAPI render_main(void)
glUniformMatrix4fv(glGetUniformLocation(paletteConvProgram, "MVPMatrix"), 1, GL_FALSE, mvpMatrix); glUniformMatrix4fv(glGetUniformLocation(paletteConvProgram, "MVPMatrix"), 1, GL_FALSE, mvpMatrix);
} }
glActiveTexture(GL_TEXTURE0);
glEnable(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D, surfaceTexId);
glUniform1i(glGetUniformLocation(paletteConvProgram, "SurfaceTex"), 0);
glActiveTexture(GL_TEXTURE1);
glEnable(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D, paletteTexId);
glUniform1i(glGetUniformLocation(paletteConvProgram, "PaletteTex"), 1);
glActiveTexture(GL_TEXTURE0);
} }
GLint frameCountUniLoc = -1; GLint frameCountUniLoc = -1;
@ -408,10 +399,10 @@ DWORD WINAPI render_main(void)
glBindFramebuffer(GL_FRAMEBUFFER, 0); glBindFramebuffer(GL_FRAMEBUFFER, 0);
} }
glEnable(GL_TEXTURE_2D);
BOOL useOpenGL = !(ddraw->autorenderer && (!paletteConvProgram || glGetError() != GL_NO_ERROR)); BOOL useOpenGL = !(ddraw->autorenderer && (!paletteConvProgram || glGetError() != GL_NO_ERROR));
glEnable(GL_TEXTURE_2D);
while (useOpenGL && ddraw->render.run && WaitForSingleObject(ddraw->render.sem, INFINITE) != WAIT_FAILED) while (useOpenGL && ddraw->render.run && WaitForSingleObject(ddraw->render.sem, INFINITE) != WAIT_FAILED)
{ {
#if _DEBUG #if _DEBUG
@ -534,8 +525,10 @@ DWORD WINAPI render_main(void)
if (paletteConvProgram) if (paletteConvProgram)
{ {
glActiveTexture(GL_TEXTURE0); glActiveTexture(GL_TEXTURE0);
glEnable(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D, surfaceTexId); glBindTexture(GL_TEXTURE_2D, surfaceTexId);
glActiveTexture(GL_TEXTURE1); glActiveTexture(GL_TEXTURE1);
glEnable(GL_TEXTURE_2D);
glBindTexture(GL_TEXTURE_2D, paletteTexId); glBindTexture(GL_TEXTURE_2D, paletteTexId);
glActiveTexture(GL_TEXTURE0); glActiveTexture(GL_TEXTURE0);
} }