1
0
Fork 0
forked from suyu/suyu
suyu/src/video_core/renderer_opengl
James Rowe 282adfc70b Frontend/GPU: Refactor context management
Changes the GraphicsContext to be managed by the GPU core. This
eliminates the need for the frontends to fool around with tricky
MakeCurrent/DoneCurrent calls that are dependent on the settings (such
as async gpu option).

This also refactors out the need to use QWidget::fromWindowContainer as
that caused issues with focus and input handling. Now we use a regular
QWidget and just access the native windowHandle() directly.

Another change is removing the debug tool setting in FrameMailbox.
Instead of trying to block the frontend until a new frame is ready, the
core will now take over presentation and draw directly to the window if
the renderer detects that its hooked by NSight or RenderDoc

Lastly, since it was in the way, I removed ScopeAcquireWindowContext and
replaced it with a simple subclass in GraphicsContext that achieves the
same result
2020-03-24 21:03:42 -06:00
..
gl_buffer_cache.cpp
gl_buffer_cache.h
gl_device.cpp renderer_opengl: Detect Nvidia Nsight as a debugging tool 2020-03-16 03:59:08 -03:00
gl_device.h renderer_opengl: Detect Nvidia Nsight as a debugging tool 2020-03-16 03:59:08 -03:00
gl_framebuffer_cache.cpp gl_state: Remove completely 2020-02-28 17:56:35 -03:00
gl_framebuffer_cache.h gl_state: Remove completely 2020-02-28 17:56:35 -03:00
gl_query_cache.cpp
gl_query_cache.h
gl_rasterizer.cpp gl_rasterizer: Use transformed viewport for depth ranges 2020-03-22 03:26:07 -03:00
gl_rasterizer.h gl_rasterizer: Implement transform feedback bindings 2020-03-13 18:33:04 -03:00
gl_resource_manager.cpp gl_state: Remove completely 2020-02-28 17:56:35 -03:00
gl_resource_manager.h
gl_sampler_cache.cpp
gl_sampler_cache.h
gl_shader_cache.cpp Frontend/GPU: Refactor context management 2020-03-24 21:03:42 -06:00
gl_shader_cache.h video_core: Rename "const buffer locker" to "registry" 2020-03-09 18:40:06 -03:00
gl_shader_decompiler.cpp gl_shader_decompiler: Remove deprecated function and its usages 2020-03-18 20:03:19 -03:00
gl_shader_decompiler.h gl_shader_decompiler: Add identifier to decompiled code 2020-03-09 18:40:53 -03:00
gl_shader_disk_cache.cpp engines/maxwell_3d: Add TFB registers and store them in shader registry 2020-03-09 18:40:53 -03:00
gl_shader_disk_cache.h shader/registry: Store graphics and compute metadata 2020-03-09 18:40:07 -03:00
gl_shader_manager.cpp gl_shader_manager: Fix interaction between graphics and compute 2020-03-11 01:04:52 -03:00
gl_shader_manager.h gl_shader_manager: Fix interaction between graphics and compute 2020-03-11 01:04:52 -03:00
gl_shader_util.cpp
gl_shader_util.h
gl_state_tracker.cpp DirtyFlags: relax need to set render_targets as dirty 2020-03-14 11:47:33 -04:00
gl_state_tracker.h gl_rasterizer: Implement polygon modes and fill rectangles 2020-03-09 20:39:58 -03:00
gl_stream_buffer.cpp gl_state: Remove completely 2020-02-28 17:56:35 -03:00
gl_stream_buffer.h
gl_texture_cache.cpp video_core: Implement RGBA16_SNORM 2020-03-12 21:42:33 -03:00
gl_texture_cache.h renderer_opengl: Reintroduce dirty flags for render targets 2020-02-28 17:56:41 -03:00
maxwell_to_gl.h gl_rasterizer: Implement polygon modes and fill rectangles 2020-03-09 20:39:58 -03:00
renderer_opengl.cpp Frontend/GPU: Refactor context management 2020-03-24 21:03:42 -06:00
renderer_opengl.h Frontend/GPU: Refactor context management 2020-03-24 21:03:42 -06:00
utils.cpp gl_state_tracker: Track state of index buffers 2020-02-28 17:56:42 -03:00
utils.h gl_state_tracker: Track state of index buffers 2020-02-28 17:56:42 -03:00