Jonathan Toomim
88c8042932
input_common: Redesign mouse->stick panning for better responsiveness
...
Previously, the mouse processing code had some issues that reduced mouse |
control quality. No matter how you configured it or how you used the mouse,
it was impossible to be able to make both fine inputs and maximum inputs to
the control stick with the same configuration, as inputs were clamped to the
range, and *outputs* were multiplied by the sensitivity setting. It was also
impossible to make brief inputs, as two built-in exponential moving average
filters in the mouse driver caused any mouse inputs, no matter how brief, to
continue to produce stick outputs for several hundred milliseconds before
dissipating.
This commit is an attempt to address those issues. With this commit, an
entirely different model of processing inputs is used. Instead of applying
the sesnsitivity to the stick output, this commit applies the sensitivity at
the beginning of processing to the mouse input. Next, inputs from the mouse
are accumulated into a buffer variable. When the stick is updated, stick
output is clamped to the range of the stick, and that value is subtracted
from the input buffer. Any *excess* motion still remaining in the buffer gets
decayed exponentially (similar to one of the exponential moving averages
before). This gives a good compromise between responsiveness (brief mouse
movement causes a brief stick response) and inertia (large mouse movement
which exceeds the stick's instantaneous dynamic range causes stick movement
that persists for a short time afterwards, mimicking inertia). Finally, to
improve the linearity of the response, the stick motion is square-rooted to
amplify small movements.
This commit changes the semantics of the sensitivity option. It's no longer
a percent, and "100(%)" no longer means anything special, so the input
configuration UI has been changed to allow values up to 10,000 instead of
being limited to 100. The changes to the filtration also affect the
sensitivity. There are some magic constants in the code to try to keep the
sensitivity about the same with a given value, but it's not exact, and users
are encouraged to play around with it again on the new code.
2023-05-23 02:49:18 -07:00
Narr the Reg
e8a025b4f8
Merge pull request #10386 from german77/high
...
input_common: Map motion with relative values not absolute ones
2023-05-22 13:13:50 -06:00
liamwhite
f82efe9f65
Merge pull request #10392 from danilaml/update-cubeb-again
...
externals: update cubeb (again)
2023-05-21 00:24:12 -04:00
Danila Malyutin
e5c2ec223a
externals: update cubeb
2023-05-21 03:02:26 +04:00
german77
dbcdb3523b
input_common: Map motion with relative values not absolute ones
2023-05-19 21:19:29 -06:00
bunnei
1e398e6c36
Merge pull request #10344 from german77/pro-amiibo
...
input_common: Fix pro controller amiibo support
2023-05-18 18:10:38 -07:00
Danila Malyutin
55d740fffa
externals: update cubeb ( #10362 )
2023-05-19 00:24:45 +02:00
Mai
f6c5507873
Merge pull request #10377 from liamwhite/constexpr
...
renderer_vulkan: remove wrong constexpr
2023-05-18 18:04:07 -04:00
Liam
de7c92d7c4
renderer_vulkan: remove wrong constexpr
2023-05-18 18:01:01 -04:00
Matías Locatti
f35c14fb73
Merge pull request #10365 from lat9nq/anv_push_descriptor
...
vulkan_device: Disable VK_KHR_push_descriptor on ANV
2023-05-18 01:38:24 -03:00
lat9nq
c1a8a508bc
vulkan_device: Disable VK_KHR_push_descriptor on ANV
...
Mesa commit ff91c5ca42bc80aa411cb3fd8f550aa6fdd16bdc breaks
VK_KHR_push_descriptor usage on ANV drivers 22.3.0, so disable it
and allow games to boot.
2023-05-17 22:19:57 -04:00
bunnei
9d4a2de72b
Merge pull request #10262 from liamwhite/depth-clamp
...
vulkan_common: disable depth clamp dynamic state for older radv
2023-05-17 12:19:03 -07:00
Narr the Reg
5693434b8a
input_common: Fix pro controller amiibo support
2023-05-16 18:37:22 -06:00
liamwhite
47c5c37bed
Merge pull request #10217 from Kelebek1/clear_value
...
Use the rendertarget format of the correct RT rather than the first valid
2023-05-16 10:06:30 -04:00
liamwhite
a540d248f3
Merge pull request #10107 from grimkor/allow-fully-customised-hotkeys
...
Allow fully customised controller hotkeys
2023-05-16 10:06:15 -04:00
liamwhite
bbb6b58aa4
Merge pull request #10181 from lat9nq/intel-compute-toggle
...
configure_graphics: Add option to enable compute pipelines for Intel proprietary
2023-05-15 12:05:24 -04:00
liamwhite
736a31e4ff
Merge pull request #10234 from Kelebek1/clouds_depth
...
Fix Tears of the Kingdom flickering clouds and depths geometry.
2023-05-15 12:03:31 -04:00
liamwhite
6060685609
Merge pull request #10249 from FernandoS27/sorry-i-am-late
...
Buffer Cache: Clear sync code.
2023-05-15 12:03:25 -04:00
liamwhite
5b85925469
Merge pull request #10254 from danilaml/fix-h264-decode
...
Fix missing pic_order_present_flag in h264 header
2023-05-15 12:03:14 -04:00
liamwhite
033aa264cf
Merge pull request #10265 from german77/amiibo-lag
...
input_common: Make amiibo scanning less demanding
2023-05-15 12:03:08 -04:00
liamwhite
9087fe10e9
Merge pull request #10294 from german77/vibration_span
...
service: hid: Use span instead of vector reference
2023-05-15 12:03:00 -04:00
german77
6e54615b16
service: hid: Use span instead of vector reference
2023-05-14 18:07:04 -06:00
Fernando Sahmkow
c4bfbc6d25
Buffer Cache: Clear sync code.
2023-05-15 01:50:21 +02:00
liamwhite
e9069dfe76
Merge pull request #10288 from liamwhite/vram-limits
...
vulkan_device: reserve extra memory to prevent swaps
2023-05-14 17:02:15 -04:00
Liam
2be751100b
vulkan_device: reserve extra memory to prevent swaps
2023-05-14 16:49:59 -04:00
german77
ac531aa15f
input_common: Make amiibo scanning less demanding
2023-05-14 09:04:37 -06:00
bunnei
29c7176f55
Merge pull request #10286 from liamwhite/compatible-bits
...
vulkan_common: fix incompatible property flags
2023-05-14 01:23:29 -07:00
Liam
122435e080
vulkan_common: fix incompatible property flags
2023-05-14 01:13:11 -04:00
Liam
856838f7ce
vulkan_common: disable depth clamp dynamic state for older radv
2023-05-13 00:37:17 -04:00
Fernando S
9c739f1506
Merge pull request #10244 from liamwhite/lower-upper
...
time: implement ContinuousAdjustmentTimePoint
2023-05-13 03:51:05 +02:00
Fernando S
075d73f076
Merge pull request #10243 from Kelebek1/red_dot
...
Correctly track render target index in the framebuffer for image aspects
2023-05-13 03:50:31 +02:00
bunnei
021e503cc8
Merge pull request #10237 from liamwhite/cache-storage
...
fs: stub cache storage
2023-05-12 16:42:17 -07:00
bunnei
1805de0301
Merge pull request #10236 from liamwhite/thats-not-an-ibinder
...
nvnflinger: fix Parcel serialization
2023-05-12 16:07:35 -07:00
Danila Malyutin
9367769fe7
Fix missing pic_order_present_flag in h264 header
...
Fixes #9635
2023-05-12 22:30:59 +04:00
Liam
a22c5a3880
time: implement ContinuousAdjustmentTimePoint
2023-05-11 21:05:27 -04:00
Kelebek1
cd0ded7771
Correctly track RT indexes for image aspect lookup during clears
2023-05-12 01:40:21 +01:00
Liam
351079a4ba
fs: adjust future save path
2023-05-11 17:30:30 -04:00
Liam
62bcb99ba8
am: stub CreateCacheStorage
2023-05-11 17:26:02 -04:00
Liam
13e4ceb990
fs: stub cache storage and fix params alignment
2023-05-11 17:23:28 -04:00
Liam
bb94beed15
nvnflinger: fix Parcel serialization
2023-05-11 17:09:19 -04:00
Liam
6e10a0c130
nvnflinger: fix producer slot fence init
2023-05-11 17:08:14 -04:00
Kelebek1
e42b4a16b6
Fix Tears of the Kingdom flickering clouds and depths.
2023-05-11 19:25:24 +01:00
liamwhite
182221b9ff
Merge pull request #10132 from Kelebek1/fermi_blit2
...
Allow Fermi blit accelerate to work without images in cache
2023-05-11 10:45:59 -04:00
liamwhite
2643ea80df
Merge pull request #10216 from Kelebek1/buffer_cache_region_checks
...
Swap order of checking/setting region modifications in the buffer_cache
2023-05-11 10:45:47 -04:00
liamwhite
f94186d3c3
Merge pull request #10222 from liamwhite/q
...
renderer_vulkan: separate guest and host compute descriptor queues
2023-05-11 10:45:36 -04:00
Kelebek1
bf08bc3c0f
Allow Fermi blit accelerate to add src/dst to the cache if they don't exist already. Use ScratchBuffers in the software blit path.
2023-05-11 06:42:38 +01:00
Fernando S
871e7cacf6
Merge pull request #10224 from yuzu-emu/readme-update
...
Update README.md to remove Skyline license exception.
2023-05-11 05:51:32 +02:00
bunnei
2fe922aae5
Update README.md to remove Skyline license exception.
2023-05-10 15:52:30 -07:00
grimkor
ceb65c259a
Allow fully customisable controller hotkeys
2023-05-10 19:28:11 +01:00
Liam
67fd1df762
renderer_vulkan: separate guest and host compute descriptor queues
2023-05-10 13:46:48 -04:00