Как правильно настроить рендеринг модели моба

Версия Minecraft
1.12.2
117
7
Столкнулся с такой проблемой: у моба создается как бы копия бокса, который я закрепил за, допустим, головой. Только этот бокс неподвижен. Вот скрин, на котором видно, что наросты на голове закрепились за головой, а их копии висят в воздухе. И кусок кода, в котором я убрал все лишнее. Как это можно исправить?
Java:
public ModelBoomer(int type)
    {
        textureWidth = 64;
        textureHeight = 64;

        this.faceblister = new ModelRenderer(this, 23, 41);
        this.faceblister.addBox(-1F, -1F, -1F, 2, 2, 1);
        this.faceblister.setRotationPoint(-2F, -3F, -3.5F);
        this.faceblister.setTextureSize(64, 64);
        this.faceblister.mirror = true;
        setRotation(faceblister, 0F, 0F, 0F);

        this.bigfaceblister = new ModelRenderer(this, 22, 27);
        this.bigfaceblister.addBox(-2F, 0F, -1F, 3, 4, 3);
        this.bigfaceblister.setRotationPoint(3.5F, 0F, -3.5F);
        this.bigfaceblister.setTextureSize(64, 64);
        this.bigfaceblister.mirror = true;
        setRotation(bigfaceblister, 0F, 0F, 0F);

        this.mediumfaceblister = new ModelRenderer(this, 23, 35);
        this.mediumfaceblister.addBox(-1F, 0F, -1F, 3, 3, 2);
        this.mediumfaceblister.setRotationPoint(-0.5F, 0F, -3F);
        this.mediumfaceblister.setTextureSize(64, 64);
        this.mediumfaceblister.mirror = true;
        setRotation(mediumfaceblister, 0F, 0F, 0F);

        this.littlefaceblister = new ModelRenderer(this, 23, 41);
        this.littlefaceblister.addBox(-1F, 0F, -1F, 2, 2, 2);
        this.littlefaceblister.setRotationPoint(-2.5F, 0F, -3F);
        this.littlefaceblister.setTextureSize(64, 64);
        this.littlefaceblister.mirror = true;
        setRotation(littlefaceblister, 0F, 0F, 0F);

        this.leftarmblister2 = new ModelRenderer(this, 22, 30);
        this.leftarmblister2.addBox(-1F, 0F, -1F, 2, 1, 2);
        this.leftarmblister2.setRotationPoint(7F, 3.5F, -6F);
        this.leftarmblister2.setTextureSize(64, 64);
        this.leftarmblister2.mirror = true;
        setRotation(leftarmblister2, 0F, 0F, 0F);

        this.head = new ModelRenderer(this, 0, 0);
        this.head.addBox(-4F, -8F, -4F, 8, 8, 8);
        this.head.setRotationPoint(0F, 0F, 0F);
        this.head.setTextureSize(64, 64);
        this.head.mirror = true;
        setRotation(head, 0F, 0F, 0F);
        this.head.addChild(bigfaceblister);
        this.head.addChild(mediumfaceblister);
        this.head.addChild(littlefaceblister);
        this.head.addChild(faceblister);
    }

    public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5)
    {
        super.render(entity, f, f1, f2, f3, f4, f5);
        setRotationAngles(f, f1, f2, f3, f4, f5, entity);
        leftarmblister2.render(f5);
        head.render(f5);
        body.render(f5);
        rightarm.render(f5);
        leftarm.render(f5);
        rightleg.render(f5);
        leftleg.render(f5);
        body1.render(f5);
        topleftleg.render(f5);
        toprightleg.render(f5);
        faceblister.render(f5);
        bigfaceblister.render(f5);
        mediumfaceblister.render(f5);
        littlefaceblister.render(f5);
        bodyblister1.render(f5);
        bodyblister2.render(f5);
        bodyblister3.render(f5);
        rightarmblister1.render(f5);
        leftarmblister1.render(f5);
        rightarmblister2.render(f5);
    }
2018-07-18_12.29.21.png
 
Решение
Ты их сначала так рендеришь:

Java:
        this.head.addChild(bigfaceblister);
        this.head.addChild(mediumfaceblister);
        this.head.addChild(littlefaceblister);
        this.head.addChild(faceblister);

А потом ты их повторно рендеришь, но уже в render:
Код:
bigfaceblister.render(f5);
faceblister.render(f5);
...
Попробуй с render удалить, должны по идеи остаться те, которые прикреплены к голове.
63
5
20
Ты их сначала так рендеришь:

Java:
        this.head.addChild(bigfaceblister);
        this.head.addChild(mediumfaceblister);
        this.head.addChild(littlefaceblister);
        this.head.addChild(faceblister);

А потом ты их повторно рендеришь, но уже в render:
Код:
bigfaceblister.render(f5);
faceblister.render(f5);
...
Попробуй с render удалить, должны по идеи остаться те, которые прикреплены к голове.
 
Последнее редактирование:
Сверху