Commit Graph

191 Commits

Author SHA1 Message Date
70cf774a5c RenderBase: Forward declare EFBAccessType 2017-01-23 12:41:26 -05:00
5b461f50af VideoBackendBase: Convert EFBAccessType into an enum class 2017-01-23 03:53:38 -05:00
41b0c74e30 VideoCommon: Make dst_alpha state implicit. 2017-01-04 20:02:31 +01:00
65b5765858 VideoBackends: Clamp the range to the maximum depth value supported in the z buffer. 2016-12-27 20:25:40 +01:00
2ab6711f43 VideoBackends: Use the full depth range when inverted depth range is unsupported. 2016-12-27 14:31:17 +01:00
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
58a5395173 TextureCacheBase: Eliminate static state 2016-12-09 16:50:37 -05:00
6db0ee9561 VideoCommon: Remove backbuffer size parameters from methods
We have the s_backbuffer_{width,height} fields to represent this, so
there's no point in passing them as parameters every time.
2016-11-28 20:14:59 +10:00
72e3f1ecec Remove unnecessary ConfigManager includes
Making changes to ConfigManager.h has always been a pain, because
it means rebuilding half of Dolphin, since a lot of files depend on
and include this header.

However, it turns out some includes are unnecessary. This commit
removes ConfigManager includes from files which don't contain
SConfig or GPUDeterminismMode or GPU_DETERMINISM (which means the
ConfigManager include is not used).

(I've also had to get rid of some indirect includes.)
2016-11-27 22:38:38 +01:00
7e35a47b51 Cosmetics. 2016-11-13 22:17:40 +01:00
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
9909babe2c D3DBase: Create the swapchain in fullscreen mode if enabled. 2016-11-11 20:36:10 +01:00
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
be29090aae AVIDump: Add a struct for the state.
So AddFrame use no global state and can be threaded well.
2016-11-04 18:35:42 +01:00
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
ab5054c34e VideoBackends: Always enable dual-source blending if supported. 2016-10-10 17:32:51 +02:00
9f264c0872 AVIDump: Move CoreTiming into caller. 2016-10-10 12:03:18 +02:00
a583d36c7f Merge pull request #4326 from degasus/framedump
Framedump: Merge screenshot code with framedumping.
2016-10-10 11:48:57 +02:00
a86b2c15d8 Merge pull request #4322 from Helios747/I_hate_features
Remove Frameskip
2016-10-08 21:41:43 +02:00
64927a2f81 Renderer: Merge screenshot logic into VideoCommon. 2016-10-08 19:38:57 +02:00
b427ead0cc Remove Frameskip 2016-10-08 11:49:51 -05:00
db0509560e AVIDump: Hard code rgba. 2016-10-08 18:16:32 +02:00
0864ef4352 VideoCommon: Add custom stride for framedumping. 2016-10-08 15:44:54 +02:00
1ef5ba0c53 D3D: Skip redundant format convertions. 2016-10-08 15:40:49 +02:00
b5a91e1dfa Framedumps: Add finish() function to limit memory lifetime. 2016-10-08 15:39:22 +02:00
ebc617882b VideoCommon: Drop RepeatFrameDumpFrame helper.
This was needed with fixed framerate dumping. As we now synchronize the frames, the last one will just get padded.
2016-10-08 15:39:21 +02:00
64b648f6c8 D3D: Use VideoCommon framedumping helpers. 2016-10-07 23:10:36 +02:00
43c48a6f48 Fix frame dumps on file close in certain situations 2016-10-04 09:26:23 -04:00
86112c7258 VideoCommon: Minor changes
Make Renderer::GetMaxTextureSize return u32 instead of int.
2016-10-03 06:51:46 -07:00
168e145fae D3D: Remove unnecessary renderer global references 2016-08-31 14:17:22 -04:00
65472260d8 D3D: Correctly invert the viewport depth range. 2016-08-23 09:57:11 +02:00
7078216b61 Improve documentation. 2016-08-16 21:09:58 +02:00
e9e81ece65 VideoBackends: Enable depth clamping. 2016-08-15 13:11:25 +02:00
f31adf9635 Fix D3D crashes/issues 2016-06-27 10:13:17 -04:00
3570c7f03a Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
e169d54f3c D3D11: Fix CPU EFB color reads when MSAA is enabled
Also swaps the byte order from RGBA->BGRA to match GL/D3D12, and what
the read handler is expecting.

Depth reads will now return the minimum depth of all samples, instead of
the average of all samples.
2016-05-19 22:51:00 +10:00
33c22ffab7 D3D: Amend code to fix a new VS warning
Fixes warning C4334
2016-03-30 20:59:57 -04:00
0b9a72a62d VideoCommon: Refactor TexMode0 mipmaps disabled test into a helper function 2016-03-24 13:43:29 +11:00
902e5cddf7 VideoBackends: Do not use Anisotropy on Point filtered textures.
The D3D backend was always forcing Anisotropic filtering when that is enabled regardless of how the game chose to configure the texture filtering registers; this causes the same issues as "Force Filtering" without Anisotropy, such as causing game UI elements to no longer line up adjacent correctly. Historically, OpenGL's Anisotropy support has always worked "better" than D3D's due to seeming to not have this problem; unfortunately, OpenGL's Anisotropy specification only gives GL_LINEAR based filtering modes defined behavior, with only the mipmap setting being required to be considered. Some OpenGL implementations were implicitly disabling Anisotropy when the min/mag filters were set to GL_NEAREST, but this behavior is not required by the spec so cannot be relied on.
2016-03-24 13:43:29 +11:00
e1f21602fd Merge pull request #3426 from Sonicadvance1/ES_fix_framedump
Add support for framedumping to OpenGL ES.
2016-01-28 18:24:32 -05:00
5ebd1e215b Fifo: Make g_bSkipCurrentFrame a TU-local variable
This is only ever queried, making it a global isn't necessary.
2016-01-25 05:23:14 -05:00
d9fec92628 VideoCommon: Header cleanup
Also remedies places where the video backends and core rely on things
being indirectly included.
2016-01-17 20:11:45 -05:00
48b60649af Merge pull request #3495 from Armada651/d3d-float
D3D: Use a 32-bit floating point depth buffer.
2016-01-14 00:39:23 +01:00
5f244abf28 Fifo: Create a "Fifo" namespace. 2016-01-12 23:28:26 +01:00
8158d291aa D3D: Use the full depth range for Z pokes. 2016-01-11 22:27:41 +01:00
e7fbd1fd50 Merge pull request #3439 from Armada651/depth-range
Render: Clamp the z range to the full range.
2016-01-10 19:09:57 +01:00
3f15aa4b57 Add support for framedumping to OpenGL ES. 2016-01-09 00:21:20 -06:00
c34fb3edf0 Use ffmpeg for Windows Video Dumping instead of VFW 2016-01-07 18:37:58 -05:00
8c3108b354 Render: Clamp the z range to the full range. 2016-01-03 15:39:34 +01:00
330329254c Merge pull request #3361 from stenzek/d3d-vectored-efb-pokes
D3D: Implement vectored efb pokes
2015-12-30 15:27:24 +01:00