Armure avec rendu 3d
-
Ça c’est le lien de pour créer un gif me semble-t-il
-
Le point de rotation de ton modèle n’est pas au bon endroit.
-
D’accord mais comment je sais ou elle doit - être ?
-
Au même niveau que les jambes du joueur.
-
Pourtant dans mon code j’ai pris les rotations des jambes du Biped
-
Quand tu fais ton modèle sur techne, le point bleu (point de rotation) doit être au même endroit que le point de rotation des jambes du joueur.
Donc au niveau de la limite entre le ventre et les jambes. -
Oui ça je l’ai fait
-
ça ne devrait pas faire ça alors.
Envoies-moi un zip de ton dossier src, je vais faire des tests de mon côté.
-
Tiens :
-
Alors une idée ? Parce que moi je suis complètement perdu.
-
Désolé, j’avais complètement oublié de regarder.
Pourquoi faire compliqué quand on peut faire simple ? Il suffit de reprendre l’angle des jambes :package com.survivant.mod.models; import net.minecraft.client.model.ModelBiped; import net.minecraft.client.model.ModelRenderer; import net.minecraft.entity.Entity; import net.minecraft.util.MathHelper; public class ModelArmorFlippers extends ModelBiped { // fields ModelRenderer flippersRight1; ModelRenderer flippersLeft1; ModelRenderer flippersRight2; ModelRenderer flippersLeft2; public ModelArmorFlippers() { textureWidth = 64; textureHeight = 64; flippersRight1 = new ModelRenderer(this, 37, 35); flippersRight1.addBox(-2F, 8F, -3F, 5, 4, 6); flippersRight1.setRotationPoint(2F, 12F, 0F); flippersRight1.setTextureSize(64, 64); flippersRight1.mirror = true; setRotation(flippersRight1, 0F, 0F, 0F); flippersLeft1 = new ModelRenderer(this, 5, 35); flippersLeft1.addBox(-3F, 8F, -3F, 5, 4, 6); flippersLeft1.setRotationPoint(-2F, 12F, 0F); flippersLeft1.setTextureSize(64, 64); flippersLeft1.mirror = true; setRotation(flippersLeft1, 0F, 0F, 0F); flippersRight2 = new ModelRenderer(this, 32, 45); flippersRight2.addBox(-2F, 11F, -13F, 5, 1, 11); flippersRight2.setRotationPoint(2F, 12F, 0F); flippersRight2.setTextureSize(64, 64); flippersRight2.mirror = true; setRotation(flippersRight2, 0F, -0.0743572F, 0F); flippersLeft2 = new ModelRenderer(this, 0, 45); flippersLeft2.addBox(-3F, 11F, -13F, 5, 1, 11); flippersLeft2.setRotationPoint(-2F, 12F, 0F); flippersLeft2.setTextureSize(64, 64); flippersLeft2.mirror = true; setRotation(flippersLeft2, 0F, 0.074351F, 0F); } public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { setRotationAngles(f, f1, f2, f3, f4, f5, entity); flippersRight1.render(f5); flippersLeft1.render(f5); flippersRight2.render(f5); flippersLeft2.render(f5); } private void setRotation(ModelRenderer model, float x, float y, float z) { model.rotateAngleX = x; model.rotateAngleY = y; model.rotateAngleZ = z; } public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity entity) { super.setRotationAngles(f, f1, f2, f3, f4, f5, entity); if(this.isSneak) { this.flippersLeft1.rotationPointY = 12.0F; this.flippersLeft2.rotationPointY = 12.0F; this.flippersLeft1.rotationPointZ = 4.0F; this.flippersLeft2.rotationPointZ = 4.0F; this.flippersRight1.rotationPointY = 12.0F; this.flippersRight2.rotationPointY = 12.0F; this.flippersRight1.rotationPointZ = 4.0F; this.flippersRight2.rotationPointZ = 4.0F; } else { this.flippersLeft1.rotationPointY = 12.0F; this.flippersLeft2.rotationPointY = 12.0F; this.flippersLeft1.rotationPointZ = 0.1F; this.flippersLeft2.rotationPointZ = 0.1F; this.flippersRight1.rotationPointY = 12.0F; this.flippersRight2.rotationPointY = 12.0F; this.flippersRight1.rotationPointZ = 0.1F; this.flippersRight2.rotationPointZ = 0.1F; } this.flippersLeft1.rotateAngleX = bipedRightLeg.rotateAngleX; this.flippersLeft2.rotateAngleX = bipedRightLeg.rotateAngleX; this.flippersLeft1.rotateAngleY = bipedRightLeg.rotateAngleY; this.flippersLeft2.rotateAngleY = bipedRightLeg.rotateAngleY; this.flippersRight1.rotateAngleX = bipedLeftLeg.rotateAngleX; this.flippersRight2.rotateAngleX = bipedLeftLeg.rotateAngleX; this.flippersRight1.rotateAngleY = bipedLeftLeg.rotateAngleY; this.flippersRight2.rotateAngleY = bipedLeftLeg.rotateAngleY; } }Par contre tu as visiblement inversé la droite et la gauche dans ton modèle.
-
Ok, merci je test le code demain et je reviens si j’ai un souci
Je viens de test, sa marche parfaitement, merci.