diff options
| author | mobserveur <mobserveur@gmail.com> | 2024-07-05 20:13:59 +0200 |
|---|---|---|
| committer | mobserveur <mobserveur@gmail.com> | 2024-07-05 20:13:59 +0200 |
| commit | 9f62ef6cb34ebc91aa82715ce8b036c0af7affef (patch) | |
| tree | 8d7afa7a264f32a84031caf7a393416f81efefd0 /indra/llwindow/llwindowmacosx.cpp | |
| parent | 6369047dcb74323b248de59bc8187db0d315548a (diff) | |
Tuning floater and buffer mapping improvements
This commit adds the tuning floater accessible via the fps button,
and improvements to the buffer mapping optimisation modes.
Diffstat (limited to 'indra/llwindow/llwindowmacosx.cpp')
| -rw-r--r-- | indra/llwindow/llwindowmacosx.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/indra/llwindow/llwindowmacosx.cpp b/indra/llwindow/llwindowmacosx.cpp index 453905b19b..1b8ab27f23 100644 --- a/indra/llwindow/llwindowmacosx.cpp +++ b/indra/llwindow/llwindowmacosx.cpp @@ -38,6 +38,8 @@ #include "lldir.h" #include "indra_constants.h" +#include "../newview/llviewercontrol.h" + #include <OpenGL/OpenGL.h> #include <Carbon/Carbon.h> #include <CoreServices/CoreServices.h> @@ -50,6 +52,8 @@ #include <IOKit/hid/IOHIDLib.h> #include <IOKit/usb/IOUSBLib.h> + + extern BOOL gDebugWindowProc; BOOL gHiDPISupport = TRUE; @@ -1009,6 +1013,19 @@ BOOL LLWindowMacOSX::setSizeImpl(const LLCoordWindow size) void LLWindowMacOSX::swapBuffers() { CGLFlushDrawable(mContext); + + U32 mode = gSavedSettings.getU32("MPVBufferOptiMode"); + if (mode == 0) + { + if(gGLManager.mIsApple) mode = 2; + else mode = 1; + } + if (mode > 2) + { + glClientWaitSync(swapFense, GL_SYNC_FLUSH_COMMANDS_BIT, GL_TIMEOUT_IGNORED); + glDeleteSync(swapFense); + swapFense = glFenceSync(GL_SYNC_GPU_COMMANDS_COMPLETE, 0); + } } void LLWindowMacOSX::restoreGLContext() |
