From ae28360b4a24ee6654cb54d836b03a604601df2c Mon Sep 17 00:00:00 2001 From: RandomityGuy <31925790+RandomityGuy@users.noreply.github.com> Date: Fri, 28 Jun 2024 23:28:39 +0530 Subject: [PATCH] fix gmod render --- src/InstanceManager.hx | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/InstanceManager.hx b/src/InstanceManager.hx index 66a92296..6e7fc595 100644 --- a/src/InstanceManager.hx +++ b/src/InstanceManager.hx @@ -160,18 +160,23 @@ class InstanceManager { for (instance in opaqueinstances) { // Draw the opaque shit first // minfo.meshbatch.material.mainPass.getShader(DtsTexture); var subOpacity = 1.0; + var noDraw = false; for (dtsShader in minfo.dtsShaders) { if (dtsShader != null) { if (instance.gameObject.animateSubObjectOpacities) { subOpacity = instance.gameObject.getSubObjectOpacity(instance.emptyObj); - if (subOpacity == 0) - continue; // Do not draw + if (subOpacity == 0) { + noDraw = true; + break; + } // minfo.meshbatch.shadersChanged = true; } dtsShader.currentOpacity = instance.gameObject.currentOpacity * subOpacity; } } + if (noDraw) + continue; var transform = instance.emptyObj.getAbsPos(); // minfo.meshbatch.material.mainPass.depthWrite = minfo.mesh.material.mainPass.depthWrite; // minfo.meshbatch.material.mainPass.depthTest = minfo.mesh.material.mainPass.depthTest;