diff --git a/GPU/Common/GPUStateUtils.cpp b/GPU/Common/GPUStateUtils.cpp index 4cce911b59..af88e77532 100644 --- a/GPU/Common/GPUStateUtils.cpp +++ b/GPU/Common/GPUStateUtils.cpp @@ -1514,6 +1514,14 @@ void ConvertStencilFuncState(GenericStencilFuncState &state) { } } +void GenericMaskState::Log() { + WARN_LOG(G3D, "Mask: %01X readfb=%d", uniformMask, channelMask, applyFramebufferRead); +} + +void GenericBlendState::Log() { + WARN_LOG(G3D, "Blend: hwenable=%d readfb=%d replblend=%d replalpha=%d", blendEnabled, applyFramebufferRead, replaceBlend, (int)replaceAlphaWithStencil); +} + void ComputedPipelineState::Convert(bool shaderBitOpsSuppported) { ConvertMaskState(maskState, shaderBitOpsSuppported); ConvertBlendState(blendState, maskState.applyFramebufferRead); diff --git a/GPU/Common/GPUStateUtils.h b/GPU/Common/GPUStateUtils.h index 2d9fa62fae..529e81cf87 100644 --- a/GPU/Common/GPUStateUtils.h +++ b/GPU/Common/GPUStateUtils.h @@ -180,6 +180,8 @@ struct GenericBlendState { blendColor = 0xFFFFFF | ((uint32_t)alpha << 24); useBlendColor = true; } + + void Log(); }; void ConvertBlendState(GenericBlendState &blendState, bool forceReplaceBlend); @@ -198,6 +200,8 @@ struct GenericMaskState { channelMask = 0xF; applyFramebufferRead = true; } + + void Log(); }; void ConvertMaskState(GenericMaskState &maskState, bool shaderBitOpsSupported); diff --git a/GPU/Vulkan/StateMappingVulkan.cpp b/GPU/Vulkan/StateMappingVulkan.cpp index 781b0c990a..8532e8339c 100644 --- a/GPU/Vulkan/StateMappingVulkan.cpp +++ b/GPU/Vulkan/StateMappingVulkan.cpp @@ -364,7 +364,8 @@ void DrawEngineVulkan::BindShaderBlendTex() { // Set the nearest/linear here (since we correctly know if alpha/color tests are needed)? if (!gstate.isModeClear()) { if (fboTexNeedsBind_) { - framebufferManager_->BindFramebufferAsColorTexture(1, framebufferManager_->GetCurrentRenderVFB(), BINDFBCOLOR_MAY_COPY); + bool bindResult = framebufferManager_->BindFramebufferAsColorTexture(1, framebufferManager_->GetCurrentRenderVFB(), BINDFBCOLOR_MAY_COPY); + _dbg_assert_(bindResult); boundSecondary_ = (VkImageView)draw_->GetNativeObject(Draw::NativeObject::BOUND_TEXTURE1_IMAGEVIEW); fboTexBound_ = true; fboTexNeedsBind_ = false;