Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.uadaf.astral.render;
- import codechicken.lib.render.CCRenderState;
- import codechicken.lib.util.TransformUtils;
- import com.google.common.collect.ImmutableList;
- import com.uadaf.astral.registry.ItemRegistry;
- import keri.ninetaillib.render.registry.IItemRenderingHandler;
- import keri.ninetaillib.render.util.VertexUtils;
- import net.minecraft.client.Minecraft;
- import net.minecraft.client.renderer.GlStateManager;
- import net.minecraft.client.renderer.Tessellator;
- import net.minecraft.client.renderer.block.model.IBakedModel;
- import net.minecraft.client.renderer.block.model.ItemCameraTransforms;
- import net.minecraft.client.renderer.vertex.DefaultVertexFormats;
- import net.minecraft.item.ItemStack;
- import net.minecraft.util.ResourceLocation;
- import net.minecraftforge.client.model.IPerspectiveAwareModel;
- import net.minecraftforge.client.model.ItemLayerModel;
- import net.minecraftforge.fml.relauncher.Side;
- import net.minecraftforge.fml.relauncher.SideOnly;
- import org.apache.commons.lang3.tuple.Pair;
- import org.lwjgl.opengl.GL11;
- import javax.vecmath.Matrix4f;
- @SideOnly(Side.CLIENT)
- public class AstralManipulatorRenderer implements IItemRenderingHandler {
- @Override
- public void renderItem(CCRenderState renderState, ItemStack stack) {
- Tessellator.getInstance().draw();
- IBakedModel model = new ItemLayerModel(ImmutableList.of(new ResourceLocation(ItemRegistry.astralManipulator.frame.getIconName()), new ResourceLocation(ItemRegistry.astralManipulator.gem.getIconName())))
- .bake(TransformUtils.DEFAULT_ITEM, DefaultVertexFormats.ITEM, input -> Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(input.toString()));
- GlStateManager.pushMatrix();
- GlStateManager.translate(0.5D, 0.5D, 0.5D);
- Minecraft.getMinecraft().getRenderItem().renderItem(stack, model);
- GlStateManager.popMatrix();
- Tessellator.getInstance().getBuffer().begin(GL11.GL_QUADS, VertexUtils.getFormatWithLightMap(DefaultVertexFormats.ITEM));
- }
- @Override
- public Pair<? extends IBakedModel, Matrix4f> handlePerspective(IBakedModel model, ItemCameraTransforms.TransformType cameraTransformType) {
- return IPerspectiveAwareModel.MapWrapper.handlePerspective(model, TransformUtils.DEFAULT_ITEM.getTransforms(), cameraTransformType);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment