1

[1.8] Custom Armor Rendering

QuickScoP3s's Avatar QuickScoP3s8/4/15 9:05 pm
1 emeralds 726
Hi everyone,
I have one final problem before I can FINALLY update my mod to 1.8:
I've made some 3D armor parts in Blender (not techne, because I want them to be rounded) and I have tried over 7 hours to render them. Of those 7 hours, 5 hours went to searching on the internet on how to render blender .obj items in minecraft 1.8! And because .obj support stopped in 1.8 I had to find another way: A custom wavefront loader. This works, but I can't get the parts to render! Is there an easier way to import these files in minecraft? Or are there any tutorials?

Armor Class:
public class ItemArcherArmor extends ItemArmor {

public ItemArcherArmor(ArmorMaterial armorMaterial, int id, int bodyPlacement) {
super(armorMaterial, id, bodyPlacement);
setCreativeTab(CastleDefendersMod.tabArcherKnight);
}

@Override
public String getArmorTexture(ItemStack itemstack, Entity entity, int slot, String type){
if (itemstack.getItem() == NormalItemRegistery.ArcherChestplate || itemstack.getItem() == NormalItemRegistery.ArcherBoots){
return "cdm:textures/models/armor/archerknight_1.png";
}
if (itemstack.getItem() == NormalItemRegistery.ArcherLeggings){
return "cdm:textures/models/armor/archerknight_2.png";
}
else {
return null;
}
}

@Override
@SideOnly(Side.CLIENT)
public ModelBiped getArmorModel(EntityLivingBase entityLiving, ItemStack itemStack, int armorSlot) {
if (itemStack.getItem() == NormalItemRegistery.ArcherHelmet) {
return new RenderArcherHelmet();
}
return null;
}
}


RenderArcherHelmet Class:
public class RenderArcherHelmet extends ModelBiped {

public WavefrontModel model;

public RenderArcherHelmet() {
super();
model = WavefrontAPI.instance().loadModel(CastleDefendersMod.class, References.MODID, "ArcherHelmet", "/assets/cdm/models/armor/ArcherHelmet");
}

@Override
public void render(Entity p_78088_1_, float posX, float posY, float posZ, float p_78088_5_, float p_78088_6_, float p_78088_7_) {
XLibRenderer.pushMatrix();
XLibRenderer.translate(posX + 1.5, posY + 0.52, posZ + 0.25);
for (Part p : model.nameToPartHash.values()) {
p.draw();
}
XLibRenderer.popMatrix();
}
}


You can find the library for the wavefront files here:
http://www.mediafire.com/download/yvpyu24y7lb1e36/xLib.zip

Please comment anything that might help, so I can fix this and update my mod!!!
Thanks in advance!

Kind regards,
QuickScoP3s
Posted by QuickScoP3s's Avatar
QuickScoP3s
Level 55 : Grandmaster Programmer
26

Create an account or sign in to comment.

Planet Minecraft

Website

© 2010 - 2024
www.planetminecraft.com

Welcome