aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLéa Gris <lea.gris@noiraude.net>2021-03-03 19:55:11 +0100
committerLéa Gris <lea.gris@noiraude.net>2021-03-03 19:55:11 +0100
commitc684b3830bf6eaa96e2abf2f0b9d4895f9afe764 (patch)
tree39fcfe403fe65f539b42e7a781e21e9ae3027ed0
parent437d41dfd788584d0d9afab8565a5de96957cd34 (diff)
downloadGT5-Unofficial-c684b3830bf6eaa96e2abf2f0b9d4895f9afe764.tar.gz
GT5-Unofficial-c684b3830bf6eaa96e2abf2f0b9d4895f9afe764.tar.bz2
GT5-Unofficial-c684b3830bf6eaa96e2abf2f0b9d4895f9afe764.zip
quickfix(ao): reset ao state after rendering tileblock
Reset RenderBlock.enableAO to false after rendering Gregtech tile blocks. Minecraft makes assumption that enableAO is false when it renders a lower door panel. Leaving enableAO to true in the RenderBlock instance after rendering gregtech tile blocks caused lower door panels to randomply pick some remanent ambient occlusion colour values it should not.
-rw-r--r--src/main/java/gregtech/common/render/GT_Renderer_Block.java13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/main/java/gregtech/common/render/GT_Renderer_Block.java b/src/main/java/gregtech/common/render/GT_Renderer_Block.java
index 6cb161fcb8..5265be43e1 100644
--- a/src/main/java/gregtech/common/render/GT_Renderer_Block.java
+++ b/src/main/java/gregtech/common/render/GT_Renderer_Block.java
@@ -558,13 +558,20 @@ public class GT_Renderer_Block implements ISimpleBlockRenderingHandler {
IMetaTileEntity metaTileEntity;
if ((metaTileEntity = ((IGregTechTileEntity) tileEntity).getMetaTileEntity()) != null &&
metaTileEntity.renderInWorld(aWorld, aX, aY, aZ, aBlock, aRenderer)) {
+ aRenderer.enableAO = false;
return true;
}
}
- if ((tileEntity instanceof IPipeRenderedTileEntity)) {
- return renderPipeBlock(aWorld, aX, aY, aZ, aBlock, (IPipeRenderedTileEntity) tileEntity, aRenderer);
+ if (tileEntity instanceof IPipeRenderedTileEntity &&
+ renderPipeBlock(aWorld, aX, aY, aZ, aBlock, (IPipeRenderedTileEntity) tileEntity, aRenderer)) {
+ aRenderer.enableAO = false;
+ return true;
}
- return renderStandardBlock(aWorld, aX, aY, aZ, aBlock, aRenderer);
+ if (renderStandardBlock(aWorld, aX, aY, aZ, aBlock, aRenderer)) {
+ aRenderer.enableAO = false;
+ return true;
+ }
+ return false;
}
public boolean shouldRender3DInInventory(int aModel) {