summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/VertexShaderManager.cpp
AgeCommit message (Collapse)Author
2017-01-13VertexShaderManager: Break up the conditions to make it readable.Jules Blok
2017-01-13VertexShaderGen: Remove the need for an extra UID.Jules Blok
2016-12-10ShaderManagers: Use aggregate initialization for some variables.Lioncash
These provide the same semantics, however aggregate initialization doesn't force the structs to be trivially copyable. memset, on the other hand, does.
2016-11-02Core: Remove double newlines at the end of *_LOG messages.Emmanuel Gil Peyrot
2016-09-01VertexShaderManager: Explicitly use floating-point variant of abs.Jules Blok
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-01VertexShaderGen: Move the sonic epsilon hack to the vertex shader.Jules Blok
In the vertex shader we have control over the depth clipping planes, so we don't have to offset every floating point value and lose accuracy.
2016-08-23OGL: Handle cases where reversed depth is already used.Jules Blok
2016-08-21VertexManagerBase: Get rid of static behaviorLioncash
2016-08-16Improve documentation.Jules Blok
2016-08-15VertexShaderGen: Use reversed depth range.Jules Blok
2016-08-15VertexShaderManager: Use a more accurate depth range.Jules Blok
This fixes the gxtest_depth hwtest.
2016-08-15VideoCommon: Implement depth range equation in vertex shader.Jules Blok
2016-06-26VideoBackends: Merge Initialize and Shutdown functions.degasus
2016-06-24Reformat all the things. Have fun with merge conflicts.Pierre Bourdon
2016-01-18Merge pull request #3448 from Armada651/depth-epsilonJules Blok
VertexShaderManager: Add an epsilon hack to the perspective projection.
2016-01-17VideoCommon: Header cleanupLioncash
Also remedies places where the video backends and core rely on things being indirectly included.
2016-01-05VertexShaderManager: Add an epsilon hack to the perspective projection.Jules Blok
2015-11-02VideoCommon: VertexManager -> VertexManagerBaseTillmann Karras
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-10-16Core: Move a global into a namespaceLioncash
2015-10-15VertexShaderManager: Get rid of other magic constantsLioncash
2015-10-15VertexShaderManager: Get rid of float pointer castsLioncash
2015-09-06General: Replace GC_ALIGN macros with alignasLioncash
Standard supported alignment -> out with compiler-specific.
2015-08-16VertexShaderManager: Remove unused parameterLioncash
2015-08-01Widescreen Heuristic: Cleanup code.Scott Mansell
2015-08-01Make the GameCube game widescreen heuristic smarter.Scott Mansell
The last heuristic wasn't quite smart enough and had a few false positives in Mario Kart: Double Dash and Metroid prime 2. Now we only activate if the game is rendering a 16:9 projection to a 4:3 viewport.
2015-07-27Heuristic to detect if a gamecube game is rendering 16:9 widescreen.Scott Mansell
Someone suggested on IRC that we should make a database of memory locations in GameCube games which contain the 'Widescreen' setting so we can automatically detect if the game is in 4:3 or 16:9 mode. But that's hardly optimal, when the game actually tells the gpu what aspect ratio to render in. 10 min and 6 lines of code later, this is the result. Not only does it detect the correct aspect ratio it does so on the fly. I'm a little suprised nobody thought about doing this before.
2015-05-25Set copyright year to when a file was createdTillmann Karras
2015-05-25Update license headers to GPLv2+Tillmann Karras
2015-02-25Formatting/Whitespace CleanupStevoisiak
Various fixes to formatting and whitespace
2015-02-21VertexShaderManager: Turn the epsilon hack back on for 3D Vision.Jules Blok
The bug is fixed in version 347.52 of the drivers.
2015-01-24Coding style cleanup from the zfreeze mergeLioncash
2015-01-24Move Zfreeze code out individual backends into videoCommonScott Mansell
Also: * Implement support for per-vertex PosMatrixIndex * Only update zslope constant once when zfreeze is activated. * Added a bunch of comments.
2015-01-23Ensure that ZSlopes save/restore state correctly.Scott Mansell
Had to re-do *ShaderManager so they saved their constant arrays instead of completly rebuilding them on restore state.
2015-01-23Fixes Mario Tennis Gimmick Courts and adds support for FastDepthCalcNanoByte011
- Calculate ZSlope every flush but only set PixelShader Constant on Reset Buffer when zfreeze - Fixed another Pixel Shader bug in D3D that was giving me grief
2015-01-23Initial port of zfreeze branch (3.5-1729)NanoByte011
Initial port of original zfreeze branch (3.5-1729) by neobrain into most recent build of Dolphin. Makes Rogue Squadron 2 very playable at full speed thanks to recent core speedups made to Dolphin. Works on DirectX Video plugin only for now. Enjoy! and Merry Xmas!!
2014-12-29VertexShaderManager: Turn off the epsilon hack for Nvidia 3D Vision.Jules Blok
2014-12-14VideoCommon: Add a separate constants buffer for the geometry shader.Jules Blok
2014-12-05Merge pull request #1656 from kayru/orthographic_projection_epsilonMarkus Wick
Moved projection epsilon back to g_fProjectionMatrix[15]
2014-12-05Moved projection epsilon back to g_fProjectionMatrix[15], which essentially ↵Yuriy O'Donnell
scales vertices instead of just biasing.
2014-12-04VideoCommon: fix include orderMarkus Wick
2014-12-03Fix building with PCH disabled.Rohit Nirmal
2014-12-04Merge pull request #1366 from kayru/orthographic_projection_epsilonskidau
Added projection matrix epsilon that fixes depth clipping issues in some games
2014-11-29Renamed DEPTHPARAMS to PIXELCENTERCORRECTIONYuriy O'Donnell
This shader constant was previously used for depth remapping in D3D and for pixel center correction. Now it only serves one purpose and the new name makes it clear.
2014-11-27VideoConfig: Further optimize convergence and separation values and update ↵Jules Blok
their descriptions. Previous convergence distance was much too large.
2014-11-24VideoConfig: Add separation and convergence modifiers to the game ini.Jules Blok
2014-11-24VideoConfig: Rename StereoFocalLength to StereoConvergence.Jules Blok
2014-11-23VideoCommon: Switch to Nvidia stereoscopy offset formula.Jules Blok
2014-11-23GeometryShader: Adjust positions after projection.Jules Blok
By adjusting the positions in clip space we can avoid the re-projection.
2014-11-23VertexShaderManager: Add stereoscopy options to swap the left and right eye.Jules Blok
2014-11-23VideoConfigDiag: Add stereoscopy options group.Jules Blok