From 62643ffb9fb968f8348f24efb66250a4643b36d8 Mon Sep 17 00:00:00 2001 From: raoulvdberge Date: Fri, 20 Dec 2019 00:03:26 +0100 Subject: [PATCH] Get it to run. --- .../apiimpl/network/grid/GridTab.java | 2 +- .../refinedstorage/render/FluidRenderer.java | 10 +++--- .../render/model/DiskDriveBakedModel.java | 12 +++---- .../model/DiskManipulatorBakedModel.java | 14 ++++---- .../render/model/FullbrightBakedModel.java | 2 +- .../render/model/TRSRBakedModel.java | 33 +++++++++---------- .../tesr/PatternItemStackTileRenderer.java | 4 +-- .../tesr/StorageMonitorTileRenderer.java | 15 +++++++-- .../screen/ControllerScreen.java | 2 +- .../screen/CraftingMonitorScreen.java | 4 +-- .../screen/grid/AlternativesScreen.java | 3 +- .../screen/grid/CraftingPreviewScreen.java | 4 +-- .../screen/grid/GridScreen.java | 2 +- .../refinedstorage/util/RenderUtils.java | 26 +++++++++------ 14 files changed, 75 insertions(+), 58 deletions(-) diff --git a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/grid/GridTab.java b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/grid/GridTab.java index 37b32a61a..8a04ba2bb 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/grid/GridTab.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/network/grid/GridTab.java @@ -46,7 +46,7 @@ public class GridTab implements IGridTab { @Override public void drawIcon(int x, int y, IElementDrawer itemDrawer, IElementDrawer fluidDrawer) { if (!icon.isEmpty()) { - RenderHelper.enableGUIStandardItemLighting(); + RenderSystem.setupGuiFlatDiffuseLighting(); itemDrawer.draw(x, y, icon); } else { diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/FluidRenderer.java b/src/main/java/com/raoulvdberge/refinedstorage/render/FluidRenderer.java index 216a1e6d2..f1aa8413e 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/FluidRenderer.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/FluidRenderer.java @@ -2,6 +2,7 @@ package com.raoulvdberge.refinedstorage.render; import com.mojang.blaze3d.platform.GlStateManager; import com.mojang.blaze3d.systems.RenderSystem; +import net.minecraft.block.material.Material; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.BufferBuilder; import net.minecraft.client.renderer.Tessellator; @@ -11,6 +12,7 @@ import net.minecraft.client.renderer.vertex.DefaultVertexFormats; import net.minecraft.fluid.Fluid; import net.minecraft.inventory.container.PlayerContainer; import net.minecraft.util.ResourceLocation; +import net.minecraftforge.client.ForgeHooksClient; import net.minecraftforge.fluids.FluidAttributes; import net.minecraftforge.fluids.FluidStack; @@ -102,12 +104,10 @@ public class FluidRenderer { } private static TextureAtlasSprite getStillFluidSprite(FluidStack fluidStack) { - Minecraft minecraft = Minecraft.getInstance(); - AtlasTexture textureMapBlocks = minecraft.getTextureMap(); Fluid fluid = fluidStack.getFluid(); FluidAttributes attributes = fluid.getAttributes(); ResourceLocation fluidStill = attributes.getStillTexture(fluidStack); - return textureMapBlocks.getSprite(fluidStill); + return Minecraft.getInstance().func_228015_a_(PlayerContainer.field_226615_c_).apply(fluidStill); } private static void setGLColorFromInt(int color) { @@ -130,10 +130,10 @@ public class FluidRenderer { Tessellator tessellator = Tessellator.getInstance(); BufferBuilder bufferBuilder = tessellator.getBuffer(); bufferBuilder.begin(7, DefaultVertexFormats.POSITION_TEX); - bufferBuilder.func_225582_a_(xCoord, yCoord + 16, zLevel).tex(uMin, vMax).endVertex(); + /* TODO bufferBuilder.func_225582_a_(xCoord, yCoord + 16, zLevel).tex(uMin, vMax).endVertex(); bufferBuilder.func_225582_a_(xCoord + 16 - maskRight, yCoord + 16, zLevel).tex(uMax, vMax).endVertex(); bufferBuilder.func_225582_a_(xCoord + 16 - maskRight, yCoord + maskTop, zLevel).tex(uMax, vMin).endVertex(); - bufferBuilder.func_225582_a_(xCoord, yCoord + maskTop, zLevel).tex(uMin, vMin).endVertex(); + bufferBuilder.func_225582_a_(xCoord, yCoord + maskTop, zLevel).tex(uMin, vMin).endVertex();*/ tessellator.draw(); } } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/model/DiskDriveBakedModel.java b/src/main/java/com/raoulvdberge/refinedstorage/render/model/DiskDriveBakedModel.java index fa8812d06..3360de644 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/model/DiskDriveBakedModel.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/model/DiskDriveBakedModel.java @@ -7,14 +7,14 @@ import com.raoulvdberge.refinedstorage.RSBlocks; import com.raoulvdberge.refinedstorage.apiimpl.network.node.DiskState; import com.raoulvdberge.refinedstorage.tile.DiskDriveTile; import net.minecraft.block.BlockState; +import net.minecraft.client.renderer.TransformationMatrix; +import net.minecraft.client.renderer.Vector3f; import net.minecraft.client.renderer.model.BakedQuad; import net.minecraft.client.renderer.model.IBakedModel; import net.minecraft.util.Direction; import net.minecraftforge.client.model.data.IModelData; -import net.minecraftforge.common.model.TRSRTransformation; import javax.annotation.Nullable; -import javax.vecmath.Vector3f; import java.util.*; public class DiskDriveBakedModel extends DelegateBakedModel { @@ -117,14 +117,14 @@ public class DiskDriveBakedModel extends DelegateBakedModel { Vector3f trans = model.transformation.getTranslation(); if (facing == Direction.NORTH || facing == Direction.SOUTH) { - trans.x += ((2F / 16F) + ((float) x * 7F) / 16F) * (facing == Direction.NORTH ? -1 : 1); + trans.add(((2F / 16F) + ((float) x * 7F) / 16F) * (facing == Direction.NORTH ? -1 : 1), 0, 0); // Add to X } else if (facing == Direction.EAST || facing == Direction.WEST) { - trans.z += ((2F / 16F) + ((float) x * 7F) / 16F) * (facing == Direction.EAST ? -1 : 1); + trans.add(0, 0, ((2F / 16F) + ((float) x * 7F) / 16F) * (facing == Direction.EAST ? -1 : 1)); // Add to Y } - trans.y -= (2F / 16F) + ((float) y * 3F) / 16F; + trans.add(0, -((2F / 16F) + ((float) y * 3F) / 16F), 0); // Remove from Y - model.transformation = new TRSRTransformation(trans, model.transformation.getLeftRot(), model.transformation.getScale(), model.transformation.getRightRot()); + model.transformation = new TransformationMatrix(trans, model.transformation.func_227989_d_(), model.transformation.getScale(), model.transformation.getRightRot()); disksByFacing.get(facing).get(type).add(model); } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/model/DiskManipulatorBakedModel.java b/src/main/java/com/raoulvdberge/refinedstorage/render/model/DiskManipulatorBakedModel.java index 08fd72c9f..87cd6c94c 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/model/DiskManipulatorBakedModel.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/model/DiskManipulatorBakedModel.java @@ -8,14 +8,14 @@ import com.raoulvdberge.refinedstorage.apiimpl.network.node.DiskState; import com.raoulvdberge.refinedstorage.block.DiskManipulatorBlock; import com.raoulvdberge.refinedstorage.tile.DiskManipulatorTile; import net.minecraft.block.BlockState; +import net.minecraft.client.renderer.TransformationMatrix; +import net.minecraft.client.renderer.Vector3f; import net.minecraft.client.renderer.model.BakedQuad; import net.minecraft.client.renderer.model.IBakedModel; import net.minecraft.util.Direction; import net.minecraftforge.client.model.data.IModelData; -import net.minecraftforge.common.model.TRSRTransformation; import javax.annotation.Nullable; -import javax.vecmath.Vector3f; import java.util.*; public class DiskManipulatorBakedModel extends DelegateBakedModel { @@ -124,14 +124,14 @@ public class DiskManipulatorBakedModel extends DelegateBakedModel { Vector3f trans = model.transformation.getTranslation(); if (facing == Direction.NORTH || facing == Direction.SOUTH) { - trans.x += (2F / 16F + ((float) x * 7F) / 16F) * (facing == Direction.NORTH ? -1 : 1); + trans.add((2F / 16F + ((float) x * 7F) / 16F) * (facing == Direction.NORTH ? -1 : 1), 0, 0); // Add to X } else if (facing == Direction.EAST || facing == Direction.WEST) { - trans.z += (2F / 16F + ((float) x * 7F) / 16F) * (facing == Direction.EAST ? -1 : 1); + trans.add(0, 0, (2F / 16F + ((float) x * 7F) / 16F) * (facing == Direction.EAST ? -1 : 1)); // Add to Z } - trans.y -= (6F / 16F) + (3F * y) / 16F; - - model.transformation = new TRSRTransformation(trans, model.transformation.getLeftRot(), model.transformation.getScale(), model.transformation.getRightRot()); + trans.add(0, -((6F / 16F) + (3F * y) / 16F), 0); // Remove from Y + + model.transformation = new TransformationMatrix(trans, model.transformation.func_227989_d_(), model.transformation.getScale(), model.transformation.getRightRot()); disks.get(facing).get(type).add(model); } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/model/FullbrightBakedModel.java b/src/main/java/com/raoulvdberge/refinedstorage/render/model/FullbrightBakedModel.java index ca21a4015..ca91136d4 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/model/FullbrightBakedModel.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/model/FullbrightBakedModel.java @@ -94,7 +94,7 @@ public class FullbrightBakedModel extends DelegateBakedModel { trans.setParent(builder); - quad.pipe(trans); + // TODO quad.pipe(trans); builder.setQuadTint(quad.getTintIndex()); builder.setQuadOrientation(quad.getFace()); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/model/TRSRBakedModel.java b/src/main/java/com/raoulvdberge/refinedstorage/render/model/TRSRBakedModel.java index eaa85363d..c989a005a 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/model/TRSRBakedModel.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/model/TRSRBakedModel.java @@ -3,6 +3,7 @@ package com.raoulvdberge.refinedstorage.render.model; import com.google.common.collect.ImmutableList; import com.mojang.blaze3d.matrix.MatrixStack; import net.minecraft.block.BlockState; +import net.minecraft.client.renderer.*; import net.minecraft.client.renderer.model.BakedQuad; import net.minecraft.client.renderer.model.IBakedModel; import net.minecraft.client.renderer.model.ItemCameraTransforms; @@ -13,13 +14,9 @@ import net.minecraft.client.renderer.vertex.VertexFormatElement; import net.minecraft.util.Direction; import net.minecraftforge.client.model.pipeline.UnpackedBakedQuad; import net.minecraftforge.client.model.pipeline.VertexTransformer; -import net.minecraftforge.common.model.TRSRTransformation; +import net.minecraftforge.common.model.TransformationHelper; import javax.annotation.Nonnull; -import javax.vecmath.Matrix3f; -import javax.vecmath.Matrix4f; -import javax.vecmath.Vector3f; -import javax.vecmath.Vector4f; import java.util.List; import java.util.Random; @@ -29,7 +26,7 @@ import java.util.Random; // for those wondering TRSR stands for Translation Rotation Scale Rotation public class TRSRBakedModel implements IBakedModel { protected final IBakedModel original; - protected MatrixStack transformation; + protected TransformationMatrix transformation; private final int faceOffset; public TRSRBakedModel(IBakedModel original, float x, float y, float z, float scale) { @@ -41,15 +38,15 @@ public class TRSRBakedModel implements IBakedModel { } public TRSRBakedModel(IBakedModel original, float x, float y, float z, float rotX, float rotY, float rotZ, float scaleX, float scaleY, float scaleZ) { - this(original, new MatrixStack(new Vector3f(x, y, z), + this(original, new TransformationMatrix(new Vector3f(x, y, z), null, new Vector3f(scaleX, scaleY, scaleZ), - TRSRTransformation.quatFromXYZ(rotX, rotY, rotZ))); + TransformationHelper.quatFromXYZ(new Vector3f(rotX, rotY, rotZ), false))); } - public TRSRBakedModel(IBakedModel original, TRSRTransformation transform) { + public TRSRBakedModel(IBakedModel original, TransformationMatrix transform) { this.original = original; - this.transformation = TRSRTransformation.blockCenterToCorner(transform); + this.transformation = TransformationHelper.blockCenterToCorner(transform); this.faceOffset = 0; } @@ -62,8 +59,8 @@ public class TRSRBakedModel implements IBakedModel { this.faceOffset = 4 + Direction.NORTH.getHorizontalIndex() - facing.getHorizontalIndex(); double r = Math.PI * (360 - facing.getOpposite().getHorizontalIndex() * 90) / 180d; - TRSRTransformation t = new TRSRTransformation(null, null, null, TRSRTransformation.quatFromXYZ(0, (float) r, 0)); - this.transformation = TRSRTransformation.blockCenterToCorner(t); + TransformationMatrix t = new TransformationMatrix(null, null, null, TransformationHelper.quatFromXYZ(new Vector3f(0, (float) r, 0), false)); + this.transformation = TransformationHelper.blockCenterToCorner(t); } @Nonnull @@ -82,7 +79,7 @@ public class TRSRBakedModel implements IBakedModel { } for (BakedQuad quad : original.getQuads(state, side, rand)) { Transformer transformer = new Transformer(transformation, quad.getFormat()); - quad.pipe(transformer); + // TODO quad.pipe(transformer); builder.add(transformer.build()); } } catch (Exception e) { @@ -132,19 +129,21 @@ public class TRSRBakedModel implements IBakedModel { protected Matrix4f transformation; protected Matrix3f normalTransformation; - public Transformer(TRSRTransformation transformation, VertexFormat format) { + public Transformer(TransformationMatrix transformation, VertexFormat format) { super(new UnpackedBakedQuad.Builder(format)); + /* TODO // position transform - this.transformation = transformation.getMatrixVec(); + this.transformation = transformation.func_227988_c_(); // normal transform this.normalTransformation = new Matrix3f(); this.transformation.getRotationScale(this.normalTransformation); this.normalTransformation.invert(); - this.normalTransformation.transpose(); + this.normalTransformation.transpose();*/ } @Override public void put(int element, float... data) { + /* TODO VertexFormatElement.Usage usage = parent.getVertexFormat().getElement(element).getUsage(); // transform normals and position @@ -159,7 +158,7 @@ public class TRSRBakedModel implements IBakedModel { vec.normalize(); data = new float[4]; vec.get(data); - } + }*/ super.put(element, data); } diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/tesr/PatternItemStackTileRenderer.java b/src/main/java/com/raoulvdberge/refinedstorage/render/tesr/PatternItemStackTileRenderer.java index 77ab19981..0dca58cb5 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/tesr/PatternItemStackTileRenderer.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/tesr/PatternItemStackTileRenderer.java @@ -6,12 +6,12 @@ import net.minecraft.client.renderer.tileentity.ItemStackTileEntityRenderer; import net.minecraft.item.ItemStack; public class PatternItemStackTileRenderer extends ItemStackTileEntityRenderer { - @Override + /* TODO @Override public void renderByItem(ItemStack stack) { CraftingPattern pattern = PatternItem.fromCache(null, stack); ItemStack outputStack = pattern.getOutputs().get(0); outputStack.getItem().getTileEntityItemStackRenderer().renderByItem(outputStack); - } + }*/ } \ No newline at end of file diff --git a/src/main/java/com/raoulvdberge/refinedstorage/render/tesr/StorageMonitorTileRenderer.java b/src/main/java/com/raoulvdberge/refinedstorage/render/tesr/StorageMonitorTileRenderer.java index ba6b5e9c3..e6ab1323d 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/render/tesr/StorageMonitorTileRenderer.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/render/tesr/StorageMonitorTileRenderer.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.render.tesr; +import com.mojang.blaze3d.matrix.MatrixStack; import com.mojang.blaze3d.platform.GlStateManager; import com.mojang.blaze3d.systems.RenderSystem; import com.raoulvdberge.refinedstorage.RSBlocks; @@ -8,19 +9,24 @@ import com.raoulvdberge.refinedstorage.block.StorageMonitorBlock; import com.raoulvdberge.refinedstorage.tile.StorageMonitorTile; import net.minecraft.block.BlockState; import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.IRenderTypeBuffer; import net.minecraft.client.renderer.model.IBakedModel; import net.minecraft.client.renderer.model.ItemCameraTransforms; import net.minecraft.client.renderer.texture.AtlasTexture; import net.minecraft.client.renderer.tileentity.TileEntityRenderer; +import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher; import net.minecraft.util.Direction; import net.minecraftforge.client.ForgeHooksClient; import org.lwjgl.opengl.GL11; public class StorageMonitorTileRenderer extends TileEntityRenderer { - @Override + public StorageMonitorTileRenderer(TileEntityRendererDispatcher p_i226006_1_) { + super(p_i226006_1_); + } + /* TODO @Override @SuppressWarnings("deprecation") public void render(StorageMonitorTile tile, double x, double y, double z, float partialTicks, int destroyStage) { - setLightmapDisabled(true); + setLightmapDisabled(true); float disX = 0, disXText = 0; float disY = 0.5F, disYText = 0.23F; @@ -137,5 +143,10 @@ public class StorageMonitorTileRenderer extends TileEntityRenderer { int slot = scrollbar.getOffset() * 2; - RenderHelper.enableGUIStandardItemLighting(); + RenderSystem.setupGuiFlatDiffuseLighting(); List nodes = ControllerTile.NODES.getValue(); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/screen/CraftingMonitorScreen.java b/src/main/java/com/raoulvdberge/refinedstorage/screen/CraftingMonitorScreen.java index 93a69c626..d860bafdf 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/screen/CraftingMonitorScreen.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/screen/CraftingMonitorScreen.java @@ -77,7 +77,7 @@ public class CraftingMonitorScreen extends BaseScreen @Override public void drawIcon(int x, int y, IElementDrawer itemDrawer, IElementDrawer fluidDrawer) { if (requested.getItem() != null) { - RenderHelper.enableGUIStandardItemLighting(); + RenderSystem.setupGuiFlatDiffuseLighting(); itemDrawer.draw(x, y, requested.getItem()); } else { @@ -255,7 +255,7 @@ public class CraftingMonitorScreen extends BaseScreen int item = scrollbar != null ? scrollbar.getOffset() * 3 : 0; - RenderHelper.enableGUIStandardItemLighting(); + RenderSystem.setupGuiFlatDiffuseLighting(); int x = 7; int y = 20; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/screen/grid/AlternativesScreen.java b/src/main/java/com/raoulvdberge/refinedstorage/screen/grid/AlternativesScreen.java index 22ecea7a9..9988a6d45 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/screen/grid/AlternativesScreen.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/screen/grid/AlternativesScreen.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.screen.grid; +import com.mojang.blaze3d.systems.RenderSystem; import com.raoulvdberge.refinedstorage.RS; import com.raoulvdberge.refinedstorage.container.AlternativesContainer; import com.raoulvdberge.refinedstorage.render.FluidRenderer; @@ -167,7 +168,7 @@ public class AlternativesScreen extends BaseScreen { int x = 8; int y = 20; - RenderHelper.enableGUIStandardItemLighting(); + RenderSystem.setupGuiFlatDiffuseLighting(); for (int i = 0; i < lines.size(); ++i) { boolean visible = i >= scrollbar.getOffset() && i < scrollbar.getOffset() + getVisibleRows(); diff --git a/src/main/java/com/raoulvdberge/refinedstorage/screen/grid/CraftingPreviewScreen.java b/src/main/java/com/raoulvdberge/refinedstorage/screen/grid/CraftingPreviewScreen.java index 9564ff334..5429e335d 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/screen/grid/CraftingPreviewScreen.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/screen/grid/CraftingPreviewScreen.java @@ -142,7 +142,7 @@ public class CraftingPreviewScreen extends BaseScreen { renderString(RenderUtils.getOffsetOnScale(x + 25, scale), RenderUtils.getOffsetOnScale(yy + 6, scale), output.getDisplayName().getFormattedText()); RenderSystem.popMatrix(); - RenderHelper.enableGUIStandardItemLighting(); + RenderSystem.setupGuiFlatDiffuseLighting(); RenderSystem.enableDepthTest(); renderItem(x + 5, yy, output); RenderHelper.disableStandardItemLighting(); @@ -165,7 +165,7 @@ public class CraftingPreviewScreen extends BaseScreen { } else { int slot = scrollbar != null ? (scrollbar.getOffset() * 3) : 0; - RenderHelper.enableGUIStandardItemLighting(); + RenderSystem.setupGuiFlatDiffuseLighting(); RenderSystem.enableDepthTest(); this.hoveringStack = null; diff --git a/src/main/java/com/raoulvdberge/refinedstorage/screen/grid/GridScreen.java b/src/main/java/com/raoulvdberge/refinedstorage/screen/grid/GridScreen.java index 650a8bcce..a1f5a8844 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/screen/grid/GridScreen.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/screen/grid/GridScreen.java @@ -351,7 +351,7 @@ public class GridScreen extends BaseScreen implements IScreenInfo int slot = scrollbar != null ? (scrollbar.getOffset() * 9) : 0; - RenderHelper.enableGUIStandardItemLighting(); + RenderSystem.setupGuiFlatDiffuseLighting(); for (int i = 0; i < 9 * getVisibleRows(); ++i) { if (RenderUtils.inBounds(x, y, 16, 16, mouseX, mouseY) || !grid.isActive()) { diff --git a/src/main/java/com/raoulvdberge/refinedstorage/util/RenderUtils.java b/src/main/java/com/raoulvdberge/refinedstorage/util/RenderUtils.java index 2152965bc..fea2e26c0 100644 --- a/src/main/java/com/raoulvdberge/refinedstorage/util/RenderUtils.java +++ b/src/main/java/com/raoulvdberge/refinedstorage/util/RenderUtils.java @@ -1,5 +1,6 @@ package com.raoulvdberge.refinedstorage.util; +import com.google.common.collect.ImmutableList; import com.google.common.collect.Lists; import com.mojang.blaze3d.systems.RenderSystem; import com.raoulvdberge.refinedstorage.api.util.IComparer; @@ -10,6 +11,7 @@ import net.minecraft.client.gui.FontRenderer; import net.minecraft.client.renderer.RenderHelper; import net.minecraft.client.renderer.vertex.DefaultVertexFormats; import net.minecraft.client.renderer.vertex.VertexFormat; +import net.minecraft.client.renderer.vertex.VertexFormatElement; import net.minecraft.client.util.ITooltipFlag; import net.minecraft.item.ItemStack; import net.minecraft.util.text.ITextComponent; @@ -22,12 +24,13 @@ import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.fml.client.config.GuiUtils; import javax.annotation.Nonnull; +import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; public final class RenderUtils { - private static final VertexFormat ITEM_FORMAT_WITH_LIGHTMAP = new VertexFormat(DefaultVertexFormats.ITEM).addElement(DefaultVertexFormats.TEX_2S); + private static final VertexFormat ITEM_FORMAT_WITH_LIGHTMAP = addTex2sToVertexFormat(DefaultVertexFormats.field_227849_i_); // TODO Is this item? public static String shorten(String text, int length) { if (text.length() > length) { @@ -223,7 +226,7 @@ public final class RenderUtils { RenderSystem.enableLighting(); RenderSystem.enableDepthTest(); - RenderHelper.enableStandardItemLighting(); + RenderSystem.setupGuiFlatDiffuseLighting(); RenderSystem.enableRescaleNormal(); } } @@ -241,7 +244,8 @@ public final class RenderUtils { } public static boolean isLightMapDisabled() { - return !ForgeConfig.CLIENT.forgeLightPipelineEnabled.get(); + // TODO return !ForgeConfig.CLIENT.forgeLightPipelineEnabled.get(); + return true; } public static VertexFormat getFormatWithLightMap(VertexFormat format) { @@ -251,19 +255,21 @@ public final class RenderUtils { if (format == DefaultVertexFormats.BLOCK) { return DefaultVertexFormats.BLOCK; - } else if (format == DefaultVertexFormats.ITEM) { + } else if (format == DefaultVertexFormats.field_227849_i_) { // TODO Is this item? return ITEM_FORMAT_WITH_LIGHTMAP; - } else if (!format.hasUv(1)) { - VertexFormat result = new VertexFormat(format); - - result.addElement(DefaultVertexFormats.TEX_2S); - - return result; + } else if (!format.hasUV(1)) { + return addTex2sToVertexFormat(format); } return format; } + private static VertexFormat addTex2sToVertexFormat(VertexFormat format) { + List elems = new ArrayList<>(format.func_227894_c_()); + elems.add(DefaultVertexFormats.TEX_2S); + return new VertexFormat(ImmutableList.copyOf(elems)); + } + public static boolean inBounds(int x, int y, int w, int h, double ox, double oy) { return ox >= x && ox <= x + w && oy >= y && oy <= y + h; }