summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/TextureCacheBase.h
diff options
context:
space:
mode:
authorScott Mansell <phiren@gmail.com>2026-09-01 16:47:42 +1200
committerGitHub <noreply@github.com>2026-09-01 16:47:42 +1200
commita1e636d72c8469acf747ac6542f0b7ace7cea02f (patch)
tree3c1bb76909f0cb614fdcb8d69e4c208b86c85c61 /Source/Core/VideoCommon/TextureCacheBase.h
parent1fd7f3521895f285aa9382af8e7e464991437225 (diff)
parent9263f6b7c6773c35276b0a505483c3658d672329 (diff)
Merge pull request #14837 from iwubcode/dolphin_texture_refactor_2
VideoCommon: separate out reinterpret and palette texture creation from rendering
Diffstat (limited to 'Source/Core/VideoCommon/TextureCacheBase.h')
-rw-r--r--Source/Core/VideoCommon/TextureCacheBase.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/Source/Core/VideoCommon/TextureCacheBase.h b/Source/Core/VideoCommon/TextureCacheBase.h
index d596f84e5e..7e9d0613d4 100644
--- a/Source/Core/VideoCommon/TextureCacheBase.h
+++ b/Source/Core/VideoCommon/TextureCacheBase.h
@@ -314,6 +314,11 @@ public:
static SamplerState GetSamplerState(u32 index, float custom_tex_scale, bool custom_tex,
bool has_arbitrary_mips);
+ static void RenderPaletteEntry(u32 texel_buffer_offset, const RcTcacheEntry& entry,
+ AbstractTexture* texture, TLUTFormat tlutfmt);
+ static void RenderReinterpretEntry(const RcTcacheEntry& entry, AbstractTexture* texture,
+ TextureFormat old_format, TextureFormat new_format);
+
protected:
// Decodes the specified data to the GPU texture specified by entry.
// Returns false if the configuration is not supported.
@@ -360,9 +365,11 @@ private:
RcTcacheEntry GetXFBFromCache(u32 address, u32 width, u32 height, u32 stride);
- RcTcacheEntry ApplyPaletteToEntry(RcTcacheEntry& entry, const u8* palette, TLUTFormat tlutfmt);
+ std::pair<RcTcacheEntry, u32> CreatePaletteEntryWithOffset(const RcTcacheEntry& entry,
+ const u8* palette);
- RcTcacheEntry ReinterpretEntry(const RcTcacheEntry& existing_entry, TextureFormat new_format);
+ RcTcacheEntry CreateReinterpretEntry(const RcTcacheEntry& existing_entry,
+ TextureFormat new_format);
RcTcacheEntry DoPartialTextureUpdates(RcTcacheEntry& entry_to_update, const u8* palette,
TLUTFormat tlutfmt);