summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/TextureCacheBase.cpp
AgeCommit message (Collapse)Author
2019-12-05VideoCommon/OpcodeDecoding: Move g_bRecordFifoData into namespaceLioncash
Keeps the global localized with the code that it's primarily related to. Now it's obvious from a glance what the global variable is affecting.
2019-11-23VideoCommon: Make use of fmt outside of shader generatorsLioncash
Migrates most of VideoCommon over to using fmt, with the exception being the shader generator code. The shader generators are quite large and have more corner cases to deal with in terms of conversion (shaders have braces in them, so we need to make sure to escape them). Because of the large amount of code that would need to be converted, the conversion of VideoCommon will be in two parts: - This change (which converts over the general case string formatting), - A follow up change that will specifically deal with converting over the shader generators.
2019-08-08Merge pull request #8293 from lioncash/refConnor McLaughlin
VideoCommon/TextureCacheBase: Make OnConfigChanged's parameter a const reference
2019-08-04VideoCommon/TextureCacheBase: Collapse for loop into a fill() in Invalidate()Lioncash
Same thing, less code.
2019-08-04VideoCommon/TextureCacheBase: Use emplace_back where applicableLioncash
Same thing, less code.
2019-08-04VideoCommon/TextureCacheBase: Remove use of the texture cache globalLioncash
We can just call the functions that are part of the interface instead of using the global in order to execute those functions.
2019-08-04VideoCommon/TextureCacheBase: Remove dependence on global variables from ↵Lioncash
OnConfigChanged() The active config will always be passed as the reference parameter, we can make use of the parameter instead of accessing the global variable.
2019-08-04VideoCommon/TextureCacheBase: Make OnConfigChanged's parameter a const referenceLioncash
This reference isn't actually modified within this function
2019-07-24Config: Add an option to skip saving texture cache to save stateStenzek
2019-07-24TextureCache: Support saving cache entries, including EFB copiesStenzek
2019-07-19TextureCache: Don't crash when conversion pipelines fail to compileStenzek
2019-07-14TextureCache: Support reinterpreting formats for VRAM texturesStenzek
2019-07-14TextureCache: Combine ApplyPaletteToEntry and ConvertTextureStenzek
2019-07-10VideoCommon/Statistics: Rename stats global to g_statsLioncash
Makes the global variable follow our convention of prefixing g_ on global variables to make it obvious in surrounding code that it's not a local variable.
2019-07-10VideoCommon/Statistics: Normalize statistic variable namesLioncash
Normalizes all variables related to statistics so that they follow our coding style. These are relatively low traffic areas, so this modification isn't too noisy.
2019-05-06Reformat repo to clang-format 7.0 rulesTechjar
2019-05-04Replace MathUtil::Clamp with std::clampLéo Lam
2019-05-04Merge pull request #7839 from ShFil119/impr/redundantLéo Lam
Remove redundant initialization
2019-04-30Remove redundant initializationFilip Gawin
2019-04-28Merge pull request #8048 from stenzek/vulkan-negative-scissor-rectConnor McLaughlin
Vulkan: Don't set a negative offset in scissor rect
2019-04-28FramebufferManager: Fix invalid transitions for 1xIR in EFB cacheStenzek
2019-04-28TextureCache: Fix incorrect format string in GetXFBTexture()Stenzek
2019-04-21Replace EFBRectangle/TargetRectangle with MathUtil::RectangleStenzek
2019-04-21TextureCache: Check for out-of-range partial copy rect after scalingStenzek
2019-04-21TextureCache: Use linear filtering on y-scaled and >1xIR VRAM copiesStenzek
2019-04-21TextureCache: Simplify XFB reconstructionStenzek
This also better handles in-memory interlaced XFB data placed by the CPU by considering the stride from the VI.
2019-03-30FramebufferManager: Fix broken EFB peeks in GL with MSAA onStenzek
2019-03-29TextureCacheBase: Fix possible crash on shutdown with deferred EFB copiesStenzek
2019-03-20TextureCacheBase: Fix infinite loop in DoPartialTextureUpdatesStenzek
2019-02-28Merge pull request #7832 from stenzek/xfb-decoding-regressionTilka
TextureCache: Fix GPU decoding of XFB copies
2019-02-28TextureCache: Fix GPU decoding of XFB copies not falling back to CPUStenzek
2019-02-28TextureCache: Fix EFB2RAM copies at >1xIR sampling out-of-rangeStenzek
2019-02-19Move most backend functionality to VideoCommonStenzek
2019-02-17TextureCache: Don't copy out-of-range rectangles when stitching texturesStenzek
This can cause driver crashes or GPU hangs if we do.
2019-02-17TextureCache: Bind textures/samplers after loading all texturesStenzek
Since loading textures can result in rendering, e.g. partial copies, we don't want to disturb partially-bound GX state.
2019-01-19TextureCache: Fix a possible crash when partial updating palette texturesStenzek
2019-01-19TextureCache: Don't partial copy to non-existant texture layersStenzek
2019-01-19TextureCache: Fix broken XFB stitching with stereoscopy is enabledStenzek
2018-12-25fx texture overlapweihuoya
2018-11-13TextureCache: Recompute overlapping XFB copy hashes after copying to RAMStenzek
2018-11-08TextureCache: Fix leaking TCacheEntry instancesStenzek
2018-11-07TextureCache: Implement deferred/batched EFB copiesStenzek
2018-10-14Merge pull request #7412 from AdmiralCurtiss/xfb-stitch-in-orderTilka
Stitch together overlapping XFB regions in order of XFB copy creation.
2018-09-15Do not consider XFB copies for invalidating textures when loading a new texture.Admiral H. Curtiss
This fixes severe image flickering in some cutscenes of Twin Snakes. The game appears to sometimes load a previously made XFB copy as a texture before it is actually rendered to the screen, which we took as an invitation to invalidate the XFB copy.
2018-09-14Stitch together overlapping XFB regions in order of XFB copy creation.Admiral H. Curtiss
2018-07-06VideoCommon/TextureCacheBase: Resolve a -Wmissing-braces warning in ↵Lioncash
GetRAMCopyFilterCoefficients()
2018-07-03Make arbitrary mipmap detection toggle invalidate the texture cacheTechjar
We want this setting to invalidate the cache because it may affect the appearance of textures in the rendered scene, therefore one would expect changing it while the game is running to have the expected effect immediately.
2018-07-02Remove unused sRGB conversion functionsJonathan Hamilton
Now the arbitrary mipmap reference downsampling is just done in linear space, these are no longer used.
2018-07-02Do all arbitrary mipmap detection in integer spaceJonathan Hamilton
This no longer converts from sRGB to linear for the reference mip downsample - even if the original mipmap creation tool used an sRGB colorspace (which isn't really guaranteed, and may even change per game), this is a "fast" heuristic that's only an estimate anyway. The average diff is also now stored in a u64, avoiding floating point calculations in the per-pixel hot loop. This should speed up the detection significantly, hopefully fixing jank when loading in new textures.
2018-06-21Merge pull request #6875 from JonnyH/WIP/mipmap-heuristic-tweaksMarkus Wick
Make arbitrary mipmap detection a config option