Commit Graph

803 Commits

Author SHA1 Message Date
ec71452706 StreamBuffer: Correct function casing 2015-12-21 10:09:03 -05:00
1eea95a5be StreamBuffer: Use std::array for fences 2015-12-21 10:07:56 -05:00
7b69fec8e7 StreamBuffer: Remove unnecessary inline specifiers
Methods defined directly in class bodies are inline by default
2015-12-21 10:04:14 -05:00
f295182833 VideoBackends: Simplify initialization and deinitialization of resources
Approximately three or four times now, the issue of pointers being
in an inconsistent state been an issue in the video backend renderers
with regards to tripping up other developers.

Global (ugh) resources are put into a unique_ptr and will always have a
well-defined state of being - null or not null
2015-12-20 22:40:37 -05:00
a61fc372bb VideoCommon: Change PokeEFB to take a pointer rather than a vector
This saves allocating a vector for the pass-through path.
2015-12-20 14:42:14 +10:00
e26d9f7c35 MSAA: Store samples in ini files. 2015-12-15 09:41:01 +01:00
78dda1cf79 [OGL] Update extension checks in Render.
This was relying on behaviour that GLExtensions was adding fake extensions to the supported list with ES.
This no longer happens so it needed to be changed.
2015-12-13 11:39:45 -06:00
21b708106c Make sure not to use a GL texture buffer past the max size.
The spec says that vendors can set the max texture size to be 65KB and we want 1MB.
Check the maximum supported and drop to the max if it is less than 1MB
2015-11-30 01:18:03 -06:00
fc00598785 NativeVertexFormat: Inline Initialize in contructor
They were only called at once, so no need to seperate them.

This also removes the only dereference of the NativeVertexFormat in VideoCommon, so backends may just return nullptr.
2015-11-24 22:48:49 +01:00
df799dd124 VideoCommon: Create default implementation for state setters
It's fine to pull those within the backends, so there is no need to enforce them to implement this interface.
2015-11-24 22:39:10 +01:00
d27dcdba48 We shouldn't be trying to enable the SSBO extension in ES. 2015-11-23 14:47:43 -06:00
ed5e3c054e Enable Anisotropic filtering in ES.
This adds a check to make sure the vendor supports anisotropic filtering.
Pretty much all vendors support this, even the mobile ones.
2015-11-19 02:00:43 -06:00
087ba5268a TextureCache: Rewrite EFB Copy control flow 2015-11-15 12:02:41 +01:00
dcdf8fd3ce TextureCache: Split efb2ram from efb2tex 2015-11-15 11:59:52 +01:00
71b22702a1 OGL-TextureConverter: Keep care about the global state ifself 2015-11-15 11:59:52 +01:00
495902787c OGL: Remove TCache::Entry usage in TextureConverter 2015-11-15 11:59:52 +01:00
81d9cce70c VideoCommon: rename TextureCache to TextureCacheBase 2015-11-06 15:43:58 +01:00
51c984dde3 Remove the "Show EFB Copy Regions" debug option.
It was only implemented in OpenGL, though the option was visible in both
backends, leading to memory leaks if you enabled it in DirectX.

And it wasn't particularly useful as a debug feature as it only showed
where in the EFB the copies were taken from, not what format it was, or
what the copy was used for, or what content was in the EFB at that point
in time.

Also, it stretched the copy regions relative to the window, so the
on-screen regions don't even line up with the window unless the game used
the full EFB (some pal games) and you game image stretched to the full
window.
2015-11-05 18:15:46 +13:00
05b06b7a21 Merge pull request #3227 from Tilka/sizeof
OGL: don't hardcode buffer sizes
2015-11-04 14:35:23 +13:00
39313152ba OGL: use StringFromFormat where appropriate 2015-11-04 01:56:02 +01:00
e161e714c7 Merge pull request #3226 from Tilka/shadergen
VideoCommon: return code/uid from shader gens
2015-11-04 13:42:49 +13:00
bc38892db7 DriverDetails: remove BUG_BROKENINFOLOG leftovers
It was removed in 9618738278.
2015-11-03 18:50:44 +01:00
71d1eb3c31 VideoCommon: return code/uid from shader gens
rather than passing in non-const references
2015-11-03 14:40:23 +01:00
c52c73f762 VideoCommon: VertexManager -> VertexManagerBase
It may be a bit weird to see calls to static functions in
VertexManagerBase now, but at least it's easier to see what's going on.
2015-11-02 11:53:54 +01:00
983978ee66 VideoCommon: flush vertex manager if components change 2015-11-01 22:39:31 +01:00
7066689131 ShaderCaches: remove unneeded typedefs 2015-10-29 14:43:05 +01:00
f9512ece77 OGL/ProgramShaderCache: small cleanup
Drop an unused function and privatize the cash, er, I mean cache.
2015-10-29 13:51:25 +01:00
c28e3affc5 TextureCacheBase: Change CacheLinesPerRow to BytesPerRow 2015-10-22 08:14:43 -04:00
9ee610830c Make sure FORCE_EARLY_Z is defined for GLES 2015-10-18 02:37:14 +13:00
e7b2a22225 Support Conservative Depth as a fallback for EarlyZ
Allows Mesa based drivers to support ZCompLoc
2015-10-18 01:46:54 +13:00
b0bbe52cc9 Merge pull request #3164 from phire/samplerArrays
PixelShaderGen: Use arrays of texture samplers.
2015-10-12 18:44:14 +02:00
645e4cbbee PixelShaderGen: Use arrays of texture samplers. 2015-10-12 05:06:39 +13:00
99228633c3 OGL: simplify AA modes initialization 2015-10-10 22:51:31 +02:00
81414b4fa2 Merge pull request #3076 from void-ghost/stereo3d_presets
Stereo3d presets
2015-10-03 18:10:23 -07:00
5464e698fc Merge pull request #3102 from rohit-n/build-pch
Fix building with PCH disabled.
2015-10-03 13:30:51 -04:00
58d893e56f Merge pull request #3075 from waddlesplash/no-regexp
FileSearch: Don't use RegExes, just do string comparisons.
2015-10-02 04:00:23 +13:00
d6ff75d71d OGL: Remove unnecesary FPSCounter include from Render.cpp 2015-09-29 10:01:38 -04:00
3b75f45cf6 Fix building with PCH disabled. 2015-09-28 11:51:08 -05:00
06c6f60f5b OGL: Use SplitPath() instead of std::regex. 2015-09-27 13:26:19 -04:00
5643fe5d1f FileSearch: Don't use RegExs, just do string comparisons.
Nothing used the RegEx feature of FileSearch, and GCC < 4.9
doesn't support C++11 RegEx properly, so get rid of it.
2015-09-27 13:25:51 -04:00
8ea9b07b59 Merge pull request #3093 from lioncash/header_shuffle
Common: Trim Common.h
2015-09-27 03:18:03 +02:00
1d42db2439 Common: Move NonCopyable to its own header 2015-09-26 18:50:35 -04:00
be667e7de8 Merge pull request #3035 from aserna3/SSAAImprovements
Improved OGL and D3D's AA options in UI
2015-09-26 09:27:39 -04:00
df189c3ea3 Improved D3D and OGL AA option UI
Removed Quality Levels from D3D AA options

Dropdown text now shows whether you're applying MSAA or SSAA

Added a description for SSAA

Moved SSAA checkbox

Cleaned up AA in backends slightly. Supported modes is now a list of ints.
2015-09-25 09:05:18 -07:00
07e4b4f7c4 VideoBackend: Video config filename is now exposed in VideoBackends.
It reduces redundancy. Needed make possible to save current video config.
2015-09-22 09:47:19 +03:00
c9836ff592 EGL: Don't depend on VideoCommon or Core 2015-09-22 00:36:48 +12:00
93f6563789 WGL: Don't depend on Core/VideoCommon 2015-09-22 00:36:45 +12:00
95f3c956a8 Move GL interface code out of the OpenGL video backend. 2015-09-22 00:36:45 +12:00
c976e14277 GLInterface: Fix VideoSW on linux + OSX (v2)
Our Video Software backend isn't OpenGL Core compatible, so we need a flag to alloc a compatible one.

v2: Fix AGL profile selection.
2015-09-19 13:22:55 +02:00
a7e9a154a5 Revert "GLInterface: Fix VideoSW on linux + OSX" 2015-09-18 13:40:09 +02:00