Fernando Sahmkow
2f456841b0
Implement TXQ_B
7 years ago
Fernando Sahmkow
3672ecc5c4
Implement TMML_B
7 years ago
Fernando Sahmkow
8bb9877b70
Corrections to TEX_B
7 years ago
Fernando Sahmkow
d7fbc6c03f
Fixes to Const Buffer Accessor and Formatting
7 years ago
Fernando Sahmkow
e6d2e59f07
Implement Bindless Handling on SetupTexture
7 years ago
Fernando Sahmkow
dea7db19cf
Unify both sampler types.
7 years ago
Fernando Sahmkow
ee9b2e3cdc
Implement Bindless Samplers and TEX_B in the IR.
7 years ago
Fernando Sahmkow
b9a3255490
Implement Const Buffer Accessor
7 years ago
Fernando Sahmkow
a576cd4a8c
Permit a Null Shader in case of a bad host_ptr.
7 years ago
ReinUsesLisp
8092d3fad0
maxwell_3d: Reduce severity of ProcessSyncPoint
7 years ago
Lioncash
053aae66c1
video_core/textures/convert: Replace include with a forward declaration
Avoids dragging in a direct dependency in a header.
7 years ago
Lioncash
44d91d561a
video_core/texures/texture: Remove unnecessary includes
Nothing in this header relies on common_funcs or the memory manager.
This gets rid of reliance on indirect inclusions in the OpenGL caches.
7 years ago
bunnei
2a4a454793
memory_manager: Improved implementation of read/write/copy block.
- Fixes graphical issues with Chocobo's Mystery Dungeon EVERY BUDDY!
- Fixes a crash with Mario Tennis Aces
7 years ago
Lioncash
a812485b94
video_core/macro_interpreter: Remove assertion within FetchParameter()
We can just use .at(), which essentially does the same thing, but with
less code.
7 years ago
Lioncash
d2143cb59c
video_core/macro_interpreter: Simplify GetRegister()
Given we already ensure nothing can set the zeroth register in
SetRegister(), we don't need to check if the index is zero and special
case it. We can just access the register normally, since it's already
going to be zero.
We can also replace the assertion with .at() to perform the equivalent
behavior inline as part of the API.
7 years ago
Lioncash
69846b1557
video_core/memory_manager: Make Read() a const qualified member function
Given this doesn't actually alter internal state, this can be made a
const member function.
7 years ago
Lioncash
e36500c07f
video_core/memory_manager: Make ReadBlock() a const qualifier member function
Now, since we have a const qualified variant of GetPointer(), we can put
it to use in ReadBlock() to retrieve the source pointer that is passed
into memcpy.
Now block reading may be done from a const context.
7 years ago
Lioncash
514351af96
video_core/memory_manager: Add a const qualified variant of GetPointer()
Allows retrieving read-only pointers from a const context externally.
7 years ago
Lioncash
72e8ac8e4e
video_core/memory_manager: Make FindFreeRegion() a const member function
This doesn't modify internal state, so it can be made a const member
function.
7 years ago
Lioncash
ad244b004b
video_core/memory_manager: Make GpuToCpuAddress() a const member function
This doesn't modify any internal state, so it can be made a const member
function to allow its use in const contexts.
7 years ago
Fernando Sahmkow
e3d9c983aa
Implement SyncPoint Register in the GPU.
7 years ago
Lioncash
2afbfc88f2
video_core/gpu_thread: Silence truncation warning in ThreadManager's constructor
Since 7739479e15 callback parameters were
changed to use an s64 to represent late cycles instead of an int, so
this was causing a truncation warning to occur here. Changing it to s64
is sufficient to silence the warning.
7 years ago
Lioncash
1211a5623e
video_core/engines: Make memory manager members private
These aren't used externally by anything, so they can be made private
data members.
7 years ago
Lioncash
33742deaf6
video_core/engines: Remove unnecessary inclusions where applicable
Replaces header inclusions with forward declarations where applicable
and also removes unused headers within the cpp file. This reduces a few
more dependencies on core/memory.h
7 years ago
ReinUsesLisp
bce7a75a50
renderer_opengl/utils: Skip empty binds
7 years ago
ReinUsesLisp
5cea44b8c6
gl_rasterizer: Use ARB_multi_bind to update SSBOs
7 years ago
ReinUsesLisp
2cab690377
gl_rasterizer: Use ARB_multi_bind to update UBOs across stages
7 years ago
Lioncash
eb491efd9f
gl_shader_decompiler: Rename GenerateTemporal() to GenerateTemporary()
Temporal generally indicates a relation to time, but this is just
creating a temporary, so this isn't really an accurate name for what the
function is actually doing.
7 years ago
ReinUsesLisp
3585fd3d64
gl_shader_decompiler: Fix TXQ types
TXQ returns integer types. Shaders usually do:
R0 = TXQ(); // => int
R0 = static_cast<float>(R0);
If we don't treat it as an integer, it will cast a binary float value as
float - resulting in a corrupted number.
7 years ago
Lioncash
434422ab5d
video_core/renderer_opengl: Remove unnecessary includes
Quite a few unused includes have built up over time, particularly on
core/memory.h. Removing these includes means the source files including
those files will no longer need to be rebuilt if they're changed, making
compilation slightly faster in this scenario.
7 years ago
ReinUsesLisp
ef4c8e1173
gl_state: Rework to enable individual applies
7 years ago
ReinUsesLisp
f725007975
shader_ir/memory: Reduce severity of LD_L cache management and log it
7 years ago
ReinUsesLisp
c2ea1d5263
shader_ir/memory: Reduce severity of ST_L cache management and log it
7 years ago
ReinUsesLisp
62a215471a
gl_shader_decompiler: Return early when an operation is invalid
7 years ago
ReinUsesLisp
900d1eea76
gl_sampler_cache: Port sampler cache to OpenGL
7 years ago
ReinUsesLisp
e62b0ad6ae
video_core: Abstract vk_sampler_cache into a templated class
7 years ago
bunnei
03a5dce0e9
gpu_thread: Improve synchronization by using CoreTiming.
7 years ago
Lioncash
eb88e9d088
general: Use deducation guides for std::lock_guard and std::unique_lock
Since C++17, the introduction of deduction guides for locking facilities
means that we no longer need to hardcode the mutex type into the locks
themselves, making it easier to switch mutex types, should it ever be
necessary in the future.
7 years ago
ReinUsesLisp
3c45802a95
gl_shader_decompiler: Hide local definitions inside an anonymous namespace
7 years ago
Mat M
b36108f985
shader_ir/decode: Silent implicit sign conversion warning
Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc>
7 years ago
ReinUsesLisp
fbbd44eff4
gl_shader_decompiler: Add AOFFI backing implementation
7 years ago
ReinUsesLisp
0e13686917
shader_ir/decode: Implement AOFFI for TEX and TLD4
7 years ago
ReinUsesLisp
e37debc7be
shader_ir: Implement immediate register tracking
7 years ago
unknown
ef49a1b96e
common/zstd_compression: simplify decompression interface
7 years ago
unknown
f082d88ff3
gl_shader_disk_cache: Fixup clang format
7 years ago
unknown
75a7fb11ff
gl_shader_disk_cache: Use Zstandard for compression
7 years ago
unknown
92e1f5a5a9
gl_shader_disk_cache: Use LZ4HC with compression level 9 instead of compression level 12 for less compression time
7 years ago
unknown
27aac8d363
Addressed feedback
7 years ago
unknown
19f787cdea
gl_shader_disk_cache: Use better compression for transferable and precompiled shader disk chache files
7 years ago
unknown
96e14e0718
data_compression: Move LZ4 compression from video_core/gl_shader_disk_cache to common/data_compression
7 years ago