summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon
AgeCommit message (Collapse)Author
2016-07-10Merge pull request #3961 from phire/less_virtual_xfb_lagPierre Bourdon
XFB: Send image to screen at start of field (Reduce VirtualXFB latency)
2016-07-09Remove VI count limit on Movie playbackChris Burgener
2016-06-28XFB: Send image to screen at start of field.Scott Mansell
This is much more accurate to the hardware, and saves around 16ms of latency.
2016-06-27Merge pull request #3930 from RisingFog/split_video_dump_resolutionChris Burgener
Split Video Dumps on Resolution Change
2016-06-26LightingShaderGen: Fix formattingLéo Lam
2016-06-26Merge pull request #3950 from phire/fix-warningsMarkus Wick
VideoCommon: Fix some warnings.
2016-06-26VideoCommon: Fix some warnings.Scott Mansell
2016-06-26VideoCommon: Drop GetConfigName.degasus
We're past 5.0 now, so there is no need to look for old inis.
2016-06-26VideoBackends: Merge ShowConfig functions.degasus
2016-06-26VideoBackends: Merge Initialize and Shutdown functions.degasus
2016-06-26Merge pull request #3716 from degasus/coretimingScott Mansell
CoreTiming: Drop ProcessFifoWaitEvents.
2016-06-26CoreTiming: Drop ProcessFifoWaitEvents.degasus
globalTimer is only written in Advance, so this function has no function.
2016-06-26Remove the rest of ShaderDebugging.Scott Mansell
Without UID checking, it's basically a no-op that disables shader cache and stores the shader source code (without ever reading it back).
2016-06-26Multithreadded Shadergen: Minor fixups.Scott Mansell
2016-06-26Remove UID Checker.Scott Mansell
Kind of pointless now that multiple shaders with the same UID are now fundementally impossible.
2016-06-26Multithreadded Shadergen: Second pass over Pixel Shadergen.Scott Mansell
Note: It's not 100% perfect, as some of the GPU capablities leak into the pixel shader UID. Currently our UIDs don't get exported, so there is no issue. But someone might want to fix this in the future.
2016-06-26Multithreadded Shadergen: Second Pass over vertex/lighting ShadergensScott Mansell
As much as possible, the asserts have been moved out of the GetUID function. But there are some places where asserts depend on variables that aren't stored in the shader UID.
2016-06-26Multithreadded Shadergen: Second Pass over geometery ShadergenScott Mansell
2016-06-26Multithreadded Shadergen: First pass over geometery Shadergen.Scott Mansell
2016-06-26Remove global refrences from common code.Scott Mansell
Bug Fix: Previously vertex shaders and geometery shaders didn't track antialaising state in their UIDs, which could cause AA bugs on directx.
2016-06-26Multithreadded Shadergen: First pass over pixel ShadergenScott Mansell
Bug Fix: It was theoretically possible for a shader with depth writes disabled to map to the same UID as a shader with late depth writes. No known test cases trigger this.
2016-06-26UID Change: Fix bug with indirect stage UIDsScott Mansell
Bug Fix: The normal stage UIDs were randomly overwriting indirect stage texture map UID fields. It was possible for multiple shaders with diffrent indirect texture targets to map to the same UID. Once again, it dpesn't look like this bug was ever triggered.
2016-06-26Shader UID change: Only store the two bits of components we need.Scott Mansell
This frees up 21 bits and allows us to shorten the UID struct by an entire 32 bits. It's not strictly needed (as it's encoded into the length) but I added a bit for per-pixel lighiting to make my life easier in the following commits.
2016-06-26Multithreadded Shadergen: First Pass over vertex/lighting ShadergensScott Mansell
The only code which touches xfmem is code which writes directly into uid_data. All the rest now read their parameters out of uid_data. I also simplified the lighting code so it always generated seperate codepaths for alpha and color channels instead of trying to combine them on the off-chance that the same equation works for all 4 channels. As modern (post 2008) GPUs generally don't calcualte all 4 channels in a single vector, this optimisation is pointless. The shader compiler will undo it during the GLSL/HLSL to IR step. Bug Fix: The about optimisation was also broken, applying the color light equation to the alpha light channel instead of the alpha light euqation. But doesn't look like anything trigged this bug.
2016-06-25nullvideo: initial release of null video backenddegasus
2016-06-25Split Video Dumps on Resolution ChangeChris Burgener
2016-06-24Further fixes to the formatting change. WX sucks.Pierre Bourdon
2016-06-24Reformat all the things. Have fun with merge conflicts.Pierre Bourdon
2016-06-20analytics: Report OpenGL's adapter name too.Scott Mansell
2016-06-18Externals: Add libcurl.Pierre Bourdon
2016-06-18TextureCache: Rename functions and add comments to clear up docsScott Mansell
2016-06-17TextureCache: Track efb copies used in a partially updated textureScott Mansell
Fixes a major preformance regression in Skies of Arcadia during battle transisions. I had plans for a more advanced version of this code after 5.0, but here is a minimal implemenation for now.
2016-05-19OGL: Work around slowdown of glMapBufferRange with SSBO on NVIDIA driversStenzek
Using glMapBufferRange to read back the contents of the SSBO is extremely slow on NVIDIA drivers. This is more noticeable at higher internal resolutions. Using glGetBufferSubData instead does not seem to exhibit this slowdown.
2016-05-11OGL: Use coherent mapping on Qualcomm devices.degasus
2016-05-11DriverDetails: Drop BUG_BROKENALPHATEST.degasus
This flag is not in use at all.
2016-05-11OGL: Drop QC ES3.1 workaround.degasus
This was never tested well: HdkR> The tester was most likely trying to load a stale shader cache or something
2016-05-08D3D12: Implement XFB encoding/decoding (support Real XFB)Stenzek
2016-04-29Merge pull request #3796 from endrift/indtev-simplifyMathew Maidment
VideoCommon: Workaround Intel OS X bug again
2016-04-26Make integral auto IR(multiple of 640x528) work as expectedmimimi085181
Right now, it's possible that x and y are scaled differently, if efb and xfb size are not the same.
2016-04-23VideoCommon: Simplify indirect texture lookup code slightlyJeffrey Pfau
2016-04-23Revert "VideoBackend: Remove extraneous shifts from indirect texture lookups"Jeffrey Pfau
This reverts commit 1f1b127b69e47728593e8174d4ed8883622792a5.
2016-04-11Merge pull request #3748 from mimimi085181/partial-updates-paletted-texturesPierre Bourdon
Partial updates for paletted textures
2016-04-11Merge pull request #3774 from phire/Fix_Metroid_Other_MPierre Bourdon
Fix Metroid: Other M
2016-04-10PixelShaderGen: Fixes implicit type conversion or PR #3772.degasus
This regression did only happen on OpenGL ES.
2016-04-10Merge pull request #3772 from degasus/shader_optPierre Bourdon
PixelShaderGen: Move constant multiplication to constant generation.
2016-04-09Partial updates for paletted texturesmimimi085181
This pr fixes another regression that happened after pr #3165 was merged. The shadows in mario baseball should now work again.
2016-04-09Merge pull request #3752 from ↵Pierre Bourdon
mimimi085181/remove-use-only-once-restriction-partial-updates Remove the restriction to use efb copies only once as partial update
2016-04-10Alternative fix: promote cycleslate to an s64 everywhere.Scott Mansell
Also changed a few functions to be static.
2016-04-09PixelShaderGen: Move constant multiplication to constant generation.degasus
No need to do this within the shader per pixel if it can be done once.
2016-04-02Partial texture updates: Allow the efb copy to start before the texturemimimi085181
This is an oversight from pr https://github.com/dolphin-emu/dolphin/pull/3266 . Thanks to degasus for pointing this out. It's possible that MAX_TEXTURE_BINARY_SIZE can be optimised, but i wanted to play it safe considering the 5.0 stable release.