Class LodestoneArmorModel

java.lang.Object
net.minecraft.client.model.Model
net.minecraft.client.model.EntityModel<net.minecraft.world.entity.LivingEntity>
net.minecraft.client.model.AgeableListModel<net.minecraft.world.entity.LivingEntity>
net.minecraft.client.model.HumanoidModel<net.minecraft.world.entity.LivingEntity>
team.lodestar.lodestone.systems.model.LodestoneArmorModel
All Implemented Interfaces:
net.minecraft.client.model.ArmedModel, net.minecraft.client.model.HeadedModel

public class LodestoneArmorModel extends net.minecraft.client.model.HumanoidModel<net.minecraft.world.entity.LivingEntity>
A simple implementation of an armor tied humanoid model. Designing these in blockbench is quite annoying, but from my personal experience it can be made simpler with the following steps; The Root* of each individual part of your armor model should match in name to the ModelParts defined below. That way, the exported code will be really easy to connect to the LodestoneArmorModel utility. The Pivot Points of each Actual Root* of your individual parts of the armor model should match to that of the player's model. Export the model as a java file and paste what it gives you into createArmorModel(team.lodestar.lodestone.systems.model.LodestoneArmorModel.ILodestoneArmorModelBuilder). Remove the pose-offsets of any part that is directly tied to the player model and copies it's properties. Hopefully you should be good to go after that? All of this is optional it's just to make the process easier. If you plan to use LodestoneArmorModel definitely join the discord and ask questions.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static interface 
     

    Nested classes/interfaces inherited from class net.minecraft.client.model.HumanoidModel

    net.minecraft.client.model.HumanoidModel.ArmPose
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    net.minecraft.client.model.geom.ModelPart
     
    net.minecraft.client.model.geom.ModelPart
     
    net.minecraft.client.model.geom.ModelPart
     
    net.minecraft.client.model.geom.ModelPart
     
    net.minecraft.client.model.geom.ModelPart
     
    net.minecraft.client.model.geom.ModelPart
     
    net.minecraft.client.model.geom.ModelPart
     
    net.minecraft.client.model.geom.ModelPart
     
    net.minecraft.client.model.geom.ModelPart
     
    net.minecraft.client.model.geom.ModelPart
     
    net.minecraft.world.entity.EquipmentSlot
     

    Fields inherited from class net.minecraft.client.model.HumanoidModel

    crouching, hat, HAT_OVERLAY_SCALE, leftArmPose, leftLeg, LEGGINGS_OVERLAY_SCALE, OVERLAY_SCALE, rightArmPose, rightLeg, swimAmount, TOOT_HORN_XROT_BASE, TOOT_HORN_YROT_BASE

    Fields inherited from class net.minecraft.client.model.EntityModel

    attackTime, riding, young

    Fields inherited from class net.minecraft.client.model.Model

    renderType
  • Constructor Summary

    Constructors
    Constructor
    Description
    LodestoneArmorModel(net.minecraft.client.model.geom.ModelPart root)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected Iterable<net.minecraft.client.model.geom.ModelPart>
     
    void
    copyFromDefault(net.minecraft.client.model.HumanoidModel model)
     
    static net.minecraft.client.model.geom.builders.LayerDefinition
     
    static net.minecraft.client.model.geom.builders.PartDefinition
    createHumanoidAlias(net.minecraft.client.model.geom.builders.MeshDefinition mesh)
     
    protected Iterable<net.minecraft.client.model.geom.ModelPart>
     
    void
    renderToBuffer(com.mojang.blaze3d.vertex.PoseStack matrixStack, com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer, int packedLight, int packedOverlay, int p_350361_)
     

    Methods inherited from class net.minecraft.client.model.HumanoidModel

    copyPropertiesTo, createMesh, getArm, getHead, prepareMobModel, rotlerpRad, setAllVisible, setupAnim, setupAttackAnimation, translateToHand

    Methods inherited from class net.minecraft.client.model.EntityModel

    copyPropertiesTo

    Methods inherited from class net.minecraft.client.model.Model

    renderToBuffer, renderType

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • slot

      public net.minecraft.world.entity.EquipmentSlot slot
    • root

      public net.minecraft.client.model.geom.ModelPart root
    • body

      public net.minecraft.client.model.geom.ModelPart body
    • leftArm

      public net.minecraft.client.model.geom.ModelPart leftArm
    • rightArm

      public net.minecraft.client.model.geom.ModelPart rightArm
    • leggings

      public net.minecraft.client.model.geom.ModelPart leggings
    • leftLegging

      public net.minecraft.client.model.geom.ModelPart leftLegging
    • rightLegging

      public net.minecraft.client.model.geom.ModelPart rightLegging
    • leftFoot

      public net.minecraft.client.model.geom.ModelPart leftFoot
    • rightFoot

      public net.minecraft.client.model.geom.ModelPart rightFoot
  • Constructor Details

    • LodestoneArmorModel

      public LodestoneArmorModel(net.minecraft.client.model.geom.ModelPart root)
  • Method Details

    • createHumanoidAlias

      public static net.minecraft.client.model.geom.builders.PartDefinition createHumanoidAlias(net.minecraft.client.model.geom.builders.MeshDefinition mesh)
    • createArmorModel

      public static net.minecraft.client.model.geom.builders.LayerDefinition createArmorModel(LodestoneArmorModel.ILodestoneArmorModelBuilder modelBuilder)
    • headParts

      protected Iterable<net.minecraft.client.model.geom.ModelPart> headParts()
      Overrides:
      headParts in class net.minecraft.client.model.HumanoidModel<net.minecraft.world.entity.LivingEntity>
    • bodyParts

      protected Iterable<net.minecraft.client.model.geom.ModelPart> bodyParts()
      Overrides:
      bodyParts in class net.minecraft.client.model.HumanoidModel<net.minecraft.world.entity.LivingEntity>
    • renderToBuffer

      public void renderToBuffer(com.mojang.blaze3d.vertex.PoseStack matrixStack, com.mojang.blaze3d.vertex.VertexConsumer vertexConsumer, int packedLight, int packedOverlay, int p_350361_)
      Overrides:
      renderToBuffer in class net.minecraft.client.model.AgeableListModel<net.minecraft.world.entity.LivingEntity>
    • copyFromDefault

      public void copyFromDefault(net.minecraft.client.model.HumanoidModel model)