grossik

Untitled

Oct 17th, 2016
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.21 KB | None | 0 0
  1. package com.example.examplemod;
  2.  
  3. import org.lwjgl.opengl.GL11;
  4.  
  5. import net.minecraft.client.Minecraft;
  6. import net.minecraft.client.model.ModelBiped;
  7. import net.minecraft.client.renderer.GlStateManager;
  8. import net.minecraft.client.renderer.RenderHelper;
  9. import net.minecraft.client.renderer.Tessellator;
  10. import net.minecraft.client.renderer.block.model.IBakedModel;
  11. import net.minecraft.entity.Entity;
  12. import net.minecraft.util.ResourceLocation;
  13. import net.minecraft.world.World;
  14. import net.minecraftforge.client.model.Attributes;
  15. import net.minecraftforge.client.model.obj.OBJLoader;
  16. import net.minecraftforge.client.model.obj.OBJModel;
  17.  
  18. public class ModelVehicle extends ModelBiped
  19. {
  20. private OBJModel model;
  21. private IBakedModel bakedModel;
  22. private Minecraft mc = Minecraft.getMinecraft();
  23.  
  24. private IBakedModel getBakedModel() {
  25. if (bakedModel == null) {
  26. try {
  27. model = (OBJModel) OBJLoader.INSTANCE.loadModel(new ResourceLocation("farmcraft2", "textures/entity/kombajn.obj"));
  28. } catch (Exception e) {
  29. throw new RuntimeException(e);
  30. }
  31. bakedModel = model.bake(model.getDefaultState(), Attributes.DEFAULT_BAKED_FORMAT,
  32. location -> Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(location.toString()));
  33. }
  34. return bakedModel;
  35. }
  36.  
  37. public void render(Entity entity, float f1, float f2, float f3, float f4, float f5, float f6) {
  38. World world = entity.getEntityWorld();
  39.  
  40. GlStateManager.pushAttrib();
  41. GlStateManager.pushMatrix();
  42. GlStateManager.disableRescaleNormal();
  43.  
  44. Tessellator tessellator = Tessellator.getInstance();
  45. tessellator.getBuffer().begin(GL11.GL_QUADS, Attributes.DEFAULT_BAKED_FORMAT);
  46. mc.getBlockRendererDispatcher().getBlockModelRenderer().renderModel(world, getBakedModel(), world.getBlockState(entity.getPosition()), entity.getPosition(), Tessellator.getInstance().getBuffer(), true);
  47. tessellator.draw();
  48.  
  49. RenderHelper.enableStandardItemLighting();
  50. GlStateManager.popMatrix();
  51. GlStateManager.popAttrib();
  52. }
  53. }
Advertisement
Add Comment
Please, Sign In to add comment