mirror of https://github.com/mgba-emu/mgba.git
OpenGL: Fix fast-forward on some OpenGL drivers where it may block early
This commit is contained in:
parent
87aaefccd2
commit
34d0dff2d6
1
CHANGES
1
CHANGES
|
@ -28,6 +28,7 @@ Bugfixes:
|
|||
- GBA: Fix warnings when creating and loading savestates
|
||||
- Qt: Add additional checks in CheatModel to prevent crashes
|
||||
- GBA Hardware: Fix Game Boy Player rumble in Pokemon Pinball
|
||||
- OpenGL: Fix fast-forward on some OpenGL drivers where it may block early
|
||||
Misc:
|
||||
- Qt: Window size command line options are now supported
|
||||
- Qt: Increase usability of key mapper
|
||||
|
|
|
@ -16,7 +16,7 @@ extern "C" {
|
|||
#endif
|
||||
#if !defined(_WIN32) || defined(USE_EPOXY)
|
||||
#include "platform/opengl/gles2.h"
|
||||
#ifdef _WIN32
|
||||
#ifdef _WIN32
|
||||
#include <epoxy/wgl.h>
|
||||
#endif
|
||||
#endif
|
||||
|
@ -264,10 +264,10 @@ void PainterGL::draw() {
|
|||
}
|
||||
if (GBASyncWaitFrameStart(&m_context->sync) || !m_queue.isEmpty()) {
|
||||
dequeue();
|
||||
GBASyncWaitFrameEnd(&m_context->sync);
|
||||
m_painter.begin(m_gl->context()->device());
|
||||
performDraw();
|
||||
m_painter.end();
|
||||
GBASyncWaitFrameEnd(&m_context->sync);
|
||||
m_backend->swap(m_backend);
|
||||
} else {
|
||||
GBASyncWaitFrameEnd(&m_context->sync);
|
||||
|
|
|
@ -64,8 +64,8 @@ void GBASDLGLRunloop(struct GBAThread* context, struct SDLSoftwareRenderer* rend
|
|||
if (GBASyncWaitFrameStart(&context->sync)) {
|
||||
v->postFrame(v, renderer->d.outputBuffer);
|
||||
}
|
||||
v->drawFrame(v);
|
||||
GBASyncWaitFrameEnd(&context->sync);
|
||||
v->drawFrame(v);
|
||||
v->swap(v);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -117,8 +117,8 @@ void GBASDLGLES2Runloop(struct GBAThread* context, struct SDLSoftwareRenderer* r
|
|||
if (GBASyncWaitFrameStart(&context->sync)) {
|
||||
v->postFrame(v, renderer->d.outputBuffer);
|
||||
}
|
||||
v->drawFrame(v);
|
||||
GBASyncWaitFrameEnd(&context->sync);
|
||||
v->drawFrame(v);
|
||||
#ifdef BUILD_RASPI
|
||||
eglSwapBuffers(renderer->display, renderer->surface);
|
||||
#else
|
||||
|
|
Loading…
Reference in New Issue