unknown
ef49a1b96e
common/zstd_compression: simplify decompression interface
2019-03-29 18:22:08 +01:00
unknown
f082d88ff3
gl_shader_disk_cache: Fixup clang format
2019-03-29 18:22:08 +01:00
unknown
75a7fb11ff
gl_shader_disk_cache: Use Zstandard for compression
2019-03-29 18:22:08 +01:00
unknown
92e1f5a5a9
gl_shader_disk_cache: Use LZ4HC with compression level 9 instead of compression level 12 for less compression time
2019-03-29 18:13:00 +01:00
unknown
27aac8d363
Addressed feedback
2019-03-29 18:12:42 +01:00
unknown
19f787cdea
gl_shader_disk_cache: Use better compression for transferable and precompiled shader disk chache files
2019-03-29 16:42:19 +01:00
unknown
96e14e0718
data_compression: Move LZ4 compression from video_core/gl_shader_disk_cache to common/data_compression
2019-03-29 16:42:19 +01:00
ReinUsesLisp
90d3207122
vk_swapchain: Implement a swapchain manager
2019-03-29 00:00:51 -03:00
bunnei
0ac7add529
Merge pull request #2296 from lioncash/override
...
video_core: Add missing override specifiers
2019-03-28 17:54:51 -04:00
Lioncash
781f4d8440
gl_shader_manager: Remove unnecessary gl_shader_manager inclusion
...
This isn't used at all in the OpenGL shader cache, so we can remove it's
include here, meaning one less file needs to be recompiled if any
changes ever occur within that header.
core/memory.h is also not used within this file at all, so we can remove
it as well.
2019-03-28 11:16:25 -04:00
Lioncash
70a42ea349
gl_shader_manager: Move using statement into the cpp file
...
Avoids introducing Maxwell3D into the namespace for everything that
includes the header.
2019-03-28 11:16:21 -04:00
Lioncash
1df62d861c
gl_shader_manager: Remove reliance on global accessor within MaxwellUniformData::SetFromRegs()
...
We can just pass in the Maxwell3D instance instead of going through the
system class to get at it.
This also lets us simplify the interface a little bit. Since we pass in
the Maxwell3D context now, we only really need to pass the shader stage
index value in.
2019-03-28 11:14:24 -04:00
Lioncash
4c07a71739
gl_shader_manager: Amend Doxygen string for MaxwellUniformData
...
Previously only one line of the whole comment was in proper Doxygen
formatting.
2019-03-27 13:10:43 -04:00
Lioncash
3b04b916bb
gpu_thread: Remove unused dma_pusher class member variable from ThreadManager
...
The pusher instance is only ever used in the constructor of the
ThreadManager for creating the thread that the ThreadManager instance
contains. Aside from that, the member is unused, so it can be removed.
2019-03-27 12:51:21 -04:00
Lioncash
549882f019
gl_rasterizer: Remove unused reference member variable from RasterizerOpenGL
...
This member variable is no longer being used, so it can be removed,
removing a dependency on EmuWindow from the rasterizer's interface"
2019-03-27 12:45:59 -04:00
Lioncash
e2256a1d54
video_core: Amend constructor initializer list order where applicable
...
Specifies the members in the same order that initialization would take
place in.
This also silences -Wreorder warnings.
2019-03-27 12:37:53 -04:00
Lioncash
5b0afa2188
video_core: Add missing override specifiers
...
Ensures that the signatures will always match with the base class.
Also silences a few compilation warnings.
2019-03-27 12:24:52 -04:00
Lioncash
c34cb4ebcc
video_core/gpu: Amend typo in GPU member variable name
...
smaphore -> semaphore
2019-03-27 12:12:57 -04:00
bunnei
fabddcb962
Merge pull request #2256 from bunnei/gpu-vmm
...
gpu: Rewrite MemoryManager based on the VMManager implementation.
2019-03-22 18:41:12 -04:00
bunnei
6c61263b5c
Revert "Devirtualize Register/Unregister and use a wrapper instead."
...
- Fixes graphical issues from transitions in Super Mario Odyssey.
2019-03-21 21:56:56 -04:00
bunnei
51cdb0df88
memory_manager: Cleanup FindFreeRegion.
2019-03-20 23:12:28 -04:00
bunnei
c04b7bd60c
memory_manager: Use Common::AlignUp in public interface as needed.
2019-03-20 22:58:49 -04:00
bunnei
7521cd30d1
memory_manager: Bug fixes and further cleanup.
2019-03-20 22:36:03 -04:00
bunnei
a0b5ed6846
maxwell_dma: Check for valid source in destination before copy.
...
- Avoid a crash in Octopath Traveler.
2019-03-20 22:36:03 -04:00
bunnei
bb6e007a63
memory_manager: Add protections for invalid GPU addresses.
...
- Avoid a crash in Xenoblade Chronicles 2.
2019-03-20 22:36:03 -04:00
bunnei
b34849e61a
gl_rasterizer_cache: Check that backing memory is valid before creating a surface.
...
- Fixes a crash in Puyo Puyo Tetris.
2019-03-20 22:36:02 -04:00
bunnei
fa405371ee
gpu: Rewrite virtual memory manager using PageTable.
2019-03-20 22:36:02 -04:00
bunnei
6f872bd580
gpu: Move GPUVAddr definition to common_types.
2019-03-20 22:36:02 -04:00
bunnei
65db8f5f47
gl_rasterizer: Skip zero addr/sized regions on flush/invalidate.
2019-03-16 22:03:19 -04:00
bunnei
c30ea8aa0d
Merge pull request #2244 from bunnei/gpu-mem-refactor
...
video_core: Refactor to use MemoryManager interface for all memory access.
2019-03-16 21:59:45 -04:00
bunnei
ee8ae39de5
memory: Simplify rasterizer cache operations.
2019-03-16 00:41:08 -04:00
bunnei
d3f26c1546
video_core: Refactor to use MemoryManager interface for all memory access.
...
# Conflicts:
# src/video_core/engines/kepler_memory.cpp
# src/video_core/engines/maxwell_3d.cpp
# src/video_core/morton.cpp
# src/video_core/morton.h
# src/video_core/renderer_opengl/gl_global_cache.cpp
# src/video_core/renderer_opengl/gl_global_cache.h
# src/video_core/renderer_opengl/gl_rasterizer_cache.cpp
2019-03-16 00:38:48 -04:00
bunnei
7fccfc3ee7
gpu: Use host address for caching instead of guest address.
2019-03-14 22:34:42 -04:00
bunnei
e400f8b65f
Merge pull request #2233 from ReinUsesLisp/morton-cleanup
...
video_core/morton: Miscellaneous changes
2019-03-14 21:23:12 -04:00
bunnei
5e4baabe78
Merge pull request #2229 from ReinUsesLisp/vk-sampler-cache
...
vk_sampler_cache: Implement a sampler cache
2019-03-14 21:22:34 -04:00
bunnei
7cf17f50d9
Merge pull request #2216 from ReinUsesLisp/rasterizer-system
...
gl_rasterizer: Use system instance passed from argument
2019-03-14 16:37:05 -04:00
bunnei
504f56e33a
Merge pull request #2227 from lioncash/override
...
renderer_opengl/gl_global_cache: Add missing override specifiers
2019-03-13 17:05:49 -04:00
ReinUsesLisp
7db0e52458
video_core/morton: Use enum to describe MortonCopyPixels128 mode
2019-03-13 16:35:21 -03:00
ReinUsesLisp
91423268d3
video_core/morton: Remove unused parameter in MortonSwizzle
2019-03-13 16:35:10 -03:00
ReinUsesLisp
0c17b26ef8
video_core/morton: Remove clang-format off when it's not needed
2019-03-13 16:16:45 -03:00
ReinUsesLisp
369409d4f7
video_core/morton: Remove unused functions
2019-03-13 16:15:54 -03:00
ReinUsesLisp
3288b12a28
video_core/texture: Fix up sampler lod bias
2019-03-13 00:45:54 -03:00
Mat M
0dfdec8949
vk_sampler_cache: Use operator== instead of memcmp
...
Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc>
2019-03-12 21:05:36 -03:00
ReinUsesLisp
a9c05dfcd7
vk_sampler_cache: Implement a sampler cache
2019-03-12 20:20:57 -03:00
ReinUsesLisp
1fc1607e10
video_core/texture: Add a raw representation of TSCEntry
2019-03-12 16:56:29 -03:00
bunnei
06886d0c41
Merge pull request #2215 from ReinUsesLisp/samplers
...
gl_rasterizer: Encapsulate sampler queries into methods
2019-03-12 13:10:53 -04:00
Lioncash
ca1cb6bef4
renderer_opengl/gl_global_cache: Replace indexing for assignment with insert_or_assign
...
The previous code had some minor issues with it, really not a big deal,
but amending it is basically 'free', so I figured, "why not?".
With the standard container maps, when:
map[key] = thing;
is done, this can cause potentially undesirable behavior in certain
scenarios. In particular, if there's no value associated with the key,
then the map constructs a default initialized instance of the value
type.
In this case, since it's a std::shared_ptr (as a type alias) that is
the value type, this will construct a std::shared_pointer, and then
assign over it (with objects that are quite large, or actively heap
allocate this can be extremely undesirable).
We also make the function take the region by value, as we can avoid a
copy (and by extension with std::shared_ptr, a copy causes an atomic
reference count increment), in certain scenarios when ownership isn't a
concern (i.e. when ReserveGlobalRegion is called with an rvalue
reference, then no copy at all occurs). So, it's more-or-less a "free"
gain without many downsides.
2019-03-11 12:20:35 -04:00
Lioncash
b7e2370601
renderer_opengl/gl_global_cache: Append missing override specifiers
...
Two of the functions here are overridden functions, so we can append
these specifiers to make it explicit.
2019-03-11 12:02:30 -04:00
ReinUsesLisp
8f48835a8e
gl_rasterizer: Use system instance passed from argument
2019-03-11 03:17:21 -03:00
bunnei
11ac277646
Merge pull request #2147 from ReinUsesLisp/texture-clean
...
shader_ir: Remove "extras" from the MetaTexture
2019-03-10 17:28:36 -04:00