Lime3DS/src/video_core
zhupengfei 06a0d86e9c
video_core, core: Move pixel download to its own thread
This uses the mailbox model to move pixel downloading to its own thread, eliminating Nvidia's warnings and (possibly) making use of GPU copy engine.

To achieve this, we created a new mailbox type that is different from the presentation mailbox in that it never discards a rendered frame.

Also, I tweaked the projection matrix thing so that it can just draw the frame upside down instead of having the CPU flip it.
2020-02-27 16:55:08 +08:00
..
debug_utils general: Use deducation guides for std::lock_guard and std::unique_lock 2019-04-07 15:14:29 +02:00
renderer_opengl video_core, core: Move pixel download to its own thread 2020-02-27 16:55:08 +08:00
shader Add shader disk caching 2020-01-15 19:58:33 -07:00
swrasterizer Remove boost headers not currently used 2019-09-15 15:18:38 -03:00
texture common/vector_math: Move Vec[x] types into the Common namespace 2019-03-02 15:04:13 +01:00
CMakeLists.txt video_core, core: Move pixel download to its own thread 2020-02-27 16:55:08 +08:00
command_processor.cpp remove ugly msvc hack 2019-09-15 22:35:21 -05:00
command_processor.h video_core: use nested namespaces 2019-02-19 03:09:57 -05:00
geometry_pipeline.cpp common/vector_math: Move Vec[x] types into the Common namespace 2019-03-02 15:04:13 +01:00
geometry_pipeline.h pica/command_processor: build geometry pipeline and run geometry shader 2017-08-19 10:13:20 +03:00
gpu_debugger.h log: replace all NGLOG with LOG 2018-06-29 14:18:07 +03:00
pica_state.h pica: move global shader buffer state into Pica::State (#4796) 2019-06-20 00:39:08 +02:00
pica_types.h video_core: fix infinity and NaN conversions 2017-12-14 19:51:58 +00:00
pica.cpp pica: move global shader buffer state into Pica::State (#4796) 2019-06-20 00:39:08 +02:00
pica.h Update the entire application to use the new clang format style 2018-03-09 10:54:43 -07:00
primitive_assembly.cpp log: replace all NGLOG with LOG 2018-06-29 14:18:07 +03:00
primitive_assembly.h video_core/command_processor: attempt accelerate draw in draw trigger 2018-05-14 10:17:36 +03:00
rasterizer_interface.h Add shader disk caching 2020-01-15 19:58:33 -07:00
regs_framebuffer.h log: replace all NGLOG with LOG 2018-06-29 14:18:07 +03:00
regs_lighting.h common/vector_math: Move Vec[x] types into the Common namespace 2019-03-02 15:04:13 +01:00
regs_pipeline.h Use the correct register length for index_array 2019-12-13 18:08:07 -07:00
regs_rasterizer.h common/vector_math: Move Vec[x] types into the Common namespace 2019-03-02 15:04:13 +01:00
regs_shader.h pica/regs: layout geometry shader configuration regs 2017-08-10 01:53:08 +03:00
regs_texturing.h gl_rasterizer: implement mipmap 2019-03-08 09:37:24 -05:00
regs.cpp Pica/Regs: Use binary search to look up reg names 2017-02-09 00:04:24 -08:00
regs.h remove ugly msvc hack 2019-09-15 22:35:21 -05:00
renderer_base.cpp core: Namespace EmuWindow 2019-04-21 14:16:16 +02:00
renderer_base.h Address review and update zstd 2020-01-15 19:58:34 -07:00
utils.h Update the entire application to use the new clang format style 2018-03-09 10:54:43 -07:00
vertex_loader.cpp Memory: move GetPhysicalPointer and IsValidPhysicalAddress into class 2018-12-05 20:21:14 -05:00
vertex_loader.h VideoCore: Move Regs to its own file 2017-02-04 13:59:12 -08:00
video_core.cpp Add shader disk caching 2020-01-15 19:58:33 -07:00
video_core.h Add shader disk caching 2020-01-15 19:58:33 -07:00