ReinUsesLisp
a650406899
gl_shader_decompiler: Implement gl_ViewportIndex and gl_Layer in vertex shaders
This commit implements gl_ViewportIndex and gl_Layer in vertex and
geometry shaders. In the case it's used in a vertex shader, it requires
ARB_shader_viewport_layer_array. This extension is available on AMD and
Nvidia devices (mesa and proprietary drivers), but not available on
Intel on any platform. At the moment of writing this description I don't
know if this is a hardware limitation or a driver limitation.
In the case that ARB_shader_viewport_layer_array is not available,
writes to these registers on a vertex shader are ignored, with the
appropriate logging.
7 years ago
Tobias
d15f1f4e9e
Delete decode_integer_set.cpp
7 years ago
ReinUsesLisp
48d485d6df
shader/texture: Add F16 support for TLDS
7 years ago
Lioncash
873b1cee22
vk_sampler_cache: Remove unused includes
These are no longer used within this header, so they can be removed.
7 years ago
Lioncash
85a4cb423d
video_core: Add missing override specifiers
7 years ago
ReinUsesLisp
a7192b9512
vk_scheduler: Drop execution context in favor of views
Instead of passing by copy an execution context through out the whole
Vulkan call hierarchy, use a command buffer view and fence view
approach.
This internally dereferences the command buffer or fence forcing the
user to be unable to use an outdated version of it on normal usage.
It is still possible to keep store an outdated if it is casted to
VKFence& or vk::CommandBuffer.
While changing this file, add an extra parameter for Flush and Finish to
allow releasing the fence from this calls.
7 years ago
ReinUsesLisp
56d7606d2c
buffer_cache: Avoid [[nodiscard]] to make clang-format happy
7 years ago
ReinUsesLisp
09c775cb05
buffer_cache: Try to fix MinGW build
7 years ago
ReinUsesLisp
cb2a4bffd0
gl_rasterizer: Fix nullptr dereference on disabled buffers
7 years ago
ReinUsesLisp
e6d37e10db
gl_rasterizer: Minor style changes
7 years ago
ReinUsesLisp
3a1fafb474
gl_rasterizer: Fix vertex and index data invalidations
7 years ago
ReinUsesLisp
32b4a2e093
gl_buffer_cache: Implement with generic buffer cache
7 years ago
ReinUsesLisp
d3ae5ce80c
buffer_cache: Implement a generic buffer cache
Implements a templated class with a similar approach to our current
generic texture cache. It is designed to be compatible with Vulkan and
OpenGL,
7 years ago
ReinUsesLisp
b5fe7c096f
gl_buffer_cache: Remove global system getters
7 years ago
ReinUsesLisp
e9d8c0bdcf
gl_device: Query SSBO alignment
7 years ago
ReinUsesLisp
9499333493
gl_buffer_cache: Implement flushing
7 years ago
ReinUsesLisp
5b82a1bea0
gl_rasterizer: Drop gl_global_cache in favor of gl_buffer_cache
7 years ago
ReinUsesLisp
a5cfe7d0b1
gl_buffer_cache: Rework to support internalized buffers
7 years ago
ReinUsesLisp
1b416d78b9
gl_buffer_cache: Store in CachedBufferEntry the used buffer handle
7 years ago
ReinUsesLisp
450b4911ed
gl_buffer_cache: Return used buffer from Upload function
7 years ago
ReinUsesLisp
388d7506dd
gl_rasterizer: Add some commentaries
7 years ago
ReinUsesLisp
39b1990db1
gl_rasterizer: Make DrawParameters rasterizer instance const
7 years ago
ReinUsesLisp
2dfe9aa51e
gl_rasterizer: Move index buffer uploading to its own method
7 years ago
Fernando Sahmkow
b8b874005f
NVServices: Styling, define constructors as explicit and corrections
7 years ago
Fernando Sahmkow
a156731a9c
NVFlinger: Correct GCC compile error
7 years ago
Fernando Sahmkow
9db53b51b6
NVServices: Make NVEvents Automatic according to documentation.
7 years ago
Fernando Sahmkow
604dc3f59b
GPU: Correct Interrupts to interrupt on syncpt/value instead of event, mirroring hardware
7 years ago
Fernando Sahmkow
78c4536960
gpu_asynch: Simplify synchronization to a simpler consumer->producer scheme.
7 years ago
Fernando Sahmkow
772d205e8f
nv_host_ctrl: Make Sync GPU variant always return synced result.
7 years ago
Fernando Sahmkow
b18365ed59
Async GPU: do invalidate as synced operation
Async GPU: Always invalidate synced.
7 years ago
Fernando Sahmkow
ff34715d92
Gpu: use an std mutex instead of a spin_lock to guard syncpoints
7 years ago
Fernando Sahmkow
095e6b1cd9
Gpu: Mark areas as protected.
7 years ago
Fernando Sahmkow
8c8e96b87c
nv_services: Stub CtrlEventSignal
7 years ago
Fernando Sahmkow
1fb8727a9a
Gpu: Implement Hardware Interrupt Manager and manage GPU interrupts
7 years ago
Fernando Sahmkow
779c115dbb
video_core: Implement GPU side Syncpoints
7 years ago
Fernando Sahmkow
c3c7215820
texture_cache: Address Feedback
7 years ago
Fernando Sahmkow
98de1132e7
texture_cache: Correct Texture Buffer Uploading
7 years ago
Zach Hilman
113e92bdd1
gl_shader_cache: Make CachedShader constructor private
Fixes missing review comments introduced.
7 years ago
Fernando Sahmkow
e4fa20d3e3
rasterizer_cache: Protect inherited caches from submission level
7 years ago
ReinUsesLisp
d63e3694a9
texture_cache: Pack sibling queries inside a method
7 years ago
ReinUsesLisp
f62b935c96
texture_cache: Use std::vector reservation for sampled_textures
7 years ago
ReinUsesLisp
7aab8bd6cf
texture_cache: Style changes
7 years ago
ReinUsesLisp
9102684cff
texture_cache: Use std::array for siblings_table
7 years ago
ReinUsesLisp
cff02c291c
texture_cache: Address feedback
7 years ago
Fernando Sahmkow
d368dbfb1a
texture_cache: Correct variable naming.
7 years ago
Fernando Sahmkow
ddcac58e02
gl_texture_cache: Correct asserts
7 years ago
Fernando Sahmkow
ed8f90a679
texture_cache: Corrections, documentation and asserts
7 years ago
Fernando Sahmkow
4cbbcaa004
surface_params: Corrections, asserts and documentation.
7 years ago
Fernando Sahmkow
db0a2db61c
copy_params: use constexpr for constructor
7 years ago
Fernando Sahmkow
fd89a8f7cf
gl_texture_cache: Corrections and fixes
7 years ago