aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/objects/GT_StdRenderedTexture.java
diff options
context:
space:
mode:
authorLéa Gris <lea.gris@noiraude.net>2021-02-16 17:30:31 +0100
committerLéa Gris <lea.gris@noiraude.net>2021-02-16 21:35:44 +0100
commitb05f9e268a4b318f1af10cddc2dab7ee507dcef0 (patch)
treea242d60bec6861b7c61f9c7fe047fda7ad0eb610 /src/main/java/gregtech/api/objects/GT_StdRenderedTexture.java
parent7203229d417f72036f0fdbaf54390d02c6d0dd1d (diff)
downloadGT5-Unofficial-b05f9e268a4b318f1af10cddc2dab7ee507dcef0.tar.gz
GT5-Unofficial-b05f9e268a4b318f1af10cddc2dab7ee507dcef0.tar.bz2
GT5-Unofficial-b05f9e268a4b318f1af10cddc2dab7ee507dcef0.zip
feat(render): tile ambient occlusion
Render smooth lighting ambient occlusion on all Gregtech tiles: - Ores - Machines - Pipes, Cables, Wires, Frames Add new Client-side configuration entry in Gregtech.cfg. If false, the flat lighting rendering of older versions is used. ```yml render { B:TileAmbientOcclusion_true=true } ```
Diffstat (limited to 'src/main/java/gregtech/api/objects/GT_StdRenderedTexture.java')
-rw-r--r--src/main/java/gregtech/api/objects/GT_StdRenderedTexture.java10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/main/java/gregtech/api/objects/GT_StdRenderedTexture.java b/src/main/java/gregtech/api/objects/GT_StdRenderedTexture.java
index db475c9561..041fed4164 100644
--- a/src/main/java/gregtech/api/objects/GT_StdRenderedTexture.java
+++ b/src/main/java/gregtech/api/objects/GT_StdRenderedTexture.java
@@ -2,9 +2,10 @@ package gregtech.api.objects;
import gregtech.api.enums.Dyes;
import gregtech.api.interfaces.IIconContainer;
+import gregtech.api.util.LightingHelper;
import net.minecraft.block.Block;
import net.minecraft.client.renderer.RenderBlocks;
-import net.minecraft.client.renderer.Tessellator;
+import net.minecraftforge.common.util.ForgeDirection;
/**
* This ITexture implementation extends the GT_RenderedTexture class
@@ -30,11 +31,12 @@ public class GT_StdRenderedTexture extends GT_RenderedTexture{
@Override
public void renderYNeg(RenderBlocks aRenderer, Block aBlock, int aX, int aY, int aZ) {
- final Tessellator tessellator = Tessellator.instance;
- tessellator.setColorRGBA((int) (mRGBa[0] * 0.5F), (int) (mRGBa[1] * 0.5F), (int) (mRGBa[2] * 0.5F), mAllowAlpha ? 255 - mRGBa[3] : 255);
+ LightingHelper lighting = new LightingHelper(aRenderer);
+ lighting.setupLightingYNeg(aBlock, aX, aY, aZ)
+ .setupColor(ForgeDirection.DOWN.ordinal(), mRGBa);
aRenderer.renderFaceYNeg(aBlock, aX, aY, aZ, mIconContainer.getIcon());
if (mIconContainer.getOverlayIcon() != null) {
- tessellator.setColorRGBA(128, 128, 128, 255);
+ lighting.setupColor(ForgeDirection.DOWN.ordinal(), 0xffffff);
aRenderer.renderFaceYNeg(aBlock, aX, aY, aZ, mIconContainer.getOverlayIcon());
}
}