diff --git a/GPU/Common/ShaderCommon.h b/GPU/Common/ShaderCommon.h index d15d666e0f..1a69e5c387 100644 --- a/GPU/Common/ShaderCommon.h +++ b/GPU/Common/ShaderCommon.h @@ -29,7 +29,7 @@ enum DebugShaderType { SHADER_TYPE_GEOMETRY = 2, SHADER_TYPE_VERTEXLOADER = 3, // Not really a shader, but might as well re-use this mechanism SHADER_TYPE_PIPELINE = 4, // Vulkan and DX12 combines a bunch of state into pipeline objects. Might as well make them inspectable. - SHADER_TYPE_DEPAL = 5, + SHADER_TYPE_TEXTURE = 5, SHADER_TYPE_SAMPLER = 6, // Not really a shader either. Need to rename this enum... }; diff --git a/GPU/Common/TextureCacheCommon.cpp b/GPU/Common/TextureCacheCommon.cpp index b237c3a97e..de6c840722 100644 --- a/GPU/Common/TextureCacheCommon.cpp +++ b/GPU/Common/TextureCacheCommon.cpp @@ -124,11 +124,11 @@ TextureCacheCommon::TextureCacheCommon(Draw::DrawContext *draw) replacer_.Init(); - depalShaderCache_ = new TextureShaderCache(draw); + textureShaderCache_ = new TextureShaderCache(draw); } TextureCacheCommon::~TextureCacheCommon() { - delete depalShaderCache_; + delete textureShaderCache_; FreeAlignedMemory(clutBufConverted_); FreeAlignedMemory(clutBufRaw_); @@ -1860,7 +1860,7 @@ bool CanDepalettize(GETextureFormat texFormat, GEBufferFormat bufferFormat) { } void TextureCacheCommon::ApplyTextureFramebuffer(VirtualFramebuffer *framebuffer, GETextureFormat texFormat, RasterChannel channel) { - TextureShader *depalShader = nullptr; + TextureShader *textureShader = nullptr; uint32_t clutMode = gstate.clutformat & 0xFFFFFF; bool depth = channel == RASTER_DEPTH; @@ -1886,7 +1886,7 @@ void TextureCacheCommon::ApplyTextureFramebuffer(VirtualFramebuffer *framebuffer const GEPaletteFormat clutFormat = gstate.getClutPaletteFormat(); // Very icky conflation here of native and thin3d rendering. This will need careful work per backend in BindAsClutTexture. - Draw::Texture *clutTexture = depalShaderCache_->GetClutTexture(clutFormat, clutHash_, clutBufRaw_); + Draw::Texture *clutTexture = textureShaderCache_->GetClutTexture(clutFormat, clutHash_, clutBufRaw_); BindAsClutTexture(clutTexture); framebufferManager_->BindFramebufferAsColorTexture(0, framebuffer, BINDFBCOLOR_MAY_COPY_WITH_UV | BINDFBCOLOR_APPLY_TEX_OFFSET); @@ -1913,13 +1913,13 @@ void TextureCacheCommon::ApplyTextureFramebuffer(VirtualFramebuffer *framebuffer return; } - depalShader = depalShaderCache_->GetDepalettizeShader(clutMode, texFormat, depth ? GE_FORMAT_DEPTH16 : framebuffer->drawnFormat); + textureShader = textureShaderCache_->GetDepalettizeShader(clutMode, texFormat, depth ? GE_FORMAT_DEPTH16 : framebuffer->drawnFormat); gstate_c.SetUseShaderDepal(false); } - if (depalShader) { + if (textureShader) { const GEPaletteFormat clutFormat = gstate.getClutPaletteFormat(); - Draw::Texture *clutTexture = depalShaderCache_->GetClutTexture(clutFormat, clutHash_, clutBufRaw_); + Draw::Texture *clutTexture = textureShaderCache_->GetClutTexture(clutFormat, clutHash_, clutBufRaw_); Draw::Framebuffer *depalFBO = framebufferManager_->GetTempFBO(TempFBO::DEPAL, framebuffer->renderWidth, framebuffer->renderHeight); draw_->BindTexture(0, nullptr); draw_->BindTexture(1, nullptr); @@ -1931,11 +1931,11 @@ void TextureCacheCommon::ApplyTextureFramebuffer(VirtualFramebuffer *framebuffer draw_->BindFramebufferAsTexture(framebuffer->fbo, 0, depth ? Draw::FB_DEPTH_BIT : Draw::FB_COLOR_BIT, 0); draw_->BindTexture(1, clutTexture); - Draw::SamplerState *nearest = depalShaderCache_->GetSampler(); + Draw::SamplerState *nearest = textureShaderCache_->GetSampler(); draw_->BindSamplerStates(0, 1, &nearest); draw_->BindSamplerStates(1, 1, &nearest); - depalShaderCache_->ApplyShader(depalShader, + textureShaderCache_->ApplyShader(textureShader, framebuffer->bufferWidth, framebuffer->bufferHeight, framebuffer->renderWidth, framebuffer->renderHeight, gstate_c.vertBounds, gstate_c.curTextureXOffset, gstate_c.curTextureYOffset); @@ -1970,7 +1970,7 @@ void TextureCacheCommon::ApplyTextureFramebuffer(VirtualFramebuffer *framebuffer } void TextureCacheCommon::Clear(bool delete_them) { - depalShaderCache_->Clear(); + textureShaderCache_->Clear(); ForgetLastTexture(); for (TexCache::iterator iter = cache_.begin(); iter != cache_.end(); ++iter) { @@ -2412,5 +2412,5 @@ CheckAlphaResult TextureCacheCommon::CheckCLUTAlpha(const uint8_t *pixelData, GE } void TextureCacheCommon::StartFrame() { - depalShaderCache_->Decimate(); + textureShaderCache_->Decimate(); } diff --git a/GPU/Common/TextureCacheCommon.h b/GPU/Common/TextureCacheCommon.h index 8be81d3433..080e11a00b 100644 --- a/GPU/Common/TextureCacheCommon.h +++ b/GPU/Common/TextureCacheCommon.h @@ -291,7 +291,7 @@ public: void InvalidateAll(GPUInvalidationType type); void ClearNextFrame(); - TextureShaderCache *GetDepalShaderCache() { return depalShaderCache_; } + TextureShaderCache *GetTextureShaderCache() { return textureShaderCache_; } virtual void ForgetLastTexture() = 0; virtual void InvalidateLastTexture() = 0; @@ -403,7 +403,7 @@ protected: TextureReplacer replacer_; TextureScalerCommon scaler_; FramebufferManagerCommon *framebufferManager_; - TextureShaderCache *depalShaderCache_; + TextureShaderCache *textureShaderCache_; ShaderManagerCommon *shaderManager_; bool clearCacheNextFrame_ = false; diff --git a/GPU/Common/TextureShaderCommon.cpp b/GPU/Common/TextureShaderCommon.cpp index 77072565ea..defbeb1575 100644 --- a/GPU/Common/TextureShaderCommon.cpp +++ b/GPU/Common/TextureShaderCommon.cpp @@ -63,7 +63,7 @@ Draw::Texture *TextureShaderCache::GetClutTexture(GEPaletteFormat clutFormat, co int texturePixels = clutFormat == GE_CMODE_32BIT_ABGR8888 ? 256 : 512; - DepalTexture *tex = new DepalTexture(); + ClutTexture *tex = new ClutTexture(); Draw::TextureDesc desc{}; desc.width = texturePixels; @@ -250,7 +250,6 @@ std::string TextureShaderCache::DebugGetShaderString(std::string idstr, DebugSha } } -// TODO: Merge with DepalShaderCache? void TextureShaderCache::ApplyShader(TextureShader *shader, float bufferW, float bufferH, int renderW, int renderH, const KnownVertexBounds &bounds, u32 uoff, u32 voff) { Draw2DVertex verts[4] = { {-1, -1, 0, 0 }, diff --git a/GPU/Common/TextureShaderCommon.h b/GPU/Common/TextureShaderCommon.h index 628746b465..e2967ea89c 100644 --- a/GPU/Common/TextureShaderCommon.h +++ b/GPU/Common/TextureShaderCommon.h @@ -35,7 +35,7 @@ public: std::string code; }; -class DepalTexture { +class ClutTexture { public: Draw::Texture *texture; int lastFrame; @@ -71,5 +71,5 @@ private: Draw::SamplerState *nearestSampler_ = nullptr; std::map depalCache_; - std::map texCache_; + std::map texCache_; }; diff --git a/GPU/D3D11/GPU_D3D11.cpp b/GPU/D3D11/GPU_D3D11.cpp index ba41521fde..956d17fc85 100644 --- a/GPU/D3D11/GPU_D3D11.cpp +++ b/GPU/D3D11/GPU_D3D11.cpp @@ -332,8 +332,8 @@ std::vector GPU_D3D11::DebugGetShaderIDs(DebugShaderType type) { switch (type) { case SHADER_TYPE_VERTEXLOADER: return drawEngine_.DebugGetVertexLoaderIDs(); - case SHADER_TYPE_DEPAL: - return textureCache_->GetDepalShaderCache()->DebugGetShaderIDs(type); + case SHADER_TYPE_TEXTURE: + return textureCache_->GetTextureShaderCache()->DebugGetShaderIDs(type); default: return shaderManagerD3D11_->DebugGetShaderIDs(type); } @@ -343,8 +343,8 @@ std::string GPU_D3D11::DebugGetShaderString(std::string id, DebugShaderType type switch (type) { case SHADER_TYPE_VERTEXLOADER: return drawEngine_.DebugGetVertexLoaderString(id, stringType); - case SHADER_TYPE_DEPAL: - return textureCache_->GetDepalShaderCache()->DebugGetShaderString(id, type, stringType); + case SHADER_TYPE_TEXTURE: + return textureCache_->GetTextureShaderCache()->DebugGetShaderString(id, type, stringType); default: return shaderManagerD3D11_->DebugGetShaderString(id, type, stringType); } diff --git a/GPU/Directx9/GPU_DX9.cpp b/GPU/Directx9/GPU_DX9.cpp index b36cb34288..deaeeafb68 100644 --- a/GPU/Directx9/GPU_DX9.cpp +++ b/GPU/Directx9/GPU_DX9.cpp @@ -375,8 +375,8 @@ std::vector GPU_DX9::DebugGetShaderIDs(DebugShaderType type) { switch (type) { case SHADER_TYPE_VERTEXLOADER: return drawEngine_.DebugGetVertexLoaderIDs(); - case SHADER_TYPE_DEPAL: - return textureCache_->GetDepalShaderCache()->DebugGetShaderIDs(type); + case SHADER_TYPE_TEXTURE: + return textureCache_->GetTextureShaderCache()->DebugGetShaderIDs(type); default: return shaderManagerDX9_->DebugGetShaderIDs(type); } @@ -386,8 +386,8 @@ std::string GPU_DX9::DebugGetShaderString(std::string id, DebugShaderType type, switch (type) { case SHADER_TYPE_VERTEXLOADER: return drawEngine_.DebugGetVertexLoaderString(id, stringType); - case SHADER_TYPE_DEPAL: - return textureCache_->GetDepalShaderCache()->DebugGetShaderString(id, type, stringType); + case SHADER_TYPE_TEXTURE: + return textureCache_->GetTextureShaderCache()->DebugGetShaderString(id, type, stringType); default: return shaderManagerDX9_->DebugGetShaderString(id, type, stringType); } diff --git a/GPU/GLES/GPU_GLES.cpp b/GPU/GLES/GPU_GLES.cpp index f774e4bebd..1dd004aab8 100644 --- a/GPU/GLES/GPU_GLES.cpp +++ b/GPU/GLES/GPU_GLES.cpp @@ -453,8 +453,8 @@ std::vector GPU_GLES::DebugGetShaderIDs(DebugShaderType type) { switch (type) { case SHADER_TYPE_VERTEXLOADER: return drawEngine_.DebugGetVertexLoaderIDs(); - case SHADER_TYPE_DEPAL: - return textureCache_->GetDepalShaderCache()->DebugGetShaderIDs(type); + case SHADER_TYPE_TEXTURE: + return textureCache_->GetTextureShaderCache()->DebugGetShaderIDs(type); default: return shaderManagerGL_->DebugGetShaderIDs(type); } @@ -464,8 +464,8 @@ std::string GPU_GLES::DebugGetShaderString(std::string id, DebugShaderType type, switch (type) { case SHADER_TYPE_VERTEXLOADER: return drawEngine_.DebugGetVertexLoaderString(id, stringType); - case SHADER_TYPE_DEPAL: - return textureCache_->GetDepalShaderCache()->DebugGetShaderString(id, type, stringType); + case SHADER_TYPE_TEXTURE: + return textureCache_->GetTextureShaderCache()->DebugGetShaderString(id, type, stringType); default: return shaderManagerGL_->DebugGetShaderString(id, type, stringType); } diff --git a/GPU/GLES/TextureCacheGLES.cpp b/GPU/GLES/TextureCacheGLES.cpp index ddaad253bc..6fb19338d9 100644 --- a/GPU/GLES/TextureCacheGLES.cpp +++ b/GPU/GLES/TextureCacheGLES.cpp @@ -430,7 +430,7 @@ bool TextureCacheGLES::GetCurrentTextureDebug(GPUDebugBuffer &buffer, int level) } void TextureCacheGLES::DeviceLost() { - depalShaderCache_->DeviceLost(); + textureShaderCache_->DeviceLost(); Clear(false); draw_ = nullptr; render_ = nullptr; @@ -439,5 +439,5 @@ void TextureCacheGLES::DeviceLost() { void TextureCacheGLES::DeviceRestore(Draw::DrawContext *draw) { draw_ = draw; render_ = (GLRenderManager *)draw_->GetNativeObject(Draw::NativeObject::RENDER_MANAGER); - depalShaderCache_->DeviceRestore(draw); + textureShaderCache_->DeviceRestore(draw); } diff --git a/GPU/GLES/TextureCacheGLES.h b/GPU/GLES/TextureCacheGLES.h index b23af129f5..d192a2369a 100644 --- a/GPU/GLES/TextureCacheGLES.h +++ b/GPU/GLES/TextureCacheGLES.h @@ -42,7 +42,7 @@ public: void SetFramebufferManager(FramebufferManagerGLES *fbManager); void SetDepalShaderCache(TextureShaderCache *dpCache) { - depalShaderCache_ = dpCache; + textureShaderCache_ = dpCache; } void SetDrawEngine(DrawEngineGLES *td) { drawEngine_ = td; diff --git a/GPU/Vulkan/GPU_Vulkan.cpp b/GPU/Vulkan/GPU_Vulkan.cpp index 7d2dc8b5c0..adc0a9c127 100644 --- a/GPU/Vulkan/GPU_Vulkan.cpp +++ b/GPU/Vulkan/GPU_Vulkan.cpp @@ -604,9 +604,8 @@ std::vector GPU_Vulkan::DebugGetShaderIDs(DebugShaderType type) { return drawEngine_.DebugGetVertexLoaderIDs(); } else if (type == SHADER_TYPE_PIPELINE) { return pipelineManager_->DebugGetObjectIDs(type); - } else if (type == SHADER_TYPE_DEPAL) { - ///... - return std::vector(); + } else if (type == SHADER_TYPE_TEXTURE) { + return textureCache_->GetTextureShaderCache()->DebugGetShaderIDs(type); } else if (type == SHADER_TYPE_VERTEX || type == SHADER_TYPE_FRAGMENT) { return shaderManagerVulkan_->DebugGetShaderIDs(type); } else if (type == SHADER_TYPE_SAMPLER) { @@ -621,8 +620,8 @@ std::string GPU_Vulkan::DebugGetShaderString(std::string id, DebugShaderType typ return drawEngine_.DebugGetVertexLoaderString(id, stringType); } else if (type == SHADER_TYPE_PIPELINE) { return pipelineManager_->DebugGetObjectString(id, type, stringType); - } else if (type == SHADER_TYPE_DEPAL) { - return ""; + } else if (type == SHADER_TYPE_TEXTURE) { + return textureCache_->GetTextureShaderCache()->DebugGetShaderString(id, type, stringType); } else if (type == SHADER_TYPE_SAMPLER) { return textureCacheVulkan_->DebugGetSamplerString(id, stringType); } else if (type == SHADER_TYPE_VERTEX || type == SHADER_TYPE_FRAGMENT) { diff --git a/GPU/Vulkan/TextureCacheVulkan.cpp b/GPU/Vulkan/TextureCacheVulkan.cpp index 132c0e081a..6c15264b1f 100644 --- a/GPU/Vulkan/TextureCacheVulkan.cpp +++ b/GPU/Vulkan/TextureCacheVulkan.cpp @@ -200,7 +200,7 @@ void TextureCacheVulkan::SetFramebufferManager(FramebufferManagerVulkan *fbManag } void TextureCacheVulkan::DeviceLost() { - depalShaderCache_->DeviceLost(); + textureShaderCache_->DeviceLost(); VulkanContext *vulkan = draw_ ? (VulkanContext *)draw_->GetNativeObject(Draw::NativeObject::CONTEXT) : nullptr; @@ -227,7 +227,7 @@ void TextureCacheVulkan::DeviceRestore(Draw::DrawContext *draw) { _assert_(!allocator_); samplerCache_.DeviceRestore(vulkan); - depalShaderCache_->DeviceRestore(draw); + textureShaderCache_->DeviceRestore(draw); VkSamplerCreateInfo samp{ VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO }; samp.addressModeU = VK_SAMPLER_ADDRESS_MODE_REPEAT; @@ -320,7 +320,7 @@ void TextureCacheVulkan::StartFrame() { TextureCacheCommon::StartFrame(); InvalidateLastTexture(); - depalShaderCache_->Decimate(); + textureShaderCache_->Decimate(); timesInvalidatedAllThisFrame_ = 0; texelsScaledThisFrame_ = 0; diff --git a/UI/DevScreens.cpp b/UI/DevScreens.cpp index 1c938596ac..a804eb98f0 100644 --- a/UI/DevScreens.cpp +++ b/UI/DevScreens.cpp @@ -1151,7 +1151,7 @@ struct { DebugShaderType type; const char *name; } shaderTypes[] = { // { SHADER_TYPE_GEOMETRY, "Geometry" }, { SHADER_TYPE_VERTEXLOADER, "VertexLoader" }, { SHADER_TYPE_PIPELINE, "Pipeline" }, - { SHADER_TYPE_DEPAL, "Depal" }, + { SHADER_TYPE_TEXTURE, "Texture" }, { SHADER_TYPE_SAMPLER, "Sampler" }, };