diff options
| author | Scott Mansell <phiren@gmail.com> | 2024-06-05 18:16:24 +1200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-06-05 18:16:24 +1200 |
| commit | a57962cedb04229a61c4c3c58bad7b867340b6aa (patch) | |
| tree | 67284361a16cf3bf9e30ddc5f6ec98ad41239690 /Source/Core/VideoCommon/TextureCacheBase.h | |
| parent | c04460d88b4f18d4b42dc81359aae1399776d2b0 (diff) | |
| parent | c2bc2ccd23cfabc2a6d8ac0295fef7b669206e28 (diff) | |
Merge pull request #12825 from iwubcode/texture_cache_sampler_split
VideoCommon: pull texture sampler out of texture cache for later reuse
Diffstat (limited to 'Source/Core/VideoCommon/TextureCacheBase.h')
| -rw-r--r-- | Source/Core/VideoCommon/TextureCacheBase.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/Source/Core/VideoCommon/TextureCacheBase.h b/Source/Core/VideoCommon/TextureCacheBase.h index 998ff446d9..1a06fa671a 100644 --- a/Source/Core/VideoCommon/TextureCacheBase.h +++ b/Source/Core/VideoCommon/TextureCacheBase.h @@ -33,6 +33,7 @@ class AbstractFramebuffer; class AbstractStagingTexture; class PointerWrap; +struct SamplerState; struct VideoConfig; namespace VideoCommon @@ -282,7 +283,7 @@ public: RcTcacheEntry GetXFBTexture(u32 address, u32 width, u32 height, u32 stride, MathUtil::Rectangle<int>* display_rect); - virtual void BindTextures(BitSet32 used_textures); + virtual void BindTextures(BitSet32 used_textures, const std::array<SamplerState, 8>& samplers); void CopyRenderTargetToTexture(u32 dstAddr, EFBCopyFormat dstFormat, u32 width, u32 height, u32 dstStride, bool is_depth_copy, const MathUtil::Rectangle<int>& srcRect, bool isIntensity, @@ -308,6 +309,10 @@ public: static bool AllCopyFilterCoefsNeeded(const std::array<u32, 3>& coefficients); static bool CopyFilterCanOverflow(const std::array<u32, 3>& coefficients); + // Get a new sampler state + static SamplerState GetSamplerState(u32 index, float custom_tex_scale, bool custom_tex, + bool has_arbitrary_mips); + protected: // Decodes the specified data to the GPU texture specified by entry. // Returns false if the configuration is not supported. |
