Posted June 27, 201312 yr Hi everybody, i've completed the "Custom 2D Inventory Renderer" Tutorial on this site and changed the code for my approach which means i draw a coloured rectangle on a icon. This works fine... in the inventory. So I tried to add this: @Override public boolean handleRenderType(ItemStack item, ItemRenderType type) { return type == ItemRenderType.INVENTORY || type == ItemRenderType.ENTITY || type == ItemRenderType.EQUIPPED; } But this doesn't work, on the ground it doesn't render and equipped it draws it in front of the player's nose. Can you give me a hint to solve this problem? Thank you, Turakar btw here's my complete IItemRenderer: package mods.CrazyChem.src.turakar.sided.client.render; import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.entity.RenderItem; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.Icon; import net.minecraftforge.client.IItemRenderer; import org.lwjgl.opengl.GL11; public class ItemTestTubeColorRenderer implements IItemRenderer { private static final RenderItem renderItem = new RenderItem(); @Override public boolean handleRenderType(ItemStack item, ItemRenderType type) { return type == ItemRenderType.INVENTORY; } @Override public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) { return false; } @Override public void renderItem(ItemRenderType type, ItemStack is, Object... data) { NBTTagCompound iData = is.getTagCompound(); Icon icon = is.getIconIndex(); renderItem.renderIcon(0, 0, icon, 16, 16); GL11.glDisable(GL11.GL_TEXTURE_2D); GL11.glEnable(GL11.GL_BLEND); GL11.glDepthMask(false); GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); int r = 0, g = 0, b = 0, a = 0; if (iData != null) { r = iData.getInteger("red"); g = iData.getInteger("green"); b = iData.getInteger("blue"); a = iData.getInteger("alpha"); } r = r == 0 ? 0 : r; g = g == 0 ? 0 : g; b = b == 0 ? 0 : b; a = a == 0 ? 255 : a; Tessellator tessellator = Tessellator.instance; tessellator.startDrawingQuads(); tessellator.setColorRGBA(r, g, b, a); tessellator.addVertex(7, 6, 0); tessellator.addVertex(7, 13, 0); tessellator.addVertex(9, 13, 0); tessellator.addVertex(9, 6, 0); tessellator.draw(); GL11.glDepthMask(true); GL11.glDisable(GL11.GL_BLEND); GL11.glEnable(GL11.GL_TEXTURE_2D); } }
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.