yuzu-mainline/src/video_core
ReinUsesLisp 9d8ca6cc4a buffer_base: Add support for cached CPU writes
Some games usually write memory pages currently used by the GPU, causing
rendering issues (e.g. flashing geometry and shadows on Link's
Awakening). To workaround this issue, Guest CPU writes are delayed until
the command buffer finishes processing, but the pages are updated
immediately.

The overall behavior is:
- CPU writes are cached until they are flushed, they update the page
  state, but don't change the modification state. Cached writes stop
  pages from being flushed, in case games have meaningful data in it.
- Command processing writes (e.g. push constants) update the page state
  and are marked to the command processor as dirty. They don't remove
  the state of cached writes.
2021-02-13 02:15:29 -03:00
..
buffer_cache buffer_base: Add support for cached CPU writes 2021-02-13 02:15:29 -03:00
command_classes Address reviewer comments 2021-02-05 16:46:03 -05:00
engines maxwell_3d: Silence array bounds warnings 2021-01-24 04:31:41 -03:00
host_shaders video_core: host_shaders: Don't pass --quiet to glslangValidator if unavailable 2021-02-01 23:39:54 -05:00
macro
renderer_opengl gl_rasterizer: Remove unused variables 2021-02-09 17:31:37 -05:00
renderer_vulkan vk_scheduler: Fix unaligned placement new expressions 2021-01-27 22:28:22 -03:00
shader Revert "Start of Integer flags implementation" 2021-01-25 02:48:03 -03:00
texture_cache texture_cache/util: Remove unused functions 2021-02-09 17:30:20 -05:00
textures common/alignment: Rename AlignBits to AlignUpLog2 2021-01-15 04:13:33 -03:00
vulkan_common vulkan_device: Blacklist Intel from float16 math (#5798) 2021-01-27 13:31:32 -08:00
cdma_pusher.cpp common/bit_util: Replace CLZ/CTZ operations with standardized ones 2021-01-15 02:15:32 -05:00
cdma_pusher.h common/bit_util: Replace CLZ/CTZ operations with standardized ones 2021-01-15 02:15:32 -05:00
CMakeLists.txt Merge pull request #5880 from lat9nq/ffmpeg-external 2021-02-08 21:13:10 -05:00
compatible_formats.cpp gl_texture_cache: Avoid format views on Intel and AMD 2021-01-04 02:06:40 -03:00
compatible_formats.h gl_texture_cache: Avoid format views on Intel and AMD 2021-01-04 02:06:40 -03:00
delayed_destruction_ring.h video_core: Add a delayed destruction ring abstraction 2020-12-30 02:10:19 -03:00
dirty_flags.cpp video_core: Rewrite the texture cache 2020-12-30 03:38:50 -03:00
dirty_flags.h video_core: Rewrite the texture cache 2020-12-30 03:38:50 -03:00
dma_pusher.cpp
dma_pusher.h
fence_manager.h video_core: Rewrite the texture cache 2020-12-30 03:38:50 -03:00
framebuffer_config.h video_core: gpu: Refactor out synchronous/asynchronous GPU implementations. 2020-12-28 16:33:48 -08:00
gpu_thread.cpp gpu: gpu_thread: Ensure MicroProfile is shutdown on exit. 2020-12-28 21:33:34 -08:00
gpu_thread.h video_core: gpu: Implement synchronous mode using threaded GPU. 2020-12-28 16:33:48 -08:00
gpu.cpp video_core: gpu: Implement synchronous mode using threaded GPU. 2020-12-28 16:33:48 -08:00
gpu.h common/common_funcs: Rename INSERT_UNION_PADDING_{BYTES,WORDS} to _NOINIT 2021-01-15 16:27:28 -03:00
guest_driver.cpp
guest_driver.h
memory_manager.cpp Merge pull request #5795 from ReinUsesLisp/bytes-to-map-end 2021-01-29 22:56:29 -08:00
memory_manager.h Merge pull request #5795 from ReinUsesLisp/bytes-to-map-end 2021-01-29 22:56:29 -08:00
query_cache.h
rasterizer_accelerated.cpp
rasterizer_accelerated.h
rasterizer_interface.h video_core: Rewrite the texture cache 2020-12-30 03:38:50 -03:00
renderer_base.cpp
renderer_base.h
shader_cache.h
shader_notify.cpp
shader_notify.h
surface.cpp video_core: Rewrite the texture cache 2020-12-30 03:38:50 -03:00
surface.h video_core: Rewrite the texture cache 2020-12-30 03:38:50 -03:00
video_core.cpp video_core: gpu: Refactor out synchronous/asynchronous GPU implementations. 2020-12-28 16:33:48 -08:00
video_core.h