Commit graph

18481 commits

Author SHA1 Message Date
ReinUsesLisp
2bb0069e4e shader: Add XMAD multiplication folding optimization 2021-07-22 21:51:22 -04:00
ReinUsesLisp
973936894d shader: Simplify ISCADD 2021-07-22 21:51:22 -04:00
ReinUsesLisp
073f346f8c shader: Add utility to resolve identities on a value 2021-07-22 21:51:22 -04:00
ReinUsesLisp
a93521dc7e spirv: Implement EmitIdentity 2021-07-22 21:51:22 -04:00
ReinUsesLisp
605783f828 spirv: Initial bindings support 2021-07-22 21:51:22 -04:00
ReinUsesLisp
dc384d68ac shader: Improve object pool 2021-07-22 21:51:22 -04:00
ReinUsesLisp
1c69500977 shader: Fix tracking 2021-07-22 21:51:22 -04:00
ReinUsesLisp
60342eb0c0 shader: Add support for forward declarations 2021-07-22 21:51:22 -04:00
ReinUsesLisp
756c643f08 shader: Support SSA loops on IR 2021-07-22 21:51:22 -04:00
ReinUsesLisp
76a3a2510f shader: Misc fixes 2021-07-22 21:51:22 -04:00
ReinUsesLisp
c4d75e4b78 shader: Initial implementation of an AST 2021-07-22 21:51:22 -04:00
ReinUsesLisp
5ee600cf64 spirv: Initial SPIR-V support 2021-07-22 21:51:22 -04:00
ReinUsesLisp
8e9207253c shader: Better constant folding 2021-07-22 21:51:22 -04:00
ReinUsesLisp
0dcc0d5f8a shader: Properly store phi on Inst 2021-07-22 21:51:21 -04:00
ReinUsesLisp
b229ffc0bc shader: Add pools and rename files 2021-07-22 21:51:21 -04:00
ReinUsesLisp
f5b3324bca shader: Make typed IR 2021-07-22 21:51:21 -04:00
ReinUsesLisp
855d01d02b shader: Remove illegal character in SSA pass 2021-07-22 21:51:21 -04:00
ReinUsesLisp
37fc39de17 shader: Constant propagation and global memory to storage buffer 2021-07-22 21:51:21 -04:00
ReinUsesLisp
f5605b424f shader: Initial instruction support 2021-07-22 21:51:21 -04:00
ReinUsesLisp
1b576ed4cb shader: SSA and dominance 2021-07-22 21:51:21 -04:00
ReinUsesLisp
e6892e9da6 shader: Initial recompiler work 2021-07-22 21:51:21 -04:00
ameerj
0dfa52612f thread_worker: Fix compile time error
state is unused in the branch where with_state is false
2021-07-22 21:51:21 -04:00
bunnei
f7454fabb3 Merge pull request #6686 from ReinUsesLisp/vk-optimal-copy
vk_texture_cache: Use VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL when possible
2021-07-22 12:51:13 -04:00
Morph
4b29df2ff2 Merge pull request #6693 from lat9nq/cmd-fullscreen-mode-2
yuzu_cmd: Make use of fullscreen_mode setting
2021-07-22 00:55:01 -04:00
bunnei
18a787b357 Merge pull request #6654 from german77/custom_threshold
input_common: Make button threshold customizable
2021-07-21 20:31:33 -04:00
lat9nq
1cba6817e0 yuzu_cmd: Make use of fullscreen_mode setting
Reverts 48259de0c1a6a1aca77eec31cb8aca5ca2b680dd to the previous
hierarchy and fixes the resolution issue with this fullscreen mode.
yuzu-cmd will now read the fullscreen_mode setting and use it
appropriately.
2021-07-21 19:48:03 -04:00
bunnei
0683896985 ci: Increase mainline build timeout.
- We're currently timing out with builds exceeding 60M. This doubles the timeout to 120M.
2021-07-21 13:03:20 -07:00
san
48bd60e5c3 yuzu-cmd: Fullscreen Improvements (#6656)
* emu_window_sdl2_vk: Use the generated SDL config

On Linux, due to the way we include SDL2 as a submodule, it makes it
difficult for us to specify which SDL_config.h we intended to include.
Before, CMake would default to the dummy one included with SDL and
ignore the generated one.

This tells CMake to use the generated one. In addition, we define
USING_GENERATED_CONFIG_H to throw an error in case the dummy config is
used by accident. Fixes Vulkan not working on Linux yuzu-cmd.

* emu_window_sdl2_vk: Specify the window manager if it should be supported

The original language "not implemented" is wrong if the implementation
exists but is not compiled. This causes a bit of a debugging headache
when it goes wrong. Log it if the window manager is known before
exiting.

* sdl_impl, emu_window: Remove clang ignore

Fixed upstream by
libsdl-org/SDL@25fc40b0bd

* Enable fullscreen support for Vulkan on yuzu-cmd

Hooked up the existing SDL2 logic for fullscreen support in the Vulkan window of yuzu-cmd.

* Change fullscreen logic to attempt desktop resolution first on yuzu-cmd

Changed the order in which we attempt to switch to fullscreen. First try desktop resolution first, if it fails fall back to streched fullscreen using windowed resolution.

Co-authored-by: lat9nq <22451773+lat9nq@users.noreply.github.com>
Co-authored-by: san <san+gitkraken@smederijmerlijn.nl>
2021-07-21 11:56:42 -07:00
bunnei
b8a0a8bbac Merge pull request #6660 from Morph1984/controller_applet_rev8
applet_controller: Add preliminary support for version 8
2021-07-21 00:01:46 -04:00
bunnei
def3f59ed9 Merge pull request #6649 from german77/toggle_sdl
input_common: Support SDL toggle buttons
2021-07-20 20:35:20 -04:00
bunnei
e72b0da651 Merge pull request #6629 from FernandoS27/accel-dma-2
DMAEngine: Accelerate BufferClear [accelerateDMA Part 2]
2021-07-20 17:35:05 -04:00
bunnei
29afacce57 Merge pull request #6658 from Morph1984/render-window-fix
bootmanager: Create a dummy render widget
2021-07-20 15:55:48 -04:00
Fernando S
cabe8dba04 Merge pull request #6685 from ReinUsesLisp/radeonsi-client
gl_texture_cache: Workaround slow PBO downloads on radeonsi
2021-07-20 20:33:07 +02:00
Morph
eee7653871 Merge pull request #6684 from ogniK5377/uuid-cpp20-new
uuid: Directly compare UUID instead of checking per element
2021-07-20 13:44:48 -04:00
ReinUsesLisp
e544a2a207 vk_texture_cache: Use VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL when possible
Silences performance warnings generated from validation layers on each frame.
2021-07-20 14:38:58 -03:00
ReinUsesLisp
0b1ad8e66c gl_texture_cache: Workaround slow PBO downloads on radeonsi
There's an optimization bug on non-git mesa versions where not
specifying GL_CLIENT_STORAGE_BIT causes very slow reads on the CPU
side.

Add this bit for all vendors.
2021-07-20 14:02:11 -03:00
Chloe Marcec
7ce462a1f7 uuid: Directly compare UUID instead of checking per element
We can now update this for C++20
2021-07-21 02:36:57 +10:00
Fernando S
805f1888da vk_buffer_cache: Fix quad index array with 0 vertices (#6627) 2021-07-20 05:05:28 -03:00
Nicolas Jallamion
d417596f27 input/sdl_impl: fix rumble support on DualSense. (#6683)
- value return can be different 0, is not error is normal, error is only -1.
2021-07-20 04:00:07 -04:00
Morph
03639b1262 applet_controller: Add preliminary support for version 8
Version 8 adds support for key remapping introduced in FW 11.0, we will not be implementing this for now.
2021-07-20 01:45:19 -04:00
Morph
13e270c3f5 bootmanager: Create a dummy render widget
This ensures that Qt positions the render window at the correct position on initializing the respective render backends.
2021-07-20 01:40:18 -04:00
Feng Chen
77f209e391 file_sys: Support load game collection (#6582)
Adds support for loading games with multiple programs embedded within such as the Dragon Quest 1+2+3 Collection
2021-07-20 01:10:05 -04:00
Rodrigo Locatti
4b477d0021 Merge pull request #6580 from ReinUsesLisp/xfb-radv
vk_buffer_cache: Use emulated null buffers for transform feedback
2021-07-19 23:01:19 -03:00
bunnei
40a1066bf7 Merge pull request #6652 from lat9nq/cmd-vulkan-fixes
yuzu-cmd: Linux Vulkan fixes
2021-07-19 20:54:03 -04:00
bunnei
dbf91f78e8 Merge pull request #6651 from lat9nq/update-settings
yuzu-cmd: Update settings
2021-07-19 12:46:40 -04:00
Fernando S
03acdb4356 Merge pull request #6679 from yzct12345/fix-lets-go
Fix Pokemon Let's Go on Vulkan
2021-07-19 03:29:54 +02:00
Fernando S
55d9c6ece2 Merge pull request #6670 from ReinUsesLisp/prepare-rt
texture_cache: Always prepare image views on render targets
2021-07-19 03:21:25 +02:00
Fernando S
a3598a71f5 Merge pull request #6669 from ReinUsesLisp/fix-samples-sizes
texture_cache/util: Fix size calculations of multisampled images
2021-07-19 03:21:03 +02:00
Ameer J
8f55096f4c Merge pull request #6677 from ReinUsesLisp/new-validate-errors
vulkan: Fix misc validation and synchronization errors
2021-07-18 18:30:28 -04:00
yzct12345
bb88da8b30 Update src/video_core/renderer_vulkan/vk_texture_cache.cpp
Co-authored-by: Vitor K <vitor-kiguchi@hotmail.com>
2021-07-18 22:23:32 +00:00