Skip to content

Commit e5adb8a

Browse files
committed
simplify item render
don't draw item amount
1 parent 6d7016e commit e5adb8a

3 files changed

Lines changed: 20 additions & 15 deletions

File tree

src/main/java/gregtech/client/utils/RenderUtil.java

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
import com.cleanroommc.modularui.integration.jei.ModularUIJeiPlugin;
3434
import org.jetbrains.annotations.NotNull;
3535
import org.jetbrains.annotations.Nullable;
36+
import org.lwjgl.opengl.EXTFramebufferObject;
3637
import org.lwjgl.opengl.GL11;
3738
import org.lwjgl.opengl.GL30;
3839

@@ -165,7 +166,7 @@ public static void useStencil(Runnable mask, Runnable renderInMask, boolean shou
165166
public static void useLightMap(float x, float y, Runnable codeBlock) {
166167
/* hack the lightmap */
167168
GL11.glPushAttrib(GL11.GL_LIGHTING_BIT);
168-
net.minecraft.client.renderer.RenderHelper.disableStandardItemLighting();
169+
RenderHelper.disableStandardItemLighting();
169170
float lastBrightnessX = OpenGlHelper.lastBrightnessX;
170171
float lastBrightnessY = OpenGlHelper.lastBrightnessY;
171172
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, x, y);
@@ -174,7 +175,7 @@ public static void useLightMap(float x, float y, Runnable codeBlock) {
174175
}
175176
/* restore the lightmap */
176177
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, lastBrightnessX, lastBrightnessY);
177-
net.minecraft.client.renderer.RenderHelper.enableStandardItemLighting();
178+
RenderHelper.enableStandardItemLighting();
178179
GL11.glPopAttrib();
179180
}
180181

@@ -379,14 +380,14 @@ public static void renderText(float x, float y, float z, float scale, int color,
379380
}
380381

381382
public static void renderItemOverLay(float x, float y, float z, float scale, ItemStack itemStack) {
382-
net.minecraft.client.renderer.RenderHelper.enableStandardItemLighting();
383+
RenderHelper.enableStandardItemLighting();
383384
GlStateManager.pushMatrix();
384385
GlStateManager.scale(scale, scale, 0.0001f);
385386
GlStateManager.translate(x * 16, y * 16, z * 16);
386387
RenderItem renderItem = Minecraft.getMinecraft().getRenderItem();
387388
renderItem.renderItemAndEffectIntoGUI(itemStack, 0, 0);
388389
GlStateManager.popMatrix();
389-
net.minecraft.client.renderer.RenderHelper.disableStandardItemLighting();
390+
RenderHelper.disableStandardItemLighting();
390391
}
391392

392393
// adapted from com.cleanroommc.modularui.drawable.GuiDraw.java
@@ -634,10 +635,10 @@ public static void hookDepthBuffer(Framebuffer fbo, int depthBuffer) {
634635
OpenGlHelper.glBindFramebuffer(OpenGlHelper.GL_FRAMEBUFFER, fbo.framebufferObject);
635636
if (fbo.isStencilEnabled()) {
636637
OpenGlHelper.glFramebufferRenderbuffer(OpenGlHelper.GL_FRAMEBUFFER,
637-
org.lwjgl.opengl.EXTFramebufferObject.GL_DEPTH_ATTACHMENT_EXT, OpenGlHelper.GL_RENDERBUFFER,
638+
EXTFramebufferObject.GL_DEPTH_ATTACHMENT_EXT, OpenGlHelper.GL_RENDERBUFFER,
638639
depthBuffer);
639640
OpenGlHelper.glFramebufferRenderbuffer(OpenGlHelper.GL_FRAMEBUFFER,
640-
org.lwjgl.opengl.EXTFramebufferObject.GL_STENCIL_ATTACHMENT_EXT, OpenGlHelper.GL_RENDERBUFFER,
641+
EXTFramebufferObject.GL_STENCIL_ATTACHMENT_EXT, OpenGlHelper.GL_RENDERBUFFER,
641642
depthBuffer);
642643
} else {
643644
OpenGlHelper.glFramebufferRenderbuffer(OpenGlHelper.GL_FRAMEBUFFER, OpenGlHelper.GL_DEPTH_ATTACHMENT,
@@ -716,6 +717,14 @@ public void put(int element, float @NotNull... data) {
716717
return getTextureMap().getMissingSprite();
717718
}
718719

720+
@SideOnly(Side.CLIENT)
721+
public static void drawItemStack(ItemStack itemStack, int x, int y, boolean drawCount) {
722+
int cache = itemStack.getCount();
723+
if (!drawCount) itemStack.setCount(1);
724+
drawItemStack(itemStack, x, y, null);
725+
if (!drawCount) itemStack.setCount(cache);
726+
}
727+
719728
@SideOnly(Side.CLIENT)
720729
public static void drawItemStack(ItemStack itemStack, int x, int y, @Nullable String altTxt) {
721730
GlStateManager.pushMatrix();

src/main/java/gregtech/common/metatileentities/storage/MetaTileEntityQuantumChest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@
4242
import codechicken.lib.render.pipeline.ColourMultiplier;
4343
import codechicken.lib.render.pipeline.IVertexOperation;
4444
import codechicken.lib.vec.Matrix4;
45+
import com.cleanroommc.modularui.api.drawable.IDrawable;
4546
import com.cleanroommc.modularui.network.NetworkUtils;
4647
import com.cleanroommc.modularui.screen.ModularPanel;
4748
import com.cleanroommc.modularui.value.sync.PanelSyncManager;
@@ -316,10 +317,9 @@ protected void createWidgets(ModularPanel mainPanel, PanelSyncManager syncManage
316317
() -> virtualItemStack.getDisplayName(),
317318
textWidget -> !virtualItemStack.isEmpty(),
318319
() -> TextFormattingUtil.formatNumbers(itemsStoredInside)))
319-
// todo make and use GT item slot for special behavior
320320
.child(new GTItemSlot()
321321
.showTooltip(false)
322-
// todo disable tooltip
322+
.background(IDrawable.NONE)
323323
.slot(new ModularSlot(itemInventory, 0)
324324
.accessibility(false, false))
325325
.pos(148, 41));

src/main/java/gregtech/common/mui/widget/GTItemSlot.java

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import gregtech.client.utils.RenderUtil;
44

55
import net.minecraft.client.renderer.GlStateManager;
6-
import net.minecraft.client.renderer.RenderHelper;
76
import net.minecraft.inventory.Slot;
87
import net.minecraft.item.ItemStack;
98
import net.minecraftforge.items.IItemHandlerModifiable;
@@ -131,12 +130,9 @@ public void drawForeground(ModularGuiContext context) {
131130
@Override
132131
public void draw(ModularGuiContext context, WidgetTheme widgetTheme) {
133132
if (this.syncHandler == null) return;
134-
RenderHelper.enableGUIStandardItemLighting();
135-
// todo draw slot
136-
RenderUtil.drawItemStack(getSlot().getStack(), 0, 0, null);
137-
// drawSlot(getSlot());
138-
RenderHelper.enableStandardItemLighting();
139-
GlStateManager.disableLighting();
133+
134+
RenderUtil.drawItemStack(getSlot().getStack(), 1, 1, false);
135+
140136
if (isHovering()) {
141137
GlStateManager.colorMask(true, true, true, false);
142138
GuiDraw.drawRect(1, 1, 16, 16, getSlotHoverColor());

0 commit comments

Comments
 (0)