diff --git a/GPU/GLES/TransformPipeline.cpp b/GPU/GLES/TransformPipeline.cpp index 86a4dcc0c5..afb2aa39ff 100644 --- a/GPU/GLES/TransformPipeline.cpp +++ b/GPU/GLES/TransformPipeline.cpp @@ -539,6 +539,10 @@ void TransformDrawEngine::DoFlush() { if (g_Config.bSoftwareSkinning && (lastVType_ & GE_VTYPE_WEIGHT_MASK)) useCache = false; + // Also avoid caching when HW T&L with morph enabled. + if (g_Config.bHardwareTransform && !(lastVType_ & GE_VTYPE_MORPHCOUNT_MASK)) + useCache = false; + if (useCache) { u32 id = ComputeFastDCID(); auto iter = vai_.find(id);