mirror of
https://github.com/FunkyFr3sh/cnc-ddraw.git
synced 2025-03-15 06:04:49 +01:00
move wglSwapIntervalEXT to opengl.c
This commit is contained in:
parent
5ed60e662e
commit
90758a08c8
@ -8,6 +8,8 @@ BOOL OpenGL_ExtExists(char *ext);
|
||||
GLuint OpenGL_BuildProgram(const GLchar *vertSource, const GLchar *fragSource);
|
||||
GLuint OpenGL_BuildProgramFromFile(const char *filePath);
|
||||
|
||||
typedef void (APIENTRYP PFNWGLSWAPINTERVALEXT) (int interval);
|
||||
|
||||
// Program
|
||||
extern PFNGLCREATEPROGRAMPROC glCreateProgram;
|
||||
extern PFNGLDELETEPROGRAMPROC glDeleteProgram;
|
||||
@ -66,3 +68,5 @@ extern PFNGLFRAMEBUFFERTEXTURE2DPROC glFramebufferTexture2D;
|
||||
extern PFNGLDRAWBUFFERSPROC glDrawBuffers;
|
||||
extern PFNGLCHECKFRAMEBUFFERSTATUSPROC glCheckFramebufferStatus;
|
||||
extern PFNGLDELETEFRAMEBUFFERSPROC glDeleteFramebuffers;
|
||||
|
||||
extern PFNWGLSWAPINTERVALEXT wglSwapIntervalEXT;
|
||||
|
@ -62,6 +62,8 @@ PFNGLDRAWBUFFERSPROC glDrawBuffers = NULL;
|
||||
PFNGLCHECKFRAMEBUFFERSTATUSPROC glCheckFramebufferStatus = NULL;
|
||||
PFNGLDELETEFRAMEBUFFERSPROC glDeleteFramebuffers = NULL;
|
||||
|
||||
PFNWGLSWAPINTERVALEXT wglSwapIntervalEXT = NULL;
|
||||
|
||||
void OpenGL_Init()
|
||||
{
|
||||
// Program
|
||||
@ -120,6 +122,8 @@ void OpenGL_Init()
|
||||
glDrawBuffers = (PFNGLDRAWBUFFERSPROC)wglGetProcAddress("glDrawBuffers");
|
||||
glCheckFramebufferStatus = (PFNGLCHECKFRAMEBUFFERSTATUSPROC)wglGetProcAddress("glCheckFramebufferStatus");
|
||||
glDeleteFramebuffers = (PFNGLDELETEFRAMEBUFFERSPROC)wglGetProcAddress("glDeleteFramebuffers");
|
||||
|
||||
wglSwapIntervalEXT = (PFNWGLSWAPINTERVALEXT)wglGetProcAddress("wglSwapIntervalEXT");
|
||||
}
|
||||
|
||||
BOOL OpenGL_ExtExists(char *ext)
|
||||
|
13
src/render.c
13
src/render.c
@ -49,7 +49,6 @@ DWORD WINAPI render_main(void)
|
||||
|
||||
if (OpenGL_ExtExists("WGL_EXT_swap_control"))
|
||||
{
|
||||
BOOL(APIENTRY *wglSwapIntervalEXT)(int) = (BOOL(APIENTRY *)(int))wglGetProcAddress("wglSwapIntervalEXT");
|
||||
if (wglSwapIntervalEXT)
|
||||
{
|
||||
if (ddraw->vsync)
|
||||
@ -532,15 +531,19 @@ DWORD WINAPI render_main(void)
|
||||
}
|
||||
}
|
||||
|
||||
if (scaleProgram && paletteConvProgram)
|
||||
if (paletteConvProgram)
|
||||
{
|
||||
// draw surface into framebuffer
|
||||
glUseProgram(paletteConvProgram);
|
||||
|
||||
glActiveTexture(GL_TEXTURE0);
|
||||
glBindTexture(GL_TEXTURE_2D, surfaceTexId);
|
||||
glActiveTexture(GL_TEXTURE1);
|
||||
glBindTexture(GL_TEXTURE_2D, paletteTexId);
|
||||
glActiveTexture(GL_TEXTURE0);
|
||||
}
|
||||
|
||||
if (scaleProgram && paletteConvProgram)
|
||||
{
|
||||
// draw surface into framebuffer
|
||||
glUseProgram(paletteConvProgram);
|
||||
|
||||
glViewport(0, 0, ddraw->width, ddraw->height);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user