浏览代码

Fix for MacOS OGL 4.1 support

Workaround: MacOS does not have access to glClipControl.

Because the lower range of the 32F buffer is not available using this workaround, the improvements to depth behavior from depth reversal will be limited on MacOS. Behavior is equivalent to reversed depth on a 24UINT buffer; Better than stock, but not dramatically.
AtomicWalrus 2 年之前
父节点
当前提交
c64c2212ad
共有 1 个文件被更改,包括 5 次插入0 次删除
  1. 5 0
      Engine/source/gfx/gl/gfxGLDevice.cpp

+ 5 - 0
Engine/source/gfx/gl/gfxGLDevice.cpp

@@ -191,7 +191,12 @@ void GFXGLDevice::initGLState()
    glGenVertexArrays(1, &vao);
    glBindVertexArray(vao);
 
+   // MacOS uses OGL 4.1. This workaround is functional, but will not provide the improvied depth performance.
+#if defined(__MACOSX__)
+   glDepthRangef(0.0, 1.0);
+#else
    glClipControl(GL_LOWER_LEFT, GL_ZERO_TO_ONE);
+#endif
    //enable sRGB
    glEnable(GL_FRAMEBUFFER_SRGB);