ReinUsesLisp
93e5cd3683
gl_device: Enable compute shaders for Intel Mesa drivers
...
Previously we naively checked for "Intel" in GL_VENDOR, but this
includes both Intel's proprietary driver and the mesa driver. Re-enable
compute shaders for mesa.
2019-12-11 00:00:30 -03:00
ReinUsesLisp
3914460c89
gl_shader_cache: Add missing new-line on emitted GLSL
...
Add missing new-line. This caused shaders using local memory and shared
memory to inject a preprocessor GLSL line after an expression (resulting
in invalid code).
It looked like this:
shared uint smem[8];#define LOCAL_MEMORY_SIZE 16
It should look like this (addressed by this commit):
shared uint smem[8];
\#define LOCAL_MEMORY_SIZE 16
2019-12-10 23:52:51 -03:00
bunnei
25a9e02751
Merge pull request #3201 from lioncash/dump
...
kernel/svc: Provide implementations for svcDumpInfo/svcDumpInfoNew
2019-12-10 21:48:37 -05:00
Fernando Sahmkow
5c055a2f12
Maxwell3D: Implement Depth Mode.
...
This commit finishes adding depth mode that was reverted before due to
other unresolved issues.
2019-12-10 19:51:46 -04:00
ReinUsesLisp
a075344961
shader: Implement MEMBAR.GL
...
Implement using memoryBarrier in GLSL and OpMemoryBarrier on SPIR-V.
2019-12-10 16:45:03 -03:00
ReinUsesLisp
39bd232235
vk_shader_decompiler: Fix build issues on old gcc versions
2019-12-10 01:55:38 -03:00
ReinUsesLisp
4f75e43507
vk_shader_decompiler: Reduce YNegate's severity
2019-12-09 23:52:28 -03:00
ReinUsesLisp
0b6055cdfa
shader_ir/other: Implement S2R InvocationId
2019-12-09 23:52:28 -03:00
ReinUsesLisp
b24b043a46
vk_shader_decompiler: Misc changes
...
Update Sirit and its usage in vk_shader_decompiler. Highlights:
- Implement tessellation shaders
- Implement geometry shaders
- Implement some missing features
- Use native half float instructions when available.
2019-12-09 23:51:57 -03:00
ReinUsesLisp
1663d0ea81
shader: Keep track of shaders using warp instructions
2019-12-09 23:40:41 -03:00
ReinUsesLisp
abc3527eef
shader_ir/memory: Implement patch stores
2019-12-09 23:25:21 -03:00
ReinUsesLisp
18095d884c
vk_device: Misc changes
...
- Setup more features and requirements.
- Improve logging for missing features.
- Collect telemetry parameters.
- Add queries for more image formats.
- Query push constants limits.
- Optionally enable some extensions.
2019-12-09 01:04:48 -03:00
bunnei
21d6382fae
Merge pull request #3198 from ReinUsesLisp/tessellation-maxwell
...
maxwell_3d: Add tessellation state entries
2019-12-08 22:28:25 -05:00
ReinUsesLisp
b43e16cd16
externals: Update Vulkan-Headers
2019-12-08 22:08:19 -03:00
Rodrigo Locatti
bcc37b52e9
Merge pull request #3199 from ReinUsesLisp/vk-swapchain
...
vk_swapchain: Add support for swapping sRGB
2019-12-08 21:53:22 -03:00
Lioncash
6c3e799f1c
kernel: Remove unnecessary includes
...
Over the course of the changes to the kernel code, a few includes are no
longer necessary, particularly with the change over to std::shared_ptr
from Boost's intrusive_ptr.
2019-12-07 22:37:05 -05:00
Lioncash
186944e670
kernel/svc: Provide implementations for svcDumpInfo/svcDumpInfoNew
...
These are fairly trivial to implement, we can just do nothing. This also
provides a spot for us to potentially dump out any relevant info in the
future (e.g. for debugging purposes with homebrew, etc).
While we're at it, we can also correct the names of both of these
supervisor calls.
2019-12-07 22:01:17 -05:00
ReinUsesLisp
c140fef6c1
vk_swapchain: Add support for swapping sRGB
...
We don't know until the game is running if it's using an sRGB color
space or not. Add support for hot-swapping swapchain surface formats.
2019-12-06 22:42:08 -03:00
ReinUsesLisp
595d224867
maxwell_3d: Add tessellation tess level registers
2019-12-06 22:08:22 -03:00
ReinUsesLisp
049cd68e89
maxwell_3d: Add tessellation mode register
2019-12-06 22:07:31 -03:00
ReinUsesLisp
038b1f44b8
maxwell_3d: Add patch vertices register
2019-12-06 22:06:53 -03:00
bunnei
faff034532
Merge pull request #3195 from FernandoS27/clear-exclusive
...
CpuCore: Clear exclusive state after doing a run in dynarmic.
2019-12-06 20:00:23 -05:00
ReinUsesLisp
89725003b0
shader_bytecode: Remove corrupted character
2019-12-06 20:31:56 -03:00
bunnei
18557d450d
Merge pull request #3109 from FernandoS27/new-instr
...
Implement FLO & TXD Instructions on GPU Shaders
2019-12-06 18:18:16 -05:00
Fernando Sahmkow
647ad8ce9b
CpuCore: Clear exclusive state after doing a run in dynarmic.
...
This commit corrects an error in which a Core could remain with an
exclusive state after running, leaving space for possible race
conditions between changing cores.
2019-12-05 18:08:59 -04:00
ReinUsesLisp
a4da23b091
telemetry_session: Report renderer backend
...
We only have OpenGL as an option for now. Hardcode the entry.
2019-12-02 16:50:39 -03:00
ReinUsesLisp
907051701d
telemetry_session: Use temporary to avoid writing the same enum
2019-12-02 16:49:46 -03:00
bunnei
9355bdc528
Merge pull request #2987 from FernandoS27/texture-invalid
...
Texture_Cache: Redo invalid Surfaces handling.
2019-12-02 12:07:05 -05:00
bunnei
aaf09e6b9d
Merge pull request #3177 from bunnei/new-ipc-req
...
kernel: Implement a more accurate IPC dispatch.
2019-11-30 18:56:35 -05:00
bunnei
2d6a42757e
Merge pull request #3184 from ReinUsesLisp/framebuffer-cache
...
gl_framebuffer_cache: Optimize framebuffer cache management
2019-11-30 18:46:40 -05:00
ReinUsesLisp
182e196f57
texture_cache/surface_base: Fix out of bounds texture views
...
Some texture views were being created out of bounds (with more layers or
mipmaps than what the original texture has). This is because of a
miscalculation in mipmap bounding. end_layer and end_mipmap are out of
bounds (e.g. layer 6 in a cubemap), there's no need to add one more
there.
Fixes OpenGL errors and Vulkan crashes on Splatoon 2.
2019-11-29 16:51:14 -03:00
ReinUsesLisp
39fbda6644
gl_framebuffer_cache: Optimize framebuffer key
...
Pack color attachment enumerations into a single u32. To determine the
number of buffers, the highest color attachment with a shared pointer
that doesn't point to null is used.
2019-11-28 23:02:20 -03:00
ReinUsesLisp
239145bab0
gl_rasterizer: Re-enable framebuffer cache for clear buffers
2019-11-28 23:02:20 -03:00
ReinUsesLisp
21d000111b
renderer_opengl: Make ScreenRectVertex's constructor constexpr
2019-11-28 20:36:02 -03:00
ReinUsesLisp
e3d257cf14
renderer_opengl: Remove C casts
2019-11-28 20:28:27 -03:00
ReinUsesLisp
8ae3307a66
renderer_opengl: Use explicit binding for presentation shaders
2019-11-28 20:25:56 -03:00
ReinUsesLisp
126469b195
renderer_opengl: Drop macros for message decorations
2019-11-28 20:15:25 -03:00
ReinUsesLisp
f6939ee640
renderer_opengl: Move static definitions to anonymous namespace
2019-11-28 20:14:40 -03:00
ReinUsesLisp
beaf24f8ee
renderer_opengl: Move commentaries to header file
2019-11-28 20:11:03 -03:00
bunnei
d9f03d3073
kernel: Implement a more accurate IPC dispatch.
2019-11-28 12:01:53 -05:00
bunnei
aa7f995022
Merge pull request #3169 from lioncash/memory
...
core/memory: Deglobalize memory management code
2019-11-28 11:43:17 -05:00
bunnei
be086260d0
Merge pull request #3171 from lioncash/internal-link
...
filesys/romfs: Make ProcessFile and ProcessDirectory internally linked
2019-11-28 01:18:10 -05:00
Morph
47d1087a7a
patch_manager: Adds check for disabled cheats to prevent them from being enabled ( #3178 )
...
* Adds check for disabled cheats to prevent them from being added to the CheatList
* Address feedback
2019-11-28 01:17:17 -05:00
bunnei
dec181fe34
Merge pull request #3170 from lioncash/enum
...
file_sys/directory: Make EntryType an enum class
2019-11-27 23:23:01 -05:00
Rodrigo Locatti
4160eb6993
Merge pull request #3174 from lioncash/optional
...
video_core/gpu_thread: Tidy up SwapBuffers()
2019-11-27 20:35:31 -03:00
Lioncash
fbf80cac20
video_core/gpu_thread: Tidy up SwapBuffers()
...
We can just use std::nullopt and std::make_optional to make this a
little bit less noisy.
2019-11-27 17:46:11 -05:00
Lioncash
195790f60b
video_core/const_buffer_locker: Make use of std::tie in HasEqualKeys()
...
Tidies it up a little bit visually.
2019-11-27 05:53:43 -05:00
Lioncash
2a9c996716
video_core/const_buffer_locker: Remove unused includes
2019-11-27 05:51:13 -05:00
Lioncash
33ac3ed72d
video_core/const_buffer_locker: Remove #pragma once from cpp file
...
Silences a compiler warning.
2019-11-27 05:50:51 -05:00
Lioncash
42d2c5ba03
filesys/romfs: Remove unused includes
...
These inclusions aren't used at all within the public interface, so they
can be removed.
2019-11-27 05:29:52 -05:00