mirror of
https://github.com/libretro/ppsspp.git
synced 2025-02-19 08:28:33 +00:00
Immediately load the clut on LOADCLUT.
This commit is contained in:
parent
518394cca8
commit
7e23299c36
@ -582,8 +582,8 @@ void GLES_GPU::ExecuteOp(u32 op, u32 diff) {
|
||||
break;
|
||||
|
||||
case GE_CMD_LOADCLUT:
|
||||
gstate_c.clutChanged = true;
|
||||
gstate_c.textureChanged = true;
|
||||
textureCache_.UpdateCurrentClut();
|
||||
// This could be used to "dirty" textures with clut.
|
||||
break;
|
||||
|
||||
|
@ -817,11 +817,6 @@ void TextureCache::SetTexture() {
|
||||
|
||||
u32 clutformat, cluthash;
|
||||
if (hasClut) {
|
||||
if (gstate_c.clutChanged) {
|
||||
UpdateCurrentClut();
|
||||
gstate_c.clutChanged = false;
|
||||
}
|
||||
|
||||
clutformat = gstate.clutformat & 3;
|
||||
cluthash = GetCurrentClutHash();
|
||||
cachekey |= (u64)cluthash << 32;
|
||||
|
@ -38,6 +38,7 @@ public:
|
||||
void Invalidate(u32 addr, int size, GPUInvalidationType type);
|
||||
void InvalidateAll(GPUInvalidationType type);
|
||||
void ClearNextFrame();
|
||||
void UpdateCurrentClut();
|
||||
|
||||
// FramebufferManager keeps TextureCache updated about what regions of memory
|
||||
// are being rendered to. This is barebones so far.
|
||||
@ -107,7 +108,6 @@ private:
|
||||
void LoadTextureLevel(TexCacheEntry &entry, int level);
|
||||
void *DecodeTextureLevel(u8 format, u8 clutformat, int level, u32 &texByteAlign, GLenum &dstFmt);
|
||||
void CheckAlpha(TexCacheEntry &entry, u32 *pixelData, GLenum dstFmt, int w, int h);
|
||||
void UpdateCurrentClut();
|
||||
template <typename T>
|
||||
const T *GetCurrentClut();
|
||||
u32 GetCurrentClutHash();
|
||||
|
@ -254,7 +254,6 @@ struct GPUStateCache
|
||||
bool textureChanged;
|
||||
bool textureFullAlpha;
|
||||
bool framebufChanged;
|
||||
bool clutChanged;
|
||||
|
||||
int skipDrawReason;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user