[macos] align HeadlessDisplay with SDK OpenGL context creation options
Cherry-picked from 2a077eaa5483b243e817a328adaea1027a48e7a7.
This commit is contained in:
committed by
Minh Nguyễn
parent
b826d043d0
commit
e35c1f8c87
@@ -15,8 +15,14 @@ HeadlessDisplay::HeadlessDisplay() {
|
||||
// TODO: test if OpenGL 4.1 with GL_ARB_ES2_compatibility is supported
|
||||
// If it is, use kCGLOGLPVersion_3_2_Core and enable that extension.
|
||||
CGLPixelFormatAttribute attributes[] = {
|
||||
kCGLPFAOpenGLProfile,
|
||||
static_cast<CGLPixelFormatAttribute>(kCGLOGLPVersion_Legacy),
|
||||
kCGLPFAOpenGLProfile, static_cast<CGLPixelFormatAttribute>(kCGLOGLPVersion_Legacy),
|
||||
// Not adding kCGLPFAAccelerated, as this will make headless rendering impossible when running in VMs.
|
||||
kCGLPFAClosestPolicy,
|
||||
kCGLPFAAccumSize, static_cast<CGLPixelFormatAttribute>(32),
|
||||
kCGLPFAColorSize, static_cast<CGLPixelFormatAttribute>(24),
|
||||
kCGLPFAAlphaSize, static_cast<CGLPixelFormatAttribute>(8),
|
||||
kCGLPFADepthSize, static_cast<CGLPixelFormatAttribute>(16),
|
||||
kCGLPFAStencilSize, static_cast<CGLPixelFormatAttribute>(8),
|
||||
kCGLPFASupportsAutomaticGraphicsSwitching,
|
||||
kCGLPFAAllowOfflineRenderers, // Allows using the integrated GPU
|
||||
static_cast<CGLPixelFormatAttribute>(0)
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
|
||||
- (NSOpenGLPixelFormat *)openGLPixelFormatForDisplayMask:(uint32_t)mask {
|
||||
NSOpenGLPixelFormatAttribute pfas[] = {
|
||||
NSOpenGLPFAOpenGLProfile, NSOpenGLProfileVersionLegacy,
|
||||
NSOpenGLPFAAccelerated,
|
||||
NSOpenGLPFAClosestPolicy,
|
||||
NSOpenGLPFAAccumSize, 32,
|
||||
|
||||
Reference in New Issue
Block a user