| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2018-05-22 | EFB2RAM: Apply copy filter as a float coefficient after sampling | Stenzek | |
| Using 8-bit integer math here lead to precision loss for depth copies, which broke various effects in games, e.g. lens flare in MK:DD. It's unlikely the console implements this as a floating-point multiply (fixed-point perhaps), but since we have the float round trip in our EFB2RAM shaders anyway, it's not going to make things any worse. If we do rewrite our shaders to use integer math completely, then it might be worth switching this conversion back to integers. However, the range of the values (format) should be known, or we should expand all values out to 24-bits first. | |||
| 2018-05-17 | Merge pull request #6743 from stenzek/faster-disabled-copy-filter | Markus Wick | |
| TextureConversionShader: Don't sample from adjacent rows when not needed | |||
| 2018-05-03 | TextureConversionShader: Don't sample from adjacent rows when not needed | Stenzek | |
| 2018-05-03 | TextureConversionShader: Fix more implicit conversion errors | Stenzek | |
| 2018-05-02 | TextureConversionShader: Fix compile errors in OpenGL ES | Stenzek | |
| 2018-04-29 | Implement EFB copy filter and gamma in hardware backends | Stenzek | |
| Also makes y_scale a dynamic parameter for EFB copies, as it doesn't make sense to keep it as part of the uid, otherwise we're generating redundant shaders. | |||
| 2018-01-11 | Some more implicit uint/float conversions in the texture decode shaders | Jonathan Hamilton | |
| 2018-01-11 | GLSL-ES doesn't allow implicit int/uint conversions | Jonathan Hamilton | |
| 2017-12-06 | TextureConversionShader: Use round() instead of roundEven() in HLSL | Stenzek | |
| HLSL does not define roundEven(), only round(). This means that the output may differ slightly for OpenGL vs Direct3D. However, it ensures consistency across OpenGL drivers, as round() in GLSL can go either way. | |||
| 2017-12-02 | Merge pull request #5903 from linkmauve/fix-mp2e | Markus Wick | |
| Round values in swizzlers | |||
| 2017-12-02 | VideoCommon: Rename TextureConversionShader namespace. | degasus | |
| 2017-11-17 | HybridXFB: Fix lint errors | iwubcode | |
| 2017-11-17 | Video Common: Add XFB decoding via the GPU | iwubcode | |
| 2017-11-17 | Video Backends: Implement vertical scaling for xfb copies. This fixes the | iwubcode | |
| display of PAL games that run in 50hz mode. | |||
| 2017-11-17 | Add support for hybrid XFB | iwubcode | |
| 2017-08-07 | VideoCommon: Round values in swizzlers. | Emmanuel Gil Peyrot | |
| This was breaking Metroid Prime 2: Echoes’s scanner in some rooms, such as the one in https://fifoci.dolphin-emu.org/dff/mp2-scanner/ It was found on Ivy Bridge on Mesa, the alpha value read back from the EFB was off-by-4 in multiple objects, which was a conversion error because int4() is equivalent to floor() and the value wasn’t always higher. | |||
| 2017-08-03 | Video: Clearly separate Texture and EFB Copy formats | N.E.C | |
| Improve bookkeeping around formats. Hopefully make code less confusing. - Rename TlutFormat -> TLUTFormat to follow conventions. - Use enum classes to prevent using a Texture format where an EFB Copy format is expected or vice-versa. - Use common EFBCopyFormat names regardless of depth and YUV configurations. | |||
| 2017-06-17 | TextureConversionShader: Use integer math for truncating EFB format | Stenzek | |
| 2017-04-12 | TextureConversionShader: fix syntax error | Michael Maltese | |
| Fixes a situation where the following invalid GLSL code is generated: ```glsl float3 texSample0 = texture(samp0, float3(uv0 + float2(0, 0) * sample_offset, 0.0)).rgb; float3 texSample0 = floor(float3 texSample0 * 63.0) / 63.0; float3 texSample1 = texture(samp0, float3(uv0 + float2(1, 0) * sample_offset, 0.0)).rgb; float3 texSample1 = floor(float3 texSample1 * 63.0) / 63.0; ``` | |||
| 2017-04-12 | TextureConversionShader: Consider source format of EFB for EFB2RAM | Stenzek | |
| Currently, we use the alpha channel from the EFB even if the current format does not include an alpha channel. Now, the alpha channel is set to 1 if the format does not have an alpha channel, as well as truncating to 5/6 bits per channel. This matches the EFB-to-texture behavior. | |||
| 2017-04-06 | TextureConversionShader: Add missing swap for index of C14X2 textures | Stenzek | |
| 2017-04-06 | TextureConversionShader: Fix compile error in C14X2 decoder | Stenzek | |
| 2017-04-01 | VideoCommon: Add texture decoding shader generators | Stenzek | |
| 2016-10-01 | VideoCommon: Add APIType entry for Vulkan | Stenzek | |
| 2016-10-01 | ShaderGen: Specify attribute/output locations/bindings explicitly | Stenzek | |
| This also shifts the SSBO index from index 3 to index 0. | |||
| 2016-08-24 | TextureConversionShader: Don't use the float specifier in shader code. | Jules Blok | |
| 2016-07-29 | VideoCommon: Make API_TYPE an enum class | Lioncash | |
| Allows for forward declarations in most places, which prevents dumping unrelated VideoCommon.h contents directly into headers. | |||
| 2016-06-24 | Reformat all the things. Have fun with merge conflicts. | Pierre Bourdon | |
| 2016-02-22 | TextureConversionShader: Invert depth for Z24 encoder with D3D | Stenzek | |
| 2016-01-17 | VideoCommon: Header cleanup | Lioncash | |
| Also remedies places where the video backends and core rely on things being indirectly included. | |||
| 2016-01-13 | TextureConversionShader: Also invert color encoders if they're used to ↵ | Jules Blok | |
| encode depth. | |||
| 2015-09-06 | Move common EFB copy code into VideoCommon | Scott Mansell | |
| Addded a few duplicated depth copy texture formats to the enum in TextureDecoder.h. These texture formats were already implemented in TextureCacheBase and the ogl/dx11 texture cache implementations. | |||
| 2015-08-17 | Merge pull request #2861 from lioncash/param | Markus Wick | |
| VideoCommon: Remove unused parameters | |||
| 2015-08-16 | TextureConversionShader: Remove an unused parameter | Lioncash | |
| 2015-08-15 | Revert "VideoCommon: Clamp integer conversions." | Jules Blok | |
| This reverts commit 0f2c72f0f844c219e168faa7de8dd515f8723fdc. | |||
| 2015-05-26 | D3D: Depth range inversion. | galop1n | |
| Credits go to Galop1n for designing this technique and to BhaaLseN for cleaning up the commit. | |||
| 2015-05-25 | Set copyright year to when a file was created | Tillmann Karras | |
| 2015-05-25 | Update license headers to GPLv2+ | Tillmann Karras | |
| 2015-05-08 | TextureConversionShader: Use floating point values in clamp(). | Jules Blok | |
| 2015-05-08 | VideoCommon: Clamp integer conversions. | Jules Blok | |
| 2015-05-08 | VideoBackends: Use proper floating point depth precision. | Jules Blok | |
| 2015-02-21 | TextureConversionShader: Use a Texture2DArray to match the shader resource view. | Jules Blok | |
| 2015-02-03 | Fix regression for D3D EFB depth copies. | magumagu | |
| On D3D, we read from the depth buffer using the format DXGI_FORMAT_R24_UNORM_X8_TYPELESS (essentially, the "r" component contains the depth, and the other components contain nothing). | |||
| 2015-01-25 | Don't use boolean negation. | magumagu | |
| 2015-01-25 | Fix RGBA8 encoding. | magumagu | |
| 2015-01-25 | Fix shader so it's possible to use with D3D Map(). | magumagu | |
| Well, that's not strictly true, but trying to memcpy between two buffers using different row lengths and different strides is at minimum extremely unintuitive. | |||
| 2015-01-25 | More work. | magumagu | |
| 2015-01-25 | WIP. | magumagu | |
| 2014-12-05 | Common: Remove locale based functions from CommonFuncs. | Lioncash | |
| Since %f isn't used anymore in the shader generators, these can go. | |||
| 2014-11-23 | use GL_TEXTURE_2D_ARRAY for most of our textures | degasus | |
