Jules Blok
51d3de6787
Merge pull request #6349 from booto/codehandler
...
Update codehandler to stash registers that may get clobbered
2018-02-03 12:21:20 +01:00
Jules Blok
4515f1d70d
Merge pull request #6348 from stenzek/fog
...
BPMemory: Handle fog configuration where both A and C are infinity/NaN
2018-02-02 15:32:52 +01:00
Jules Blok
7e24b09301
Merge pull request #6218 from Armada651/uber-interpolation
...
UberShaderPixel: Fix the interpolation qualifier for interface blocks.
2017-11-26 02:19:14 +01:00
Jules Blok
7dd207931d
UberShaderPixel: Fix the interpolation qualifier for interface blocks.
...
Fixes MSAA on MacOS with ubershaders enabled.
2017-11-25 21:51:14 +01:00
Jules Blok
c97a799c5f
Merge pull request #6016 from Armada651/allow-tearing
...
D3DBase: Support the "allow tearing" DXGI flags.
2017-09-06 13:22:23 +02:00
Jules Blok
e103a58d87
Merge pull request #6012 from stenzek/drop-nv-glsl
...
Vulkan: Drop VK_NV_glsl extension support
2017-09-06 13:19:47 +02:00
Jules Blok
347fd065df
D3DBase: Support the "allow tearing" DXGI flags.
...
This makes sure our framerate is unlocked when we disable V-Sync.
2017-09-04 23:12:52 +02:00
Jules Blok
8906b26ea5
D3DBase: Use the correct version of CreateDXGIFactory.
2017-09-03 14:33:06 +02:00
Jules Blok
75574ec6cc
Merge pull request #5946 from stenzek/ubershader-stereo-texture-samples
...
UberShaderPixel: Fix sampling of EFB copies in stereo modes
2017-09-03 12:26:52 +02:00
Jules Blok
d0fc223fe1
Merge pull request #5956 from Armada651/fix-remove-clr-usage
...
RenderState: Fix incorrect blending factors when removing the color usage.
2017-08-21 17:06:44 +02:00
Jules Blok
390f3f13ba
RenderState: Fix incorrect blending factors when removing the color usage.
2017-08-21 16:33:10 +02:00
Jules Blok
f4f6782ae6
D3DBase: Only use a stereo swapchain if quad-buffering is enabled.
2017-08-20 18:25:49 +02:00
Jules Blok
ba356f78d1
Merge pull request #5774 from Armada651/d3d-fs-fixes
...
D3DBase: Set the fullscreen state in Create()
2017-07-15 15:01:46 +02:00
Jules Blok
37e06586b8
Merge pull request #5784 from leoetlino/movie-buffer
...
Movie: Get rid of the manual buffer management
2017-07-14 13:20:27 +02:00
Jules Blok
3fc9a48da0
D3DBase: Use the swapchain discard mode when possible.
2017-07-10 14:25:28 +02:00
Jules Blok
65495a1297
D3D: Resize the swapchain when the fullscreen state is changed
2017-07-10 14:24:11 +02:00
Jules Blok
07c5dcd739
D3DBase: Set the fullscreen state in Create()
2017-07-10 14:03:04 +02:00
Jules Blok
07ab81e1bd
Merge pull request #5771 from Armada651/d3d-stereo-fix
...
D3DBase: Implement Windows 7 swapchain fallback.
2017-07-10 01:47:17 +02:00
Jules Blok
0f13c61daa
D3DBase: Only create a stereo swapchain when needed.
2017-07-10 01:24:43 +02:00
Jules Blok
77a318789a
D3DBase: Implement Windows 7 swapchain fallback.
2017-07-10 01:02:29 +02:00
Jules Blok
938939136e
D3DBase: Only use temporary mono when supported by the swapchain.
2017-07-10 01:02:05 +02:00
Jules Blok
29cc009706
Merge pull request #5697 from Armada651/quad-buffer
...
Implement Quad-Buffered stereoscopy support
2017-07-06 01:26:06 +02:00
Jules Blok
8476d0271d
PixelShaderGen: Add missing inputs.
...
This fixes a linkage warning in D3D because of mismatched inputs.
2017-07-05 22:43:39 +02:00
Jules Blok
b485329353
D3DBase: Set the monoscopic flag when we don't use stereoscopy.
2017-07-05 22:43:39 +02:00
Jules Blok
1f2d43c870
Vulkan: Implement Quad-Buffered stereoscopy support.
2017-07-05 22:43:39 +02:00
Jules Blok
f3508742ac
OGL: Support Quad-Buffered stereoscopy.
2017-07-05 22:43:39 +02:00
Jules Blok
2ab068d3f2
D3DBase: Always create a stereo swapchain.
2017-07-05 22:43:39 +02:00
Jules Blok
383645a4b1
VideoConfigDiag: Rename Quad-Buffer to HDMI 3D.
...
This 3D mode is often associated with the HDMI 1.4a standard,
so this name is more helpful to users with such a setup.
2017-07-05 22:43:39 +02:00
Jules Blok
179602e921
D3D: Add quad-buffer stereoscopy support.
2017-07-05 22:43:39 +02:00
Jules Blok
6863abb31d
D3DBase: Switch to a flip-model swap chain.
2017-07-05 22:43:39 +02:00
Jules Blok
c399e2bc40
D3DBase: Upgrade to DXGI 1.2.
...
This effectively drops for Vista and Windows 7 without the Platform Update in this backend.
2017-07-05 22:43:39 +02:00
Jules Blok
a63ee78723
Merge pull request #5712 from Armada651/fix-fbo-layers
...
FramebufferManager: Fix EFB layers being attached to the wrong FBO.
2017-06-27 23:48:27 +02:00
Jules Blok
4a7b96c93a
FramebufferManager: Fix EFB layers being attached to the wrong FBO.
...
Fixes typo in commit 56fe938366 .
2017-06-27 23:42:42 +02:00
Jules Blok
43dba0cb47
Merge pull request #5709 from spycrab/qt_sd_pausefix
...
Qt: Fix emulation not returning to its original state when aborting s…
2017-06-27 18:15:11 +02:00
Jules Blok
3d304d6938
Merge pull request #5330 from Armada651/unicode-correctness
...
Unicode correctness
2017-05-09 01:18:38 +02:00
Jules Blok
68b1f8ec05
Base.props: Add /utf-8 compiler option.
...
This ensures Dolphin can be built correctly on systems with non-Latin codepages.
2017-05-04 18:03:41 +02:00
Jules Blok
cbfb07152f
VertexShaderGen: Correct for negative viewport dimensions.
2017-03-16 12:34:19 +01:00
Jules Blok
0a2b58c896
OGL: Remove support for NV_depth_buffer_float.
...
We can't clamp the depth values to the 24-bit range while this extension is active.
2017-03-14 01:02:13 +01:00
Jules Blok
af4da70902
Merge pull request #5063 from ligfx/no_nv_depth_buffer_float
...
GLExtensions: remove NV_depth_buffer_float from OpenGL 3.0
2017-03-10 22:33:40 +01:00
Jules Blok
3f41e6d4cf
RenderBase: Check if early ztest is enabled before falling back to vertex depth range.
2017-03-10 15:43:32 +01:00
Jules Blok
9b5a0b3f2d
Merge pull request #5059 from Orphis/ffmpeg_windows
...
cmake: Find bundled ffmpeg even if you have pkg-config on Win32
2017-03-10 15:16:57 +01:00
Jules Blok
83bd74aef0
Merge pull request #4974 from gamemasterplc/master
...
Widescreen Hack improvement
2017-03-01 02:17:33 +01:00
Jules Blok
f5d14e3691
Merge pull request #4933 from Armada651/disable-cache
...
VideoBackends: Add a developer option to disable the shader cache.
2017-02-27 17:35:01 +01:00
Jules Blok
a15555fe03
VideoBackends: Use vertex shader depth range if ztexture is used.
2017-02-26 11:34:48 +01:00
Jules Blok
bde8126913
VideoBackends: Remove depth range clamping hacks.
...
Oversized depth ranges are handled correctly now, we don't need to hack around them with clamps anymore.
2017-02-24 14:54:20 +01:00
Jules Blok
94522d4cf3
OGL: Add support for glDepthRangedNV to handle oversized depth ranges.
2017-02-24 14:54:16 +01:00
Jules Blok
28e6e259ed
VideoBackends: Set the maximum range when the depth range is oversized.
...
The depth values generated by the vertex shader need to be clamped correctly.
2017-02-21 02:57:23 +01:00
Jules Blok
21967b1f6e
VideoBackends: Add a developer option to disable the shader cache.
...
Makes it easier to disable the cache while working on the shaders.
2017-02-19 12:05:44 +01:00
Jules Blok
271a9fe7a9
VertexShaderManager: Break up the conditions to make it readable.
2017-01-13 14:01:17 +01:00
Jules Blok
f866748006
VertexShaderGen: Remove the need for an extra UID.
2017-01-13 14:01:17 +01:00
Jules Blok
a2e191649d
Merge pull request #4471 from Armada651/hybrid-depth
...
VideoCommon: Don't process the depth range in the vertex shader if it's not oversized.
2016-12-29 18:49:27 +01:00
Jules Blok
ee7a2edf35
Update comments
2016-12-27 21:32:52 +01:00
Jules Blok
65b5765858
VideoBackends: Clamp the range to the maximum depth value supported in the z buffer.
2016-12-27 20:25:40 +01:00
Jules Blok
2ab6711f43
VideoBackends: Use the full depth range when inverted depth range is unsupported.
2016-12-27 14:31:17 +01:00
Jules Blok
ef82aebb97
VideoCommon: Don't process the depth range in the vertex shader if it's not oversized.
2016-12-27 14:31:17 +01:00
Jules Blok
017ab71fcf
Merge pull request #4451 from stenzek/vulkan-poke
...
Vulkan: Fix crash on EFB poke
2016-11-14 14:14:45 +01:00
Jules Blok
99de9fbe33
Merge pull request #4443 from Armada651/exclusive-ui
...
D3D: Move exclusive mode switching to UI thread.
2016-11-14 01:45:07 +01:00
Jules Blok
7e35a47b51
Cosmetics.
2016-11-13 22:17:40 +01:00
Jules Blok
aa0e4472c0
Frame: Move exclusive mode switching to helper function.
2016-11-11 21:24:08 +01:00
Jules Blok
aab6b70868
MainAndroid: Remove obsolete Host_RequestFullscreen() function
2016-11-11 20:48:19 +01:00
Jules Blok
d8201a7e8b
Frame: Remove exclusive mode OSD messages.
2016-11-11 20:36:11 +01:00
Jules Blok
d7cf5e28b6
Frame: Use PauseAndLock when switching fullscreen modes.
...
This allows us to regain exclusive mode directly from OnActive().
2016-11-11 20:36:10 +01:00
Jules Blok
9909babe2c
D3DBase: Create the swapchain in fullscreen mode if enabled.
2016-11-11 20:36:10 +01:00
Jules Blok
0028ee96b3
Host: Remove the Host_RequestFullscreen() method.
...
No longer needed, since the exclusive mode switch is now handled synchronously on the CPU thread.
2016-11-11 20:36:09 +01:00
Jules Blok
0a194f8a3e
VideoConfig: Remove fullscreen flags.
...
These weren't actually settings, they were used as a bad way to communicate with the GPU thread.
2016-11-11 20:36:09 +01:00
Jules Blok
c21efa0cad
D3D: Move exclusive mode switching to UI thread.
...
This prevents deadlocks when switching to exclusive mode.
And it also allows the CPU thread to block until we've completed the switch.
2016-11-11 20:36:04 +01:00
Jules Blok
f0ce3275af
Merge pull request #4439 from Armada651/yield-ui
...
CPU: Fix deadlocks by periodically yielding to the UI message pump.
2016-11-11 20:30:31 +01:00
Jules Blok
20d49ba97f
DolphinQt2: Implement Host_YieldToUI().
2016-11-11 13:42:18 +01:00
Jules Blok
05a3f927ee
CPU: Fix deadlocks by periodically yielding to the UI message pump.
2016-11-11 13:37:03 +01:00
Jules Blok
8203ea929b
BlockingLoop: Yield to UI message pump while waiting.
2016-11-11 13:37:02 +01:00
Jules Blok
03878a44e1
Merge pull request #4433 from Armada651/the-emu-that-runs-faster-than-its-race-condition
...
FrameTools: Avoid deadlock in UpdateGUI().
2016-11-10 16:50:13 +01:00
Jules Blok
de50fead5c
FrameTools: Avoid deadlock in UpdateGUI().
2016-11-09 01:45:30 +01:00
Jules Blok
49ac577ac0
Merge pull request #4388 from ligfx/portaudio_static
...
CMake: build PortAudio as static library
2016-11-01 18:32:12 +01:00
Jules Blok
6501814792
Merge pull request #4413 from Armada651/readable-driver-details
...
DriverDetails: Make the bug identifiers humanly readable.
2016-10-31 15:49:16 +01:00
Jules Blok
2058a49465
PixelShaderGen: Remove unused global variable.
2016-10-31 15:02:08 +01:00
Jules Blok
086f839435
DriverDetails: Make the bug identifiers humanly readable.
2016-10-31 15:02:08 +01:00
Jules Blok
d0e60492cf
PixelShaderGen: Don't use a global variable.
2016-10-30 00:48:02 +02:00
Jules Blok
d778400133
DriverDetails: Add OS X to the dual-source blending bug.
2016-10-30 00:47:02 +02:00
Jules Blok
ce9f717045
OGL: Fall back to the old dual-source blending behaviour.
2016-10-29 18:00:22 +02:00
Jules Blok
476cf3803d
Merge pull request #4393 from Armada651/amd-dual-src
...
DriverDetails: Disable dual-source blending on AMD OGL drivers.
2016-10-28 13:31:03 +02:00
Jules Blok
afe707bc18
DriverDetails: Disable dual-source blending on AMD OGL drivers.
2016-10-27 22:03:25 +02:00
Jules Blok
9e21ac8607
Merge pull request #4360 from VinDuv/fix-shader-compile
...
VideoCommon: Fix GetInterpolationQualifier calls
2016-10-25 11:53:20 +02:00
Jules Blok
122ce96ed1
PixelShaderGen: Don't use dual source blend if unsupported.
2016-10-24 00:11:55 +02:00
Jules Blok
584bfec48d
Merge pull request #4378 from Armada651/fix-implicit-conv
...
PixelShaderGen: Fix implicit type conversions.
2016-10-23 17:58:23 +00:00
Jules Blok
5c406b5ef0
PixelShaderGen: Fix implicit type conversions.
2016-10-23 19:54:28 +02:00
Jules Blok
2536e37ec5
Merge pull request #4194 from Armada651/efb-source-format
...
PixelShaderGen: Add support for RGBA6 EFB format truncation.
2016-10-21 21:45:29 +00:00
Jules Blok
ab5054c34e
VideoBackends: Always enable dual-source blending if supported.
2016-10-10 17:32:51 +02:00
Jules Blok
93109df654
PixelShaderGen: Use dual source blending to do 8-bit blending.
2016-10-10 15:34:55 +02:00
Jules Blok
d61ae5a88a
PixelShaderGen: Only set dither uid bit if actually used.
2016-10-10 14:32:21 +02:00
Jules Blok
23d9d91411
VideoConfigDiag: True color means 24-bit, not hw color.
2016-10-10 14:32:21 +02:00
Jules Blok
e8cddae132
VideoConfig: Turn on ForceTrueColor by default.
2016-10-10 14:31:53 +02:00
Jules Blok
365e88e311
VideoConfig: Add an option to force RGB8 EFB format.
2016-10-10 14:31:53 +02:00
Jules Blok
31a4ee7bfc
PixelShaderGen: Always truncate the alpha channel to 6-bit.
2016-10-10 14:30:14 +02:00
Jules Blok
9bc466a443
PixelShaderGen: Add support for dithering.
2016-10-10 14:30:14 +02:00
Jules Blok
b958457e51
PixelShaderGen: Add support for RGBA6 EFB format truncation.
2016-10-10 14:27:30 +02:00
Jules Blok
da43f9a156
PixelShaderGen: Always divide the texture coordinates by q.
...
Some games will set q to a different value than 1.0 through
texture matrix manipulations. It seems the console will still
do the division in that case.
2016-09-07 21:13:16 +02:00
Jules Blok
d072d6d336
Merge pull request #4170 from Armada651/float-abs
...
VertexShaderManager: Explicitly use floating-point variant of abs.
2016-09-01 19:03:03 +02:00
Jules Blok
9fb6f93ca1
PixelEngine: Add missing static specifier for s_token_finish_mutex.
2016-09-01 17:28:48 +02:00
Jules Blok
376cadb862
VertexShaderManager: Explicitly use floating-point variant of abs.
...
Some compilers don't have an automatic abs() overload for floats.
Doesn't really matter if they use the integer variant here, but
it's better to be explicit about the fact that we're using floats.
2016-09-01 17:23:07 +02:00
Jules Blok
73b05b339b
DVDInterface: Remove unused Triforce buffer.
2016-09-01 17:15:43 +02:00