Commit graph

84 commits

Author SHA1 Message Date
Connor McLaughlin dfdbc9a8ce OpenGLHostDisplay: Update sync interval on MakeCurrent() 2022-12-08 13:21:21 +10:00
Connor McLaughlin 8c7a192128 Misc: Add copyright/license statement to applicable files
Should've did this in the beginning.
2022-12-04 21:03:49 +10:00
Connor McLaughlin 7a30c9ea43 GL/Context: USe glXMakeContextCurrent() for GLX 2022-11-23 19:18:17 +10:00
Connor McLaughlin 0d178a2a9e GL/Context: Prefer EGL over GLX on all platforms 2022-11-23 19:14:28 +10:00
Connor McLaughlin 30556cb40a GL/Context: Prefer EGL over GLX on ARM 2022-11-15 21:33:06 +10:00
Connor McLaughlin 72dfbaf6cc Misc: Backports from PCSX2 UI 2022-10-23 14:49:44 +10:00
Connor McLaughlin 8e95248ef3 GL/Context: Always prefer GLES on Android 2022-10-21 00:30:42 +10:00
Connor McLaughlin 564a9bdeb4 GL/Context: Use GL_OES_draw_elements_base_vertex if GLES3.2 is missing 2022-10-05 18:29:43 +10:00
Connor McLaughlin a9038133c8 HostDisplay: Common texture base class for all APIs 2022-10-04 00:00:56 +10:00
Connor McLaughlin 12d400b76a OpenGLHostDisplay: Replace GL ID handle with texture class 2022-10-03 21:08:42 +10:00
Connor McLaughlin e7fb42347f GL/Texture: Add multi-layer/level support 2022-09-26 22:15:50 +10:00
Connor McLaughlin 0b3461338c HostDisplay: Use streaming for sw renderer display 2022-09-13 17:50:42 +10:00
Connor McLaughlin bec0d6e7df HostDisplay: Add GPU usage statistics 2022-09-03 14:17:51 +10:00
Connor McLaughlin a899ca88f2 Build: Make OpenGL/Vulkan renderers optional
And disabled on Windows/arm64.
2022-07-31 01:14:28 +10:00
Connor McLaughlin 8af4f4f01a Common: ScopeGuard -> ScopedGuard 2022-07-26 18:37:16 +10:00
Connor McLaughlin 13e3f2a179 ContextWGL: Backport pbuffer changes 2022-07-26 18:32:55 +10:00
Connor McLaughlin c233a8042f GLContext: Dynamically load wayland-egl 2022-07-25 18:06:17 +10:00
Connor McLaughlin b42b5501f6 UI: Massive revamp, new features and improvements 2022-07-22 21:19:54 +10:00
Connor McLaughlin d2ca454576 Sync filesystem.h/path.h 2022-07-21 17:29:57 +10:00
Connor McLaughlin f0cb8cdc5c GL/Texture: Don't set max level on GLES2 2021-08-12 21:31:40 +10:00
Connor McLaughlin 911e9a37f1 WIN32 macro -> _WIN32 2021-06-30 14:38:07 +10:00
Connor McLaughlin 859c78fdc0 DRMDisplay: Restore previous framebuffer on shutdown 2021-06-21 22:04:59 +10:00
Connor McLaughlin 350049826f Fix a bunch of compiler warnings 2021-06-04 13:14:30 +10:00
Connor McLaughlin 924756860e HostDisplay: Support refresh rate queries on all platforms except Mac 2021-04-03 02:53:28 +10:00
Connor McLaughlin 47ba6e7449 GL/Context: Better handle resizing with GLX
Fixes fullscreen having no effect when running under XWayland.
2021-03-27 16:14:34 +10:00
Connor McLaughlin 36ff345e60 Revert "GL/Context: Disable GLES3.2 on PowerVR Rogue"
Broken driver is just broken. Not much I can do when I don't have one of
these phones and the shader compiler simply says "failure" without any
line information.
2021-03-09 17:25:58 +10:00
Connor McLaughlin 535fef88c5 GL/Context: Drop unnecessary macro check 2021-03-08 17:28:34 +10:00
Connor McLaughlin db17baba1b GL/Context: Disable GLES3.2 on PowerVR Rogue
It's choking on our shaders, maybe it's the I/O blocks or texture
buffers?
2021-03-07 17:34:29 +10:00
Connor McLaughlin c98b332b04 GL: Add missing context_egl_fbdev files 2021-02-26 19:13:02 +10:00
Connor McLaughlin f7426b0988 GL/Context: Support fbdev 2021-02-14 18:36:21 +10:00
Connor McLaughlin d4143399eb OpenGLHostDisplay: Support fullscreen mode enumeration (DRM only) 2021-02-14 18:36:21 +10:00
Connor McLaughlin e8832bf552 DRMDisplay: Use width/height/refresh rate to select mode 2021-02-14 18:36:21 +10:00
Connor McLaughlin ccc25fc131 GL/Context: Filter Mali GPUs based on ARM GL_VENDOR only 2021-02-06 20:25:26 +10:00
Connor McLaughlin 011df33fc4 GL/StreamBuffer: Support non-coherent mappings 2021-02-06 19:23:39 +10:00
Connor McLaughlin 5a9abd55a1 GL/Context: Disable GL_{EXT,OES}_copy_image on Mali
It is **very** slow because it seems to be implemented on the CPU...
2021-02-06 19:20:09 +10:00
C.W. Betts 662d6e9711 Fix possible log formatting errors. 2021-02-04 17:54:51 -07:00
Connor McLaughlin 3e9fdf22bf NoGUI: Move DRM display to GL context
We don't use it for Vulkan.
2021-02-04 19:39:19 +10:00
Connor McLaughlin cbdf722dd6 GL/ContextEGL: Fix compiling with both DRM/KMS and X11 enabled 2021-02-01 01:45:30 +10:00
Connor McLaughlin dac9cdd04c GL/Context: Ensure context is destroyed before GBM device
Fixes crash on shutdown when running under DRM/KMS.
2021-02-01 01:28:39 +10:00
Connor McLaughlin b09da307b5 Common: Add DRM display helper class and GBM GL context 2021-01-31 17:10:27 +10:00
Connor McLaughlin 8cafe856f0 OpenGLHostDisplay: Work around functions unavailable in GLES2 2021-01-26 03:38:31 +10:00
Connor McLaughlin fd166a4485 ShaderCache: Add a data version field
We can increment this to prevent people's shader caches from growing too
large with shader changes.
2021-01-11 15:24:38 +10:00
Connor McLaughlin 419726f4cc Remove libretro core - core will now be maintained by libretro
libretro have agreed to take over maintenance of the core.

Please see their fork at https://github.com/libretro/duckstation if you
wish to continue to use it.
2021-01-08 01:37:59 +10:00
Connor McLaughlin 6d501bff56 GL/Program: Use glBindFragDataLocationIndexedEXT for GLES 2020-12-31 13:29:41 +10:00
Connor McLaughlin ebaad0f35a Common/GL: Add replace method to texture 2020-12-26 00:47:03 +10:00
Connor McLaughlin dc21f2b5cf GL/Context: Check return value of eglBindApi()
Fixes some Android devices thinking they got a desktop GL context.
2020-11-27 01:40:50 +10:00
Connor McLaughlin 9c9e2bbe27 GL/ContextWGL: Check for ES2 context extension before creating 2020-11-21 18:39:03 +10:00
Connor McLaughlin ac89379ca6 GL/ContextEGL: Use pbuffer when surfaceless not supported 2020-11-08 00:22:35 +10:00
Connor McLaughlin 4fe1c07b02 GL/Texture: Use texture storage where available 2020-10-31 15:11:53 +10:00
Connor McLaughlin 2eaebd8921 GPU: Implement support for multisample antialiasing 2020-10-31 14:27:58 +10:00