Commit Graph

29 Commits

Author SHA1 Message Date
Cacodemon345
dd23397854 qt: Add option to apply fullscreen stretching modes when maximized 2022-08-10 01:27:54 +06:00
Cacodemon345
a809942d4f Fix window coordinate saving and loading 2022-07-05 16:40:04 +06:00
Cacodemon345
5835f98fba Fix a couple of bad mistakes 2022-04-24 01:02:34 +06:00
Cacodemon345
314bf5ad06 Add Vulkan renderer 2022-04-21 16:32:46 +06:00
Jasmine Iwanek
4674756664 More newline and whitespace cleanups 2022-02-20 16:26:40 -05:00
Cacodemon345
bfebbd05d3 qt: Compatibility improvements
* Patch to build with Qt 5.11 and later by jriwanek
* Attempt to fix viewport on hardware renderers
2022-02-11 13:49:45 +06:00
Cacodemon345
a637f61d4f Add missing copyright notices 2022-02-07 15:00:02 +06:00
ts-korhonen
8c8e2219d8 qt: Refactor renderers buffer ownership
Invert the way buffers are created; make renderer create buffers for
renderer stack.
Use QImage bits as the buffer for software renderer.
2022-01-15 21:45:34 +02:00
Cacodemon345
27e144f7fa Hardware Renderers: Fix leftover artefacts on fullscreen modes 2021-12-31 12:35:00 +06:00
Cacodemon345
b907b7bec4 Fix hardware renderer scaling on HiDPI modes 2021-12-30 02:10:21 +06:00
Cacodemon345
1bdff37e38 * Turned the software renderer into a window as well
* Fix inability to move window on GNOME
* Fix status bar icons being frozen after icon set switch
2021-12-29 23:49:09 +06:00
Cacodemon345
814aaf08a7 Add OpenGL 3.0 Core renderer 2021-12-27 16:32:03 +06:00
Cacodemon345
33d2844de6 Fix OpenGL ES renderer not actually creating OpenGL ES contexts 2021-12-26 11:52:50 +06:00
Cacodemon345
b192518386 Respect filtering options 2021-12-26 01:34:34 +06:00
Cacodemon345
033abed3fe Use shader-based hardware rendering 2021-12-25 21:49:25 +06:00
Cacodemon345
07af487acb * Fix rare crash when switching renderers
* Abandon QPainter in hardware renderers in favour of OpenGL
* Disable VSync in the application globally
2021-12-25 15:34:00 +06:00
ts-korhonen
b3876ee934 qt: create opengl context on hardware renderer
Prevent OpenGLES renderer crashing on windows
2021-12-23 20:31:51 +02:00
Cacodemon345
67a0f7a85f Blitting improvements
* Use a single QImage copy for actual drawing
* Use std::array and std::unique_ptr for image buffers
* Signal immediately after copying the buffer to internal image
2021-12-21 16:38:13 +06:00
Cacodemon345
0313d02073 Delegate input events of HardwareRenderer to RendererStack 2021-12-18 00:37:30 +06:00
ts-korhonen
ffde0ea254 qt: fix mouse grab on opengl renderer (for windows) 2021-12-17 18:37:57 +02:00
Cacodemon345
2aa93d2e17 Merge remote-tracking branch 'winqt/qt' into winqt5 2021-12-17 16:36:47 +06:00
Cacodemon345
30376341d1 Start of windowed OpenGL rendering 2021-12-17 12:17:54 +06:00
ts-korhonen
07e0b54171 qt: Set vsync off for hardware renderers 2021-12-16 07:52:33 +02:00
ts-korhonen
7c2cd35965 qt: Add overload protection to renderers
Added atomic_flags for renderer buffers to prevent concurrent usage and
overloading the renderer with draw requests when it's busy.
2021-12-15 00:37:48 +02:00
Cacodemon345
fa83778c04 Avoid transparency/whiteness effects on Wayland and macOS 2021-12-08 16:36:55 +06:00
Joakim L. Gilje
61a2cf986b implemented fullscreen stretch modes 2021-12-07 13:47:42 +01:00
Joakim L. Gilje
c5b6ccb948 continued PR#12 into software renderer as well 2021-12-05 21:23:09 +01:00
Joakim L. Gilje
af512c98cc PR #12 merged manually (Take video_filter_method into account when rendering, by @Cacodemon345) 2021-12-05 20:56:07 +01:00
Joakim L. Gilje
a74afc3f1e added software renderer. split common functions prev.
in gleswidget to renderstack (a QStackWidget), which in
turn calls an actual renderer. added ability to target GLES
directly, but this is maybe uneeded.
2021-12-04 21:33:04 +01:00