| Age | Commit message (Collapse) | Author |
|
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.
|
|
Avoids introducing Maxwell3D into the namespace for everything that
includes the header.
|
|
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.
|
|
Previously only one line of the whole comment was in proper Doxygen
formatting.
|
|
gpu: Rewrite MemoryManager based on the VMManager implementation.
|
|
- Fixes graphical issues from transitions in Super Mario Odyssey.
|
|
|
|
|
|
|
|
- Avoid a crash in Octopath Traveler.
|
|
- Avoid a crash in Xenoblade Chronicles 2.
|
|
surface.
- Fixes a crash in Puyo Puyo Tetris.
|
|
|
|
|
|
|
|
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
|
|
|
|
video_core/morton: Miscellaneous changes
|
|
vk_sampler_cache: Implement a sampler cache
|
|
gl_rasterizer: Use system instance passed from argument
|
|
renderer_opengl/gl_global_cache: Add missing override specifiers
|
|
|
|
|
|
|
|
|
|
|
|
Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc>
|
|
|
|
|
|
gl_rasterizer: Encapsulate sampler queries into methods
|
|
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.
|
|
Two of the functions here are overridden functions, so we can append
these specifiers to make it explicit.
|
|
|
|
shader_ir: Remove "extras" from the MetaTexture
|
|
gl_rasterizer_cache: Create texture views for array discrepancies
|
|
|
|
|
|
video_core/gpu_thread: Silence a -Wreorder warning
|
|
video_core/gpu: Make GPU's destructor virtual
|
|
maxwell_to_vk: Initial implementation
|
|
Instead of holding a reference that will get invalidated by
dma_pushbuffer.pop(), hold it as a copy. This doesn't have any
performance cost since CommandListHeader is 8 bytes long.
|
|
This function didn't have a definition, so we can remove it to prevent
accidentally attempting to use it.
|
|
Moves the data members to satisfy the order they're declared as in the
constructor initializer list.
Silences a -Wreorder warning.
|
|
Because of the recent separation of GPU functionality into sync/async
variants, we need to mark the destructor virtual to provide proper
destruction behavior, given we use the base class within the System
class.
Prior to this, it was undefined behavior whether or not the destructor
in the derived classes would ever execute.
|
|
Asynchronous GPU command processing
|
|
gl_rasterizer_cache: Move format conversion functions to their own file
|
|
|
|
|