Commit Graph

341 Commits

Author SHA1 Message Date
1fa81f24d3 VertexManagerBase: Make CreateNativeVertexFormat return a unique_ptr
Much safer as opposed to just returning raw allocated memory.
2017-02-18 03:16:24 -05:00
d9d069e024 OpcodeDecoding: Convert #defines into enum constants
Gets several constants out of global scope.
2017-02-08 00:05:17 -05:00
c85e0a2586 FramebufferManagerBase: Return a std::pair from GetTargetSize
Keeps associated data together. It also eliminates the possibility of out
parameters not being initialized properly. For example, consider the
following example:

-- some FramebufferManager implementation --

void FBMgrImpl::GetTargetSize(u32* width, u32* height) override
{
  // Do nothing
}

-- somewhere else where the function is used --

u32 width, height;
framebuffer_manager_instance->GetTargetSize(&width, &height);

if (texture_width != width) <-- Uninitialized variable usage
{
  ...
}

It makes it much more obvious to spot any initialization issues, because
it requires something to be returned, as opposed to allowing an
implementation to just not do anything.
2017-02-03 15:27:53 -05:00
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
f12460d1f4 VideoSW: Fix GL ES shader. 2017-01-07 12:32:15 +01:00
41b0c74e30 VideoCommon: Make dst_alpha state implicit. 2017-01-04 20:02:31 +01:00
abf9bb170b TextureCache: Drop unused parameter in backend API. 2016-12-26 22:10:32 +01:00
04f319066d TextureCache: Extract BP enum check to VideoCommon.
We have TOO many video backends.
2016-12-26 22:10:21 +01:00
9160be50db Merge pull request #4224 from lioncash/tcache
TextureCacheBase: Eliminate static state
2016-12-23 04:33:42 -05:00
d6cdf49769 VideoSoftware: Don't drop least significant bit of 5-bit blue channels 2016-12-14 23:56:06 +10:00
58a5395173 TextureCacheBase: Eliminate static state 2016-12-09 16:50:37 -05:00
31ccfffd38 Common: Add alignment header
Gets rid of duplicated alignment code.
2016-12-06 20:33:53 +01:00
a0a62c0f46 VideoConfig: Add option for full-resolution frame dumping 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
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
df5eff9ab7 VideoSW: Use VideoCommon frame dumping. 2016-10-11 22:32:06 +02:00
7d5363ffa8 Merge pull request #4337 from degasus/framedump
AVIDump: Move CoreTiming into caller.
2016-10-11 22:25:28 +02:00
dc1b35fa4b Fix building with PCH disabled. 2016-10-11 14:25:14 -05: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
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
86112c7258 VideoCommon: Minor changes
Make Renderer::GetMaxTextureSize return u32 instead of int.
2016-10-03 06:51:46 -07:00
17aef319e8 Merge pull request #4240 from lioncash/include
Software: Clean out unnecessary includes/fwd decls
2016-10-02 20:31:35 -07:00
ccfc081697 Merge pull request #4245 from aldelaro5/logs-levels-changes
Lots of Logs levels changes (also enable INFO level in every build)
2016-10-02 16:51:44 -04:00
f0aa9b3751 Reorganise a ton of logs level
Most of this commits changes performance decreasing logs from info to debug and also cleans up innacurate levels.
2016-10-01 15:50:28 -04:00
828aac7890 VideoBackends: Make TextureCache::CompileShaders return a bool 2016-10-01 01:09:12 +10:00
5346078791 VideoCommon: Add config fields for multithreading and validation layers 2016-10-01 01:09:12 +10:00
c9ef042b2d Software: Clean out unnecessary includes/fwd decls 2016-09-24 05:28:00 -04:00
330944eef8 DebugUtils: const correctness 2016-09-22 21:05:17 -04:00
5ac161c132 TextureEncoder: const correctness 2016-09-22 21:01:56 -04:00
eb574e7bac NativeVertexFormat: const correctness 2016-09-22 21:01:55 -04:00
5f1e444c28 Clipper: const correctness 2016-09-22 21:01:49 -04:00
d79d5d49f4 Rasterizer: const correctness 2016-09-22 20:39:28 -04:00
2d0e857cb3 Merge pull request #4225 from lioncash/soft
SWVertexLoader: Value initialize SetupUnit instance
2016-09-22 16:05:32 +02:00
a8c8dd0c53 SWVertexLoader: Value initialize SetupUnit instance 2016-09-22 09:58:44 -04:00
5890565575 Merge pull request #4233 from lioncash/efb
EfbInterface: Change out parameters on getters to return by value
2016-09-22 10:49:33 +02:00
33288c4569 EfbInterface: Change out parameters on getters to return by value 2016-09-21 20:56:44 -04:00
fc41e982e9 SWOGLWindow: Utilize the move constructor in PrintText
The previous code would always do a copy
2016-09-21 13:11:34 -04:00
99baa3268f SWOGLWindow: const correctness for ShowImage 2016-09-21 12:54:22 -04:00
9d8f373016 VideoSoftware: Don't Init the PixelEngine twice
PixelEngine is initialized by InitializeShared()
2016-09-03 15:12:41 +10:00
da82389347 Merge pull request #4172 from phire/software_fog_error
VideoSoftware: Fix unsigned overflow bug in fog
2016-09-02 09:53:44 +02:00
0e7424b359 VideoSoftware: Fix unsigned overflow bug in fog
Was causing fog errors on the left half of the screen.

Only appeared to affect visual studio builds, GCC did the correct
thing.
2016-09-02 10:12:44 +12:00
94cbe0c12a Comments 2016-08-31 06:40:50 -05:00
e6ccd0729f Revert postMat movement 2016-08-31 02:14:51 -05:00
89b1d613cc Remove else in software renderer 2016-08-30 18:33:27 -05:00
e0a1ab9027 lint fix 2016-08-30 18:33:26 -05:00
8f69de51ca inputform ABC1's q value is defaulting to 0
This is causing the 0 divide case to run when source row is using tex0-7 and inputform is ABC1.
2016-08-30 18:33:25 -05:00
767f56d7c8 Software renderer fix 2016-08-30 18:33:24 -05:00