mirror of
https://github.com/glfw/glfw.git
synced 2026-09-22 16:52:57 +00:00
Added initial framebuffer sRGB support.
This commit is contained in:
@@ -239,6 +239,8 @@ typedef struct _GLFWcontextWGL
|
||||
PFNWGLCREATECONTEXTATTRIBSARBPROC CreateContextAttribsARB;
|
||||
GLboolean has_WGL_EXT_swap_control;
|
||||
GLboolean has_WGL_ARB_multisample;
|
||||
GLboolean has_WGL_EXT_framebuffer_sRGB;
|
||||
GLboolean has_WGL_ARB_framebuffer_sRGB;
|
||||
GLboolean has_WGL_ARB_pixel_format;
|
||||
GLboolean has_WGL_ARB_create_context;
|
||||
GLboolean has_WGL_ARB_create_context_profile;
|
||||
|
||||
@@ -251,6 +251,11 @@ static _GLFWfbconfig* getFBConfigs(_GLFWwindow* window, unsigned int* found)
|
||||
}
|
||||
else
|
||||
result[*found].samples = 0;
|
||||
|
||||
if (window->WGL.has_WGL_EXT_framebuffer_sRGB || window->WGL.has_WGL_ARB_framebuffer_sRGB)
|
||||
result[*found].sRGB = getPixelFormatAttrib(window, i, WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB);
|
||||
else
|
||||
result[*found].sRGB = GL_FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -294,8 +299,9 @@ static _GLFWfbconfig* getFBConfigs(_GLFWwindow* window, unsigned int* found)
|
||||
result[*found].auxBuffers = pfd.cAuxBuffers;
|
||||
result[*found].stereo = (pfd.dwFlags & PFD_STEREO) ? GL_TRUE : GL_FALSE;
|
||||
|
||||
// PFD pixel formats do not support FSAA
|
||||
// PFD pixel formats do not support FSAA or sRGB
|
||||
result[*found].samples = 0;
|
||||
result[*found].sRGB = GL_FALSE;
|
||||
}
|
||||
|
||||
result[*found].platformID = i;
|
||||
@@ -1024,6 +1030,8 @@ static void initWGLExtensions(_GLFWwindow* window)
|
||||
window->WGL.has_WGL_EXT_swap_control = GL_FALSE;
|
||||
window->WGL.has_WGL_ARB_pixel_format = GL_FALSE;
|
||||
window->WGL.has_WGL_ARB_multisample = GL_FALSE;
|
||||
window->WGL.has_WGL_EXT_framebuffer_sRGB = GL_FALSE;
|
||||
window->WGL.has_WGL_ARB_framebuffer_sRGB = GL_FALSE;
|
||||
window->WGL.has_WGL_ARB_create_context = GL_FALSE;
|
||||
window->WGL.has_WGL_ARB_create_context_profile = GL_FALSE;
|
||||
|
||||
@@ -1040,6 +1048,12 @@ static void initWGLExtensions(_GLFWwindow* window)
|
||||
if (_glfwPlatformExtensionSupported("WGL_ARB_multisample"))
|
||||
window->WGL.has_WGL_ARB_multisample = GL_TRUE;
|
||||
|
||||
if (_glfwPlatformExtensionSupported("WGL_EXT_framebuffer_sRGB"))
|
||||
window->WGL.has_WGL_EXT_framebuffer_sRGB = GL_TRUE;
|
||||
|
||||
if (_glfwPlatformExtensionSupported("WGL_ARB_framebuffer_sRGB"))
|
||||
window->WGL.has_WGL_ARB_framebuffer_sRGB = GL_TRUE;
|
||||
|
||||
if (_glfwPlatformExtensionSupported("WGL_ARB_create_context"))
|
||||
{
|
||||
window->WGL.CreateContextAttribsARB = (PFNWGLCREATECONTEXTATTRIBSARBPROC)
|
||||
|
||||
Reference in New Issue
Block a user