Connor McLaughlin
9b17805be9
Merge pull request #9881 from blaahaj/postprocessing-fix
...
PostProcessing: Fix OpenGL UBO linking with configuration options
2021-07-14 13:14:17 +10:00
Connor McLaughlin
c729852d72
Merge pull request #9782 from Techjar/bbox-ogl-upsidedown-fix
...
VideoCommon: Perform OpenGL bounding box inversion in pixel shader
2021-06-08 13:24:03 +10:00
Connor McLaughlin
1b3977990b
Merge pull request #9800 from Techjar/vulkan-subgroup-fix
...
Vulkan: Fix subgroup reduction
2021-06-08 13:21:41 +10:00
Connor McLaughlin
b3a414ea9d
Merge pull request #9766 from stenzek/ogl-bbox-memory-barrier
...
OGL: Force memory barrier when reading back bounding box values
2021-05-29 17:04:57 +10:00
Connor McLaughlin
b31d4400e3
Merge pull request #9765 from Techjar/bbox-pixel-quads-2-electric-boogaloo
...
VideoCommon: Move bounding box pixel quads rounding to shader
2021-05-29 17:00:14 +10:00
Connor McLaughlin
6393f157f0
OGL: Force memory barrier when reading back bounding box values
...
We also need to ensure the the CPU does not receive stale values
which have been updated by the GPU. Apparently the buffer here
is not coherent on NVIDIA drivers. Not sure if this is a driver
bug/spec violation or not, one would think that
glGetBufferSubData() would invalidate any caches as needed, but
this path is only used on NVIDIA anyway, so it's fine. A point
to note is that according to ARB_debug_report, it's moved from
video to host memory, which would explain why it needs the
cache invalidate.
2021-05-29 16:57:40 +10:00
Connor McLaughlin
37d0559493
Merge pull request #9648 from stenzek/dx11-gl-bbox-caching
...
Cache bounding box values between register reads in DX11/GL
2021-05-28 21:17:44 +10:00
Connor McLaughlin
7fd0a526e1
VideoBackends/OGL: Cache bounding box values between reads
2021-05-28 19:30:46 +10:00
Connor McLaughlin
0c11dca121
VideoBackends/D3D: Cache bounding box values between reads
2021-05-28 19:30:46 +10:00
Stenzek
e3ac5dca32
Fifo: Run/sync with the GPU on command processor register access
2021-04-18 03:24:01 +10:00
Connor McLaughlin
edeb6bcdb7
Merge pull request #9635 from stenzek/amd-exclusive-fullscreen
...
Vulkan: Work around AMD exclusive fullscreen bug (21.3+)
2021-04-17 16:09:09 +10:00
Connor McLaughlin
b24e3f2f1a
Vulkan: Work around AMD exclusive fullscreen bug (21.3+)
2021-04-12 12:41:17 +10:00
Stenzek
d6ce8eef36
Software: Use same logic for colors as hardware backends
2020-11-20 15:54:06 -08:00
Stenzek
51724c1ccd
LightingShaderGen: Always calculate lighting for both color channels
...
Cel-damage depends on lighting being calculated for the first channel
even though there is no color in the vertex format (defaults to the
material color). If lighting for the channel is not enabled, the vertex
will use the default color as before.
The default value of the color is determined by the number of elements in
the vertex format. This fixes the grey cubes in Super Mario Sunshine.
If the color channel count is zero, we set the color to black before the
end of the vertex shader. It's possible that this would be undefined
behavior on hardware if a vertex color index that was greater than the
channel count was used within TEV.
2020-11-20 15:54:04 -08:00
Connor McLaughlin
0fe6081680
Merge pull request #9126 from stenzek/moltenvk-1.1
...
Externals: Update MoltenVK to v1.1
2020-10-03 11:39:21 +10:00
Stenzek
9649d13462
Externals: Update MoltenVK to v1.1
2020-10-02 22:47:51 +10:00
Connor McLaughlin
a8df2caba9
Merge pull request #9125 from stenzek/vulkan-validation
...
Vulkan: Use VK_LAYER_KHRONOS_validation for validation
2020-10-02 20:18:13 +10:00
Connor McLaughlin
56e8058a06
Merge pull request #9123 from sepalani/bsd-socket-crash
...
Socket: Set SO_NOSIGPIPE on macOS
2020-10-02 20:17:37 +10:00
Stenzek
24bb947eff
Vulkan: Use VK_LAYER_KHRONOS_validation for validation
...
VK_LAYER_LUNARG_standard_validation is deprecated.
2020-10-01 17:21:46 +10:00
Connor McLaughlin
aea0239071
Merge pull request #9109 from stenzek/msaa-efb-readback
...
FramebufferManager: Fix EFB readbacks with MSAA on
2020-09-26 17:46:16 +10:00
Stenzek
880f7ca6bb
FramebufferManager: Fix EFB readbacks with MSAA on
...
Regression from #8827 .
2020-09-25 20:58:02 +10:00
Connor McLaughlin
9c12a843f8
Merge pull request #8884 from iwubcode/freelook_performance_fix
...
VertexShaderManager: Only look for freelook config changes if we're using freelook
2020-07-04 14:19:59 +10:00
Connor McLaughlin
b3c705fa96
Merge pull request #8829 from stenzek/fix-macos-again
...
Core: Use window instead of surface for ControllerInterface updates
2020-05-28 16:56:13 +10:00
Connor McLaughlin
b4e063311e
Merge pull request #8827 from stenzek/adreno-more-like-brokenreno
...
FramebufferManager: Fix invalid readback of EFB D24S8 depth
2020-05-28 16:55:42 +10:00
Stenzek
ff92357b63
Core: Use window instead of surface for ControllerInterface updates
...
Fixes crashes with Vulkan on macOS.
2020-05-24 17:39:56 +10:00
Stenzek
bf74553878
FramebufferManager: Copy to color format for depth readbacks on GLES
...
glReadPixels() with depth formats is not supported.
Should fix broken EFB access on GLES.
2020-05-24 16:11:11 +10:00
Stenzek
ad373950a2
FramebufferManager: Fix invalid readback of EFB D24S8 depth
...
Fixes assertion tripping when saving state on Adreno.
2020-05-24 15:36:04 +10:00
Connor McLaughlin
c704548f00
Merge pull request #8810 from Techjar/have-xrandr-fix
...
Core/UICommon: Fix EnableScreenSaver preprocessor directive
2020-05-13 16:32:17 +10:00
Connor McLaughlin
2488e4a587
Merge pull request #8795 from WamWooWam/master
...
InputCommon: Use the Window handle when initializing DirectInput.
2020-05-10 19:16:15 +10:00
Connor McLaughlin
dcc2a2b7d6
Merge pull request #8761 from Sintendo/fixquirk
...
Analytics: Report correct quirk for mismatched xf/bp colors
2020-04-24 11:53:41 +10:00
Connor McLaughlin
960ba4fe5e
Merge pull request #8728 from stenzek/update-mvk
...
Vulkan: Switch from vkCreateMacOSSurfaceMVK() to vkCreateMetalSurfaceEXT() and Update MoltenVK
2020-04-08 00:30:40 +10:00
Stenzek
a2f4fafe86
Vulkan: Switch from vkCreateMacOSSurfaceMVK() to vkCreateMetalSurfaceEXT()
...
Since we are calling this off the UI thread, we can't use anything which
accesses the underlying NSView object. We create and set the Metal layer
on the UI thread before the video backend is initialized. This extension
is both compatible with MoltenVK and gfx-portability for accepting a
layer at surface creation.
2020-04-07 18:56:55 +10:00
Stenzek
52d4756679
Externals: Update MoltenVK to SDK version 1.2.131.2
2020-04-07 18:53:26 +10:00
Stenzek
ff7180cac4
Analytics: Add quirk for mismatched xf/bp texgens/colors
2020-04-02 12:52:16 +10:00
Stenzek
a9c1dcf656
VertexManagerBase: Skip drawing objects with mismatched xf/bp stages
...
Hardware tests have shown that if the number of texgens/channels do not
match, you get garbage rendering. Presumably because the output
registers from the XF stage are fed into the incorrect input registers
for TEV/BP.
Currently, this causes Dolphin to crash/generate invalid shaders with an
assertion failure in the hardware backends. Instead, we log an error.
Perhaps in the future we should just spit out all texgens/colors anyway
from both stages, and let cross-stage optimization take care of DCE'ing
it away. But doing so would require changing the UIDs and invalidating
everyone's shader caches.
2020-04-02 12:51:41 +10:00
Connor McLaughlin
651595c521
Merge pull request #8701 from howard0su/static_wiimote
...
Wiimote: Cleanup warnings of -Wmissing-variable-declarations
2020-03-24 23:14:46 +10:00
Connor McLaughlin
323bffed01
Merge pull request #8700 from howard0su/add_override
...
NoGUI: missing override in PlatformX11
2020-03-24 18:34:48 +10:00
Connor McLaughlin
361364260a
Merge pull request #8651 from spycrab/ext_qt_shallow
...
[RFC] .gitmodules: Make Externals/Qt clone shallow
2020-03-16 21:55:46 +10:00
Stenzek
cdb0aa850d
Qt/RenderWidget: Remove fill background functionality
...
We no longer need this since the video backend handles clearing the
window, and it fixes MoltenVK with Qt 5.14.
2020-03-11 23:13:45 +10:00
Stenzek
2f016295a6
Core: Render a blank UI frame before booting
...
This is related to https://bugs.dolphin-emu.org/issues/10958 which
uses Qt to clear out the window so the game list isn't displayed
while the core is booting. Instead, we use the video backend to
render a black screen, which means Qt doesn't have to flip between
paint engines.
2020-03-11 23:13:18 +10:00
Stenzek
fb947296b0
Vulkan: Pass CAMetalLayer to MoltenVK instead of NSView
...
Gets rid of the warning for calling [NSView layer] off the main thread.
2020-03-11 23:11:26 +10:00
Stenzek
a545344268
VideoBackends: Make it possible for PrepareWindow to change the surface
...
Again, needed for MoltenVK.
2020-03-11 23:10:30 +10:00
Stenzek
86db015c23
Common: Add a render_window field to WindowSystemInfo
...
We need this because we need to pass the layer to MoltenVK, not
the view handle. But the input subsystem still needs the window.
2020-03-11 23:09:30 +10:00
Connor McLaughlin
69ee15e5ef
Merge pull request #8478 from jordan-woyak/dsu-client-cleanup
...
ControllerInterface/DSUClient: Minor cleanup.
2020-02-01 11:29:29 +10:00
Stenzek
f83b2fc62d
Android: Fix typo in Skip Presenting Duplicate Frames setting name
2020-01-31 22:14:51 +10:00
Stenzek
08cc73108a
Vulkan: Treat VK_SUBOPTIMAL_KHR as VK_SUCCESS on Android
...
Android 10 seems to expect a prerotated/transformed swap chain for optimal
presentation. For now, until we implement that, just ignore the hint.
2020-01-31 19:16:06 +10:00
Stenzek
ead65b0d8c
Vulkan: Log when a swap chain resize is occurring
...
This may help us debug performance problems in the future.
2020-01-31 19:11:43 +10:00
Connor McLaughlin
47239ddaac
Merge pull request #8587 from lioncash/const-qual
...
DolphinQt/TASCheckBox: Mark GetValue() as const
2020-01-27 12:52:10 +10:00
Connor McLaughlin
e3a7922e12
Merge pull request #8336 from Ebola16/PS
...
Add Dolphin version and current video backend to shader compilation logs
2020-01-25 11:52:14 +10:00
Connor McLaughlin
42c03c4dad
Merge pull request #8576 from lioncash/texture-cvt-shader-fmt
...
VideoCommon/TextureConversionShader: Convert over to using ShaderCode
2020-01-24 11:53:51 +10:00
Connor McLaughlin
a0b7c1beae
Merge pull request #8366 from Techjar/high-dpi-auto-adjust
...
Qt/RenderWidget: Account for devicePixelRatio when auto-adjusting window size
2020-01-24 11:31:09 +10:00
Connor McLaughlin
a63510a55a
Merge pull request #8554 from stenzek/present-duplicate-frames
...
Add an option to present duplicate frames
2020-01-20 12:04:26 +10:00
Connor McLaughlin
c74b1140a5
Merge pull request #8567 from tinyredpanda/fix-arm64-qt-path
...
Update Qt5_DIR path for ARM64 in CMake project
2020-01-19 11:48:10 +10:00
Stenzek
11ba623f26
Add an option to present/skip presenting duplicate frames
...
Currently, we do not display every second frame in 25fps/30fps games
which run to vsync. This improves performance as there's less rendering
for the GPU to perform, but when combined with vsync, could cause frame
pacing issues.
This commit adds an option to force every frame generated by the console
to be displayed to the host, which may improve pacing for these games.
2020-01-14 10:57:35 +10:00
Connor McLaughlin
efc1ee8e6a
Merge pull request #8537 from degasus/fastmem
...
Core/HW -> PowerPC/JIT: Fastmem arena construction
2020-01-14 09:38:15 +10:00
Connor McLaughlin
ae6d3be449
Merge pull request #8530 from s-daveb/master
...
MacOS: Fixes configuration hang; bump MacOS SDK.
2020-01-13 20:21:08 +10:00
Connor McLaughlin
1701363854
Merge pull request #8547 from stenzek/windows-arm64-qt
...
DolphinQt: Support compiling on ARM64
2020-01-12 15:34:40 +10:00
Stenzek
d8b2be9d06
DolphinQt: Support compiling on ARM64
2020-01-12 15:23:42 +10:00
Stenzek
2a18d1beb4
Externals: Update Qt submodule for ARM64 Windows binaries
2020-01-12 15:23:32 +10:00
Connor McLaughlin
04e9279f3d
Merge pull request #8536 from leoetlino/warnings
...
Fix several warnings
2020-01-04 21:24:27 +10:00
Connor McLaughlin
a04d4982b1
Merge pull request #8544 from gtalusan/master
...
MacOS: Dispatch GL calls to main thread to prevent crashes on Catalina
2020-01-02 14:43:21 +10:00
Connor McLaughlin
084344aa5d
Merge pull request #8495 from stenzek/windows-arm64
...
Platform support for Windows-on-ARM64
2019-12-28 19:27:47 +10:00
Stenzek
d744c5a148
Compile fixes for Windows-on-ARM64
2019-12-28 19:20:41 +10:00
Stenzek
6fcb1c6c46
Add an ARM64 target to Visual Studio projects
2019-12-28 19:20:41 +10:00
Stenzek
5a65031611
Add a Win32 NoGUI platform and project
2019-12-28 08:56:27 +10:00
Connor McLaughlin
8a50d9c540
Merge pull request #8522 from stenzek/fifoci-ffmpeg
...
FrameDump: Set first_frame if movie frame number <= 1
2019-12-22 12:11:03 +10:00
Stenzek
6a0067fd26
FrameDump: Set first_frame if movie frame number <= 1
...
The frame number is incremented before the first frame is swapped out.
Fixes ffmpeg creating invalid video files on output if the emulator only
runs for a single frame, e.g. FifoCI.
2019-12-22 11:54:34 +10:00
Connor McLaughlin
74dedc57fd
Merge pull request #8519 from JosJuice/setupwiimemory-region-override
...
Boot: Optionally allow preserving region settings in setting.txt
2019-12-19 20:47:56 +10:00
Connor McLaughlin
6f5d770bdd
Merge pull request #8524 from shuffle2/update-externals
...
Update externals
2019-12-19 20:41:49 +10:00
Connor McLaughlin
90223de536
Merge pull request #8526 from shuffle2/remove-x86
...
remove x86 targets from sln
2019-12-19 20:07:43 +10:00
Connor McLaughlin
a980a39807
Merge pull request #8518 from stenzek/more-wiimote-reset-crashes
...
Core: Reset Wiimotes/rumble/memwatcher on emu thread
2019-12-13 13:44:22 +10:00
Stenzek
e5485ca499
Core: Reset wiimotes/rumble on emu thread instead of main thread
...
This was causing a race which was crashing the FifoCI runners. The main
thread called Stop() which in turn called ResetAllWiimotes() while the
emu thread was still exiting, also shutting down the Wiimote class.
By shifting the reset to the emu thread, all cleanup operations happen
on the same thread where they were initialized.
2019-12-09 20:07:00 +10:00
Stenzek
c602cb2e2f
Core: Reset memory watcher on same thread which allocates it
2019-12-09 20:06:14 +10:00
Connor McLaughlin
6f274092b6
Merge pull request #8517 from stenzek/fix-vulkan-d3d12
...
Fix Vulkan and D3D12 video backends crashing on boot
2019-12-09 19:47:34 +10:00
Stenzek
e05bc33899
Vulkan: Call VertexManagerBase initialize
2019-12-09 19:16:15 +10:00
Stenzek
07c43b192f
D3D12: Call VertexManagerBase initialize
2019-12-09 19:16:04 +10:00
Connor McLaughlin
15fc71cfcf
Merge pull request #8498 from stenzek/update-vs2019
...
Update VS projects/solutions to VS2019
2019-12-03 13:03:49 +10:00
Connor McLaughlin
0f6304ad34
Merge pull request #8504 from stenzek/fifoci-wiimote-crash
...
Core: Only reset wiimotes in Wii mode
2019-11-30 22:14:28 +10:00
Stenzek
52e2e32193
Core: Only reset wiimotes in Wii mode
...
This was causing the FifoCI runners to crash, as the Wiimotes were not
initialized in the first place.
2019-11-30 15:41:38 +10:00
Connor McLaughlin
ba8b5bea11
Merge pull request #8357 from KAMiKAZOW/patch-1
...
Always run as X11 app even under Wayland
2019-11-30 14:14:49 +10:00
Stenzek
33c0abd1ab
Disable warning C5054 on DolphinQt
...
They're all in the Qt headers, and quite noisy.
2019-11-30 13:42:52 +10:00
Stenzek
ffd38ab6e9
Update Readme.md to specify VS2019 as a requirement
2019-11-30 13:42:52 +10:00
Stenzek
dd23a1ee79
Update VS projects/solutions to VS2019
2019-11-30 13:42:52 +10:00
Connor McLaughlin
913cb08066
Merge pull request #8456 from jordan-woyak/input-gate-race-fix
...
InputCommon: Make the "input gate" not racy.
2019-11-11 10:59:49 +10:00
Connor McLaughlin
cc9c1583b1
Merge pull request #8338 from Miksel12/efbaccess-ini
...
Enable EFB access in INI
2019-11-08 13:32:45 +10:00
Connor McLaughlin
422c3f79da
Merge pull request #8382 from tkln/verify-widget-switch-none-warn
...
VerifyWidget: Handle Severity::None case in Verify()
2019-11-08 11:23:32 +10:00
Connor McLaughlin
62f331dd13
Merge pull request #8431 from ferrrry/game-window-class
...
Qt: Add "renderer" window role to render window
2019-11-08 11:22:49 +10:00
Connor McLaughlin
71b098a69d
Merge pull request #8399 from CookiePLMonster/gametracker-fixes
...
Qt: Game Tracker fixes
2019-11-08 11:22:09 +10:00
Connor McLaughlin
9700b1e320
Merge pull request #8367 from JosJuice/missing-company-ids
...
DiscIO: Add missing company IDs
2019-11-08 11:15:27 +10:00
Connor McLaughlin
729308979d
Merge pull request #8388 from jordan-woyak/cmake-export-compile-commands
...
CMake: Enable generation of compile_commands.json.
2019-11-08 11:07:06 +10:00
Connor McLaughlin
a89fdb628c
Merge pull request #8343 from stenzek/fbdev
...
DolphinNoGUI: Add a FBDev platform
2019-11-08 11:05:53 +10:00
Connor McLaughlin
2ebea1bfa7
Merge pull request #8433 from JosJuice/settings-onemulationstatechanged
...
DolphinQt: Call OnEmulationStateChanged when creating config window panes
2019-11-08 11:01:14 +10:00
Connor McLaughlin
47677ecaa7
Merge pull request #8437 from JosJuice/batch-render-to-main
...
Disable render to main when using batch mode
2019-11-08 11:00:18 +10:00
Connor McLaughlin
9db1ce8ef9
Merge pull request #8436 from JosJuice/vi-wii-freeloader
...
VideoInterface: Don't crash when running Wii Freeloader
2019-11-08 10:56:25 +10:00
Connor McLaughlin
28ce9330a8
Merge pull request #8444 from booto/vi-fields
...
VI: Adjust start/end of ACV region for fields
2019-11-08 10:51:32 +10:00
Connor McLaughlin
18ba1fd723
Merge pull request #8452 from JosJuice/android-emulationactivity-rotation-crash
...
Android: Replace emulation rotation crash workaround with proper fix
2019-11-08 10:45:21 +10:00
Connor McLaughlin
28bf88641f
Merge pull request #8457 from JosJuice/just-dance-2020
...
Update GameTDB title files
2019-11-08 10:31:24 +10:00
Connor McLaughlin
7c8a255ce1
Merge pull request #8450 from jordan-woyak/mapping-button-fix
...
DolphinQt: Fix output mapping button spacebar activation and tooltip.
2019-11-08 10:30:33 +10:00
Connor McLaughlin
b554b636bd
Merge pull request #8449 from JosJuice/disable-bt-pt-buttons
...
DolphinQt: Fix the enabling/disabling of ControllersWindow buttons
2019-11-08 10:27:49 +10:00
Connor McLaughlin
5440be96e7
Merge pull request #8378 from stenzek/quad-buffer-stereo
...
Various quad-buffered ("HDMI 3D") stereo fixes
2019-11-08 10:26:58 +10:00