diff options
Diffstat (limited to 'src/main/java/io/github/moulberry/notenoughupdates/CustomRenderItem.java')
| -rw-r--r-- | src/main/java/io/github/moulberry/notenoughupdates/CustomRenderItem.java | 167 |
1 files changed, 0 insertions, 167 deletions
diff --git a/src/main/java/io/github/moulberry/notenoughupdates/CustomRenderItem.java b/src/main/java/io/github/moulberry/notenoughupdates/CustomRenderItem.java deleted file mode 100644 index bf194e33..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/CustomRenderItem.java +++ /dev/null @@ -1,167 +0,0 @@ -package io.github.moulberry.notenoughupdates; - -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.*; -import net.minecraft.client.renderer.block.model.BakedQuad; -import net.minecraft.client.renderer.block.model.ItemCameraTransforms; -import net.minecraft.client.renderer.entity.RenderItem; -import net.minecraft.client.renderer.texture.TextureMap; -import net.minecraft.client.renderer.texture.TextureUtil; -import net.minecraft.client.renderer.tileentity.TileEntityItemStackRenderer; -import net.minecraft.client.renderer.vertex.DefaultVertexFormats; -import net.minecraft.client.resources.model.IBakedModel; -import net.minecraft.item.ItemStack; -import net.minecraft.util.EnumFacing; -import net.minecraft.util.ResourceLocation; -import net.minecraft.util.Vec3i; - -import java.lang.reflect.Method; -import java.util.List; - -public class CustomRenderItem { - - public static void renderItemIntoGUI(RenderItem renderItem, ItemStack stack, int x, int y, boolean effect) { - IBakedModel ibakedmodel = renderItem.getItemModelMesher().getItemModel(stack); - GlStateManager.pushMatrix(); - Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.locationBlocksTexture); - Minecraft.getMinecraft().getTextureManager().getTexture(TextureMap.locationBlocksTexture).setBlurMipmap(false, false); - GlStateManager.enableRescaleNormal(); - GlStateManager.enableAlpha(); - GlStateManager.alphaFunc(516, 0.1F); - GlStateManager.enableBlend(); - GlStateManager.blendFunc(770, 771); - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - setupGuiTransform(x, y, ibakedmodel.isGui3d()); - ibakedmodel = net.minecraftforge.client.ForgeHooksClient.handleCameraTransforms(ibakedmodel, ItemCameraTransforms.TransformType.GUI); - renderItem(renderItem, stack, ibakedmodel, effect); - GlStateManager.disableAlpha(); - GlStateManager.disableRescaleNormal(); - GlStateManager.disableLighting(); - GlStateManager.popMatrix(); - Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.locationBlocksTexture); - Minecraft.getMinecraft().getTextureManager().getTexture(TextureMap.locationBlocksTexture).restoreLastBlurMipmap(); - } - - private static void setupGuiTransform(int xPosition, int yPosition, boolean isGui3d) { - GlStateManager.translate((float)xPosition, (float)yPosition, 0); - GlStateManager.translate(8.0F, 8.0F, 0.0F); - GlStateManager.scale(1.0F, 1.0F, -1.0F); - GlStateManager.scale(0.5F, 0.5F, 0.5F); - - if (isGui3d) { - GlStateManager.scale(40.0F, 40.0F, 40.0F); - GlStateManager.rotate(210.0F, 1.0F, 0.0F, 0.0F); - GlStateManager.rotate(-135.0F, 0.0F, 1.0F, 0.0F); - GlStateManager.enableLighting(); - } else { - GlStateManager.scale(64.0F, 64.0F, 64.0F); - GlStateManager.rotate(180.0F, 1.0F, 0.0F, 0.0F); - GlStateManager.disableLighting(); - } - } - - public static void renderItem(RenderItem renderItem, ItemStack stack, IBakedModel model, boolean effect) { - if (stack != null) { - GlStateManager.pushMatrix(); - GlStateManager.scale(0.5F, 0.5F, 0.5F); - - if (model.isBuiltInRenderer()) { - GlStateManager.rotate(180.0F, 0.0F, 1.0F, 0.0F); - GlStateManager.translate(-0.5F, -0.5F, -0.5F); - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - GlStateManager.enableRescaleNormal(); - TileEntityItemStackRenderer.instance.renderByItem(stack); - } else { - GlStateManager.translate(-0.5F, -0.5F, -0.5F); - Class<?>[] paramsRM = new Class[]{IBakedModel.class, ItemStack.class}; - Method renderModelMethod = Utils.getMethod(RenderItem.class, paramsRM, - "renderModel", "func_175036_a"); - if(renderModelMethod != null) { - renderModelMethod.setAccessible(true); - try { - renderModelMethod.invoke(renderItem, model, stack); - } catch(Exception e) {} - } - - if (stack.hasEffect() && effect) { - Class<?>[] paramsRE = new Class[]{IBakedModel.class}; - Method renderEffectMethod = Utils.getMethod(RenderItem.class, paramsRE, - "renderEffect", "func_180451_a"); - if(renderEffectMethod != null) { - renderEffectMethod.setAccessible(true); - try { - renderEffectMethod.invoke(renderItem, model); - } catch(Exception e) {} - } - } - } - - GlStateManager.popMatrix(); - } - } - - /*private static void renderModel(IBakedModel model, ItemStack stack) - { - renderModel(model, -1, stack); - } - - private static void renderModel(IBakedModel model, int color) - { - renderModel(model, color, (ItemStack)null); - } - - private static void renderModel(IBakedModel model, int color, ItemStack stack) - { - Tessellator tessellator = Tessellator.getInstance(); - WorldRenderer worldrenderer = tessellator.getWorldRenderer(); - worldrenderer.begin(7, DefaultVertexFormats.ITEM); - - for (EnumFacing enumfacing : EnumFacing.values()) - { - renderQuads(worldrenderer, model.getFaceQuads(enumfacing), color, stack); - } - - renderQuads(worldrenderer, model.getGeneralQuads(), color, stack); - tessellator.draw(); - } - - private static void putQuadNormal(WorldRenderer renderer, BakedQuad quad) - { - Vec3i vec3i = quad.getFace().getDirectionVec(); - renderer.putNormal((float)vec3i.getX(), (float)vec3i.getY(), (float)vec3i.getZ()); - } - - private static void renderQuad(WorldRenderer renderer, BakedQuad quad, int color) - { - renderer.addVertexData(quad.getVertexData()); - renderer.putColor4(color); - putQuadNormal(renderer, quad); - } - - private static void renderQuads(WorldRenderer renderer, List<BakedQuad> quads, int color, ItemStack stack) - { - boolean flag = color == -1 && stack != null; - int i = 0; - - for (int j = quads.size(); i < j; ++i) - { - BakedQuad bakedquad = (BakedQuad)quads.get(i); - int k = color; - - if (flag && bakedquad.hasTintIndex()) - { - k = stack.getItem().getColorFromItemStack(stack, bakedquad.getTintIndex()); - - if (EntityRenderer.anaglyphEnable) - { - k = TextureUtil.anaglyphColor(k); - } - - k = k | -16777216; - } - - net.minecraftforge.client.model.pipeline.LightUtil.renderQuadColor(renderer, bakedquad, k); - } - }*/ - -} |
