Support OSX versions before high-DPI support was added

This commit is contained in:
Vas Crabb 2015-10-31 19:57:53 +11:00
parent d9614c7b57
commit 79c674bf12
1 changed files with 9 additions and 5 deletions

View File

@ -134,9 +134,12 @@ namespace bgfx { namespace gl
{
BX_UNUSED(_width, _height);
#if defined(MAC_OS_X_VERSION_MAX_ALLOWED) && (MAC_OS_X_VERSION_MAX_ALLOWED >= 1070)
bool hidpi = !!(_flags&BGFX_RESET_HIDPI);
NSOpenGLView* glView = (NSOpenGLView*)m_view;
[glView setWantsBestResolutionOpenGLSurface:hidpi];
if ([glView respondsToSelector:@selector(setWantsBestResolutionOpenGLSurface:)])
[glView setWantsBestResolutionOpenGLSurface:hidpi];
#endif // defined(MAC_OS_X_VERSION_MAX_ALLOWED) && (MAC_OS_X_VERSION_MAX_ALLOWED >= 1070)
bool vsync = !!(_flags&BGFX_RESET_VSYNC);
GLint interval = vsync ? 1 : 0;
@ -147,11 +150,12 @@ namespace bgfx { namespace gl
uint64_t GlContext::getCaps() const
{
uint64_t caps = 0;
#if defined(MAC_OS_X_VERSION_MAX_ALLOWED) && (MAC_OS_X_VERSION_MAX_ALLOWED >= 1070)
NSWindow* nsWindow = (NSWindow*)g_platformData.nwh;
uint64_t caps = 1.0f < [nsWindow backingScaleFactor]
? BGFX_CAPS_HIDPI
: 0
;
if ([nsWindow respondsToSelector:@selector(backingScaleFactor)] && (1.0f < [nsWindow backingScaleFactor]))
caps |= BGFX_CAPS_HIDPI;
#endif // defined(MAC_OS_X_VERSION_MAX_ALLOWED) && (MAC_OS_X_VERSION_MAX_ALLOWED >= 1070)
return caps;
}