Commit Graph

29689 Commits

Author SHA1 Message Date
iwubcode d320366954 VideoCommon: add custom shader cache to VertexManagerBase, supporting custom pixel shaders by replacing the existing pipeline with a modified one 2023-08-20 18:53:27 -05:00
iwubcode bedbf2b8c6 VideoCommon: add custom shader cache 2023-08-20 18:53:27 -05:00
iwubcode dbaf24ef09 VideoCommon: add data needed to support custom pixel shaders to graphics mod actions 2023-08-20 18:53:27 -05:00
iwubcode 4283d76718 VideoCommon: uber pixel shader gen changes needed to support custom pixel shaders in graphics mods 2023-08-20 18:53:27 -05:00
iwubcode e704385fce VideoCommon: pixel shader gen changes needed to support custom pixel shaders in graphics mods 2023-08-20 18:53:27 -05:00
iwubcode c3a370839a VideoCommon: add helper functions to handle generating custom lighting code for a custom pixel shader 2023-08-20 18:53:27 -05:00
iwubcode 0da5cf60a8 VideoCommon: add custom pixel shader definition and custom shader header to shadergen common as it will be used by both the special and uber shader variant of pixel shaders 2023-08-20 18:53:27 -05:00
Admiral H. Curtiss f19651e49b
Merge pull request #11025 from AdmiralCurtiss/hle-printf
HLE_OS: Manually handle printfs from emulated software to prevent emulated software from crashing Dolphin with an invalid printf formatting string.
2023-08-20 01:31:49 +02:00
Admiral H. Curtiss d36f0fff4c
Jit64: Actually update membase register after GlobalAdvance(). 2023-08-19 17:00:01 +02:00
JosJuice ed7894924c
Merge pull request #12048 from krnlyng/someothertest
Jit: Load the memory register only when the msr bits have changed and do not use jumps to load it.
2023-08-19 09:49:29 +02:00
Admiral H. Curtiss b6bfa10ace
Merge pull request #11996 from Dentomologist/remove_pointless_pauseandlock_functions
EXI: Remove pointless PauseAndLock functions
2023-08-18 21:35:56 +02:00
Admiral H. Curtiss bb4ed1c450
Merge pull request #12118 from AdmiralCurtiss/tas-window-translatable
DolphinQt/TASInputWindow: Make 'Enable Controller Input' translatable.
2023-08-18 21:33:23 +02:00
Admiral H. Curtiss 8a96ce73f6
Merge pull request #12044 from jmlee337/upnpport
Do not try portmapping when using traversal server
2023-08-18 21:28:52 +02:00
Admiral H. Curtiss 9a51215af3
Merge pull request #12083 from JosJuice/android-controlled-by-gamepad
InputConfig: Update IsControllerControlledByGamepadDevice for Android input overhaul
2023-08-18 21:27:26 +02:00
xujibbs b3902397cb
DolphinQt/TASInputWindow: Make 'Enable Controller Input' translatable. 2023-08-18 21:02:30 +02:00
Admiral H. Curtiss 3441fe6efc
Merge pull request #11999 from Filoppi/post_process_fixes
Video: implement output resampling (upscaling/downscaling) methods
2023-08-18 20:33:09 +02:00
JosJuice a9ec2a6e41
Merge pull request #12116 from AdmiralCurtiss/log-colors
DolphinQt/LogWidget: Restore log window colors.
2023-08-18 09:00:43 +02:00
Filoppi 80b453082d Video: fix post process shaders with parameters failing to build on OpenGL
This was because the shader uniforms between the pixel and vertex shaders
were willingly left different, to avoid filling the vertex shader with unnecessary
params. Turns out all backends are fine with this except OGL.
The new behaviour is now much more consistent and well explained,
the "default" shaders are the ones that always run, and the non default
ones are the user selected ones (if any).
2023-08-18 02:00:56 +03:00
Sam Belliveau 39d96a21a8 Video: Improved Tooltips & Bicubic (#5)
Edited by Filoppi
2023-08-18 02:00:56 +03:00
Sam Belliveau ca93a5191f Video: Added Box Resampling
Edited by Filoppi
2023-08-18 02:00:56 +03:00
Filoppi 2edf81cdb0 Video: implement output resampling (upscaling/downscaling) methods 2023-08-18 02:00:55 +03:00
Admiral H. Curtiss 1854ff0142
Merge pull request #12003 from Filoppi/auto_hdr
Add AutoHDR post process shader
2023-08-18 00:20:08 +02:00
Admiral H. Curtiss ecf5870a91
Merge pull request #12115 from AdmiralCurtiss/advanced-config
DolphinQt/AdvancedPane: UI improvements.
2023-08-18 00:16:59 +02:00
Admiral H. Curtiss 42e893d6be
Merge pull request #12114 from AdmiralCurtiss/color-correction-button
DolphinQt/EnhancementsWidget: Use custom tooltip for Color Correction button.
2023-08-18 00:16:47 +02:00
Admiral H. Curtiss a08792033a
Merge pull request #12103 from iwubcode/asset_load_system_time
VideoCommon: asset load time is now stored as a chrono system_clock time
2023-08-18 00:14:29 +02:00
Admiral H. Curtiss a9cba9be36
DolphinQt/LogWidget: Restore log window colors. 2023-08-16 19:55:18 +02:00
Admiral H. Curtiss a34f221782
Core/PowerPC: Return AvailableCPUCores() as a std::span. 2023-08-16 19:25:03 +02:00
Admiral H. Curtiss 51f807b63a
DolphinQt/AdvancedPane: Update all GUI elements from config in Update(). 2023-08-16 19:25:03 +02:00
Admiral H. Curtiss ccee66dc80
DolphinQt/AdvancedPane: Use ConfigBool for MMU, Pause on Panic, and Write-Back Cache. 2023-08-16 19:25:03 +02:00
Admiral H. Curtiss 23ae8c439c
Merge pull request #12112 from JosJuice/hires-texture-encoding
VideoCommon: Fix std::filesystem::path encoding conversion
2023-08-16 18:39:18 +02:00
JosJuice 86910f406e VideoCommon: Fix std::filesystem::path encoding conversion
In std::string, you can store strings using any encoding, but in Dolphin
we have decided to use UTF-8. The problem is that if you convert between
std::string and std::filesystem::path using the built-in methods, the
standard library will make up its own assumption of what encoding you're
using in the std::string. On most OSes this is UTF-8, but on Windows
it's whatever the user's code page is.

What I believe is the C++ standard authors' intended solution to this is
to use std::u8string instead of std::string, but that's a big hassle to
move over to, because there's no convenient way to convert between
std::string and std::u8string. Instead, in Dolphin, we have added helper
functions that convert between std::string and std::filesystem::path in
the manner we want. You *always* have to use these when converting
between std::string and std::filesystem::path, otherwise we get these
kinds of encoding problems that we've been having with custom textures.

Fixes https://bugs.dolphin-emu.org/issues/13328.
2023-08-16 09:56:56 +02:00
JosJuice 177ac0cd44
Merge pull request #12111 from OatmealDome/old-amd-bug
Remove `BUG_BROKEN_FRAGMENT_SHADER_INDEX_DECORATION`
2023-08-16 09:20:49 +02:00
Pokechu22 10c5da6f62
Merge pull request #12107 from MikeIsAStar/retrieve-page-table-information-from-data-cache
Retrieve page table information from the data cache
2023-08-15 22:01:01 -07:00
takayhan-AMD b969282b72 Remove out-dated hack of AMD driver issue WRT dual-source blending output index. 2023-08-15 23:58:29 -04:00
iwubcode eeb73460ab VideoCommon: asset load time is now stored as a chrono system_clock time, so that times can be fabricated in a future feature (without creating a file to do so) 2023-08-15 22:02:28 -05:00
Admiral H. Curtiss a10d768c63
Merge pull request #12104 from iwubcode/descriptor_sample_size_constant_dx12
VideoBackends: update SRVDescriptorTable size in DX12 to use pixel sampler constant
2023-08-15 23:15:19 +02:00
Admiral H. Curtiss a44606692a
Merge pull request #12096 from Dentomologist/nandpaths_resolve_android_warning
NandPaths: Resolve Android tautological comparison warning
2023-08-15 22:23:57 +02:00
Admiral H. Curtiss 2cbc1e6f3e
Merge pull request #12109 from JosJuice/android-adddevice-null
ControllerInterface/Android: Add null check to AddDevice
2023-08-15 22:22:45 +02:00
MikeIsAStar 0bb5c88a22 Retrieve page table information from the data cache
Thanks to @mkwcat for identifying the problematic code.
2023-08-15 12:44:55 -04:00
JosJuice 1d77bddc3b ControllerInterface/Android: Add null check to AddDevice
The Google Play Console is showing some users getting a crash here,
and indeed, InputDevice.getDevice can return null.
2023-08-15 13:31:18 +02:00
iwubcode 89e2fc1dd3 VideoBackends: update SRVDescriptorTable size in DX12 to use pixel sampler constant 2023-08-13 17:23:26 -05:00
Admiral H. Curtiss 5635a0bdef
DolphinQt/EnhancementsWidget: Use custom tooltip for Color Correction button. 2023-08-13 22:46:46 +02:00
Admiral H. Curtiss 2537f4db91
Merge pull request #12100 from AdmiralCurtiss/tooltip-pushbutton
DolphinQt: Add ToolTipPushButton.
2023-08-13 21:44:24 +02:00
JMC47 4549091f56
Merge pull request #12090 from mandar1jn/figures-split
Skylanders: expand and improve character list
2023-08-13 14:29:46 -04:00
Mandar1jn 31d6aa5117 Skylanders: expand and improve character list
The previous list had some issues. A lot of variant id's were set to 0x0000. Althought this works for some figures, on a technicallity implemented into the games, they are technically wrong and don't result in exactly the same experience as the real figures. For example, the previous small fry got a "series 1" text in the summon screen. The real small fry does not have this. I also added figure types so I can add seperate generation logic later.
The Kaos element only applies to 3 items. So, I decided to throw it under others since it's not listed as an element in the manual and you can easily search for Kaos
2023-08-13 19:55:10 +02:00
Admiral H. Curtiss 1c1d2b0873
Merge pull request #12098 from Dentomologist/gcadapter_fix_android_unused_constant_warning
Gcadapter: fix Android unused constant warning
2023-08-13 18:58:39 +02:00
Admiral H. Curtiss 5bf760fa0b
Merge pull request #12069 from riidefi/silent-sd-failure
Prevent SD data loss from silent resync failure
2023-08-13 18:57:11 +02:00
JosJuice d50494b88d
Merge pull request #12060 from Sintendo/arm64-bool-logimm
JitArm64: Use LogicalImm in boolX
2023-08-13 18:51:05 +02:00
JMC47 0495a6af4e
Merge pull request #12066 from Pokechu22/main-window-right-click-menu
Disable right-click menu on main window
2023-08-13 12:49:56 -04:00
Dentomologist 720191d1f7 AbstractFramebuffer: Fix Android reorder-ctor warning
Move declaration of m_additional_color_attachments so its initialization
order matches that of the constructor.
2023-08-12 20:48:47 -07:00