Commit graph

30299 commits

Author SHA1 Message Date
Techjar
1a12876330 NetPlay: Implement golf mode
This is an extension of host input authority that allows switching the
host (who has zero latency) on the fly, at the further expense of
everyone else's latency. This is useful for turn-based games where the
latency of players not on their turn doesn't matter.

To become the so-called golfer, the player simply presses a hotkey.
When the host is the golfer, latency is identical to normal host input
authority.
2019-04-05 07:01:03 -04:00
Techjar
e2f1da5210 NetPlay: Move host input authority logic to client
This is a prerequisite for golf mode, as the client needs to be in
control of sending pad states.
2019-04-02 08:17:13 -04:00
JMC47
42964e8531
Merge pull request #7921 from zackhow/fixir
Android: Fix touch IR
2019-03-31 23:15:04 -04:00
Connor McLaughlin
32e330eb35
Merge pull request #7950 from stenzek/out-of-range-efb-copies
BPStructs: Gracefully handle out-of-range EFB copies
2019-04-01 13:08:11 +10:00
Connor McLaughlin
a2a4694497
Merge pull request #7853 from stenzek/d3d12
Re-implement D3D12 video backend
2019-04-01 13:02:57 +10:00
Stenzek
113bd60fe7 Implement D3D12 backend 2019-04-01 11:24:55 +10:00
Connor McLaughlin
6eb126b097
Merge pull request #7951 from jordan-woyak/win32-input-init-race-fix
InputCommon: Fix Win32 init race.
2019-03-31 23:42:43 +10:00
Jordan Woyak
2b6d718636 InputCommon: Fix Win32 init race. 2019-03-31 07:46:58 -05:00
Stenzek
378b605669 BPStructs: Gracefully handle out-of-range EFB copies
Since the copy X and Y coordinates/sizes are 10-bit, the game can configure a
copy region up to 1024x1024. Hardware tests have found that the number of bytes
written does not depend on the configured stride, instead it is based on the
size registers, writing beyond the length  of a single row. The data written
for the pixels which lie outside the EFB bounds does not wrap around instead
returning different colors based on the pixel format of the EFB.

This suggests it's not based on coordinates, but instead on memory addresses.
The effect of a within-bounds size but out-of-bounds offset
(e.g. offset 320,0, size 640,480) are the same.

As it would be difficult to emulate the exact behavior of out-of-bounds reads,
instead of writing the junk data, we don't write anything to RAM at all for
over-sized copies, and clamp to the EFB borders for over-offset copies.
2019-03-31 22:05:53 +10:00
JosJuice
3e544f9637 Translation resources sync with Transifex 2019-03-31 09:50:31 +02:00
Connor McLaughlin
39139a52e7
Merge pull request #7939 from Techjar/no-more-disabled-gfx-features
Qt/HacksWidget: Fix backend feature support checks
2019-03-31 11:59:34 +10:00
spycrab
0866ec3fb0
Merge pull request #7948 from spycrab/open_failed_warn
Qt/GameConfigEdit: Show warning if opening in an external editor fails
2019-03-31 03:37:54 +02:00
spycrab
74c1e92640 Qt/GameConfigEdit: Show warning if opening in an external editor fails 2019-03-31 03:30:41 +02:00
JMC47
735a705e4d
Merge pull request #7776 from jordan-woyak/wm_devicechange
Add hotplug support to DInput and XInput controller backends
2019-03-30 18:41:46 -04:00
spycrab
2dd564304e
Merge pull request #7947 from spycrab/issue_11637
Qt/GCMemcardManager: Don't bold the header
2019-03-30 23:13:28 +01:00
spycrab
3d84dbe649 Qt/GCMemcardManager: Don't bold the header 2019-03-30 20:22:04 +01:00
JMC47
0bce1c509d
Merge pull request #7942 from jordan-woyak/gc-adapter-calib-fix
HW/SI: GCAdapter calibration fix.
2019-03-30 06:37:23 -04:00
JMC47
5a10707a37
Merge pull request #7946 from stenzek/gl-msaa-efb-peeks
FramebufferManager: Fix broken EFB peeks in GL with MSAA on
2019-03-30 00:45:52 -04:00
spycrab
963370d7e6
Merge pull request #7941 from 8times9/contextmenu
Qt/GameList: Set consistent capitalization for context menu
2019-03-29 21:09:49 +01:00
Mat M
7952cc7dda
Merge pull request #7944 from jordan-woyak/md5-textbox-readonly
DolphinQt: Make MD5 result text box read only.
2019-03-29 14:20:18 -04:00
Jordan Woyak
4ee999723e DolphinQt: Make MD5 result text box read only. 2019-03-29 12:31:09 -05:00
Stenzek
3c455de799 FramebufferManager: Fix broken EFB peeks in GL with MSAA on 2019-03-30 03:14:29 +10:00
Connor McLaughlin
914aa7c506
Merge pull request #7943 from stenzek/vulkan-android-library-load
Vulkan: Fix library load failure on Android
2019-03-30 00:35:40 +10:00
Stenzek
b685a66753 Vulkan: Fix crash when checking subgroup support on Mesa 2019-03-30 00:18:26 +10:00
Jordan Woyak
eadbdd6bc3 ControllerInterface/Win32: Prevent devcies from losing their "id" on a hotplug event. 2019-03-29 09:04:16 -05:00
Stenzek
a6bb06174f Vulkan: Fix library load failure on Android 2019-03-29 23:36:53 +10:00
Michael M
d26c1ce24d Add hotplug support to DInput and XInput controller backends 2019-03-29 08:01:40 -05:00
Michael M
92ca6e124e Add ControllerInterface::Win32 to wrap XInput and DInput 2019-03-29 08:01:39 -05:00
Techjar
5d37b2b951 Qt/HacksWidget: Fix backend feature support checks 2019-03-29 08:45:21 -04:00
Connor McLaughlin
377615b06f
Merge pull request #7905 from stenzek/vulkan-cleanup
Vulkan: Simplify command buffer fence tracking
2019-03-29 21:56:28 +10:00
Jordan Woyak
a015851b02 HW/SI: GCAdapter calibration fix. 2019-03-29 06:15:58 -05:00
Stenzek
604ab67c7f Vulkan: Simplify perf queries using vkGetQueryPoolResults 2019-03-29 20:54:44 +10:00
Stenzek
6d40ea8553 Vulkan: Fix barrier validation layer errors for bounding box 2019-03-29 20:54:44 +10:00
Stenzek
23a655217c Vulkan: Fix validation layer error for unbound texture layouts 2019-03-29 20:54:44 +10:00
Stenzek
087b11e780 TextureCacheBase: Fix possible crash on shutdown with deferred EFB copies 2019-03-29 20:54:44 +10:00
Stenzek
427dd45151 Vulkan: Simplify command buffer fence tracking 2019-03-29 20:54:44 +10:00
Connor McLaughlin
f3fadd7302
Merge pull request #7869 from stenzek/d3dcommon
D3D: Move sharable D3D11/D3D12 code to common library
2019-03-29 20:40:06 +10:00
Connor McLaughlin
fbe57e8dbe
Merge pull request #7733 from stenzek/update-moltenvk
Externals: Update MoltenVK to SDK version 1.1.101.0
2019-03-29 20:34:11 +10:00
Connor McLaughlin
78cf615a9b
Merge pull request #7937 from Techjar/netplay-defer-efb-invalidation
NetPlay: Synchronize EFB access cache options
2019-03-29 20:31:15 +10:00
Connor McLaughlin
a50a34b94b
Merge pull request #7904 from stenzek/do-the-atomic-shuffle
PixelShaderGen: Use subgroup reduction for bounding box
2019-03-29 20:29:00 +10:00
Stenzek
d66d778bae PixelShaderGen: Use subgroup reduction operations for bounding box 2019-03-29 20:06:56 +10:00
Stenzek
6561850f2b Vulkan: Support subgroup reduction operations via GL_KHR_shader_subgroup 2019-03-29 20:06:56 +10:00
Stenzek
86da282570 OGL: Support subgroup reduction operations via GL_NV_shader_thread_shuffle 2019-03-29 20:06:56 +10:00
Connor McLaughlin
95c7b5c635
Merge pull request #7894 from Tilka/massage_ini
GameSettings: fix Enjoy your massage! textures
2019-03-29 20:05:57 +10:00
Connor McLaughlin
1304e963ad
Merge pull request #7895 from stenzek/framebuffer-corruption
FramebufferManager: Don't discard in ReinterpretPixelData
2019-03-29 20:03:13 +10:00
Connor McLaughlin
154eeae8ae
Merge pull request #7915 from stenzek/bbox-scaled-update
VideoBackends: Scale bounding box rectangle in the pixel shader
2019-03-29 19:59:25 +10:00
Stenzek
d0d010f854 D3D11: Make stateman a unique_ptr 2019-03-29 19:55:00 +10:00
Stenzek
3b86c93285 VertexManagerBase: Increase vertex/uniform buffer sizes
ZTP was uploading 10MB+ of uniforms per frame, reducing paralellism by
forcing GPU waits.
2019-03-29 19:52:38 +10:00
Stenzek
2a4bca8b4a VideoBackends: Verify validity before doing full renderer init
Prevents attempting to create invalid MSAA configurations, for example.
2019-03-29 19:52:38 +10:00
Stenzek
1151a1238f D3D11: Use ComPtr smart pointer where possible 2019-03-29 19:52:38 +10:00