gt22

Untitled

May 31st, 2017
234
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.31 KB | None | 0 0
  1. package com.uadaf.astral.render;
  2.  
  3. import codechicken.lib.render.CCRenderState;
  4. import codechicken.lib.util.TransformUtils;
  5. import com.google.common.collect.ImmutableList;
  6. import com.uadaf.astral.registry.ItemRegistry;
  7. import keri.ninetaillib.render.registry.IItemRenderingHandler;
  8. import keri.ninetaillib.render.util.VertexUtils;
  9. import net.minecraft.client.Minecraft;
  10. import net.minecraft.client.renderer.GlStateManager;
  11. import net.minecraft.client.renderer.Tessellator;
  12. import net.minecraft.client.renderer.block.model.IBakedModel;
  13. import net.minecraft.client.renderer.block.model.ItemCameraTransforms;
  14. import net.minecraft.client.renderer.vertex.DefaultVertexFormats;
  15. import net.minecraft.item.ItemStack;
  16. import net.minecraft.util.ResourceLocation;
  17. import net.minecraftforge.client.model.IPerspectiveAwareModel;
  18. import net.minecraftforge.client.model.ItemLayerModel;
  19. import net.minecraftforge.fml.relauncher.Side;
  20. import net.minecraftforge.fml.relauncher.SideOnly;
  21. import org.apache.commons.lang3.tuple.Pair;
  22. import org.lwjgl.opengl.GL11;
  23.  
  24. import javax.vecmath.Matrix4f;
  25.  
  26. @SideOnly(Side.CLIENT)
  27. public class AstralManipulatorRenderer implements IItemRenderingHandler {
  28.  
  29.  
  30.     @Override
  31.     public void renderItem(CCRenderState renderState, ItemStack stack) {
  32.         Tessellator.getInstance().draw();
  33.         IBakedModel model = new ItemLayerModel(ImmutableList.of(new ResourceLocation(ItemRegistry.astralManipulator.frame.getIconName()), new ResourceLocation(ItemRegistry.astralManipulator.gem.getIconName())))
  34.             .bake(TransformUtils.DEFAULT_ITEM, DefaultVertexFormats.ITEM, input -> Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(input.toString()));
  35.         GlStateManager.pushMatrix();
  36.         GlStateManager.translate(0.5D, 0.5D, 0.5D);
  37.         Minecraft.getMinecraft().getRenderItem().renderItem(stack, model);
  38.         GlStateManager.popMatrix();
  39.         Tessellator.getInstance().getBuffer().begin(GL11.GL_QUADS, VertexUtils.getFormatWithLightMap(DefaultVertexFormats.ITEM));
  40.     }
  41.  
  42.  
  43.  
  44.     @Override
  45.     public Pair<? extends IBakedModel, Matrix4f> handlePerspective(IBakedModel model, ItemCameraTransforms.TransformType cameraTransformType) {
  46.         return IPerspectiveAwareModel.MapWrapper.handlePerspective(model, TransformUtils.DEFAULT_ITEM.getTransforms(), cameraTransformType);
  47.     }
  48.  
  49. }
Advertisement
Add Comment
Please, Sign In to add comment