- 55
- 1
- 1
Снова здраствуйте! Так как я недавно начал коддить, задаю много вопросов, извените. Ну так вот, я хотел изменить модель игрока, при просмотре предмета от третьего лица. Извените меня за корявый код. Код Модели игрока.
А также код рендера 3д предмета.
Спасибо за помощь)
ModelBiped:
package ru.SinT.Nuck.model;
import net.minecraft.client.model.ModelBase;
import net.minecraft.client.model.ModelRenderer;
import net.minecraft.entity.Entity;
/**
* ModelBiped - Either Mojang or a mod author
* Created using Tabula 4.1.1
*/
public class ModelPlayerAK extends ModelBase {
public ModelRenderer field_78114_d;
public ModelRenderer field_78112_f;
public ModelRenderer field_78124_i;
public ModelRenderer field_78116_c;
public ModelRenderer field_78115_e;
public ModelRenderer field_78113_g;
public ModelRenderer field_78123_h;
public ModelRenderer field_78121_j;
public ModelPlayerAK() {
this.textureWidth = 64;
this.textureHeight = 32;
this.field_78114_d = new ModelRenderer(this, 32, 0);
this.field_78114_d.setRotationPoint(0.0F, 0.0F, 0.0F);
this.field_78114_d.addBox(-4.0F, -8.0F, -4.0F, 8, 8, 8, 0.5F);
this.field_78121_j = new ModelRenderer(this, 24, 0);
this.field_78121_j.setRotationPoint(0.0F, 0.0F, 0.0F);
this.field_78121_j.addBox(-3.0F, -6.0F, -1.0F, 6, 6, 1, 0.0F);
this.field_78112_f = new ModelRenderer(this, 40, 16);
this.field_78112_f.setRotationPoint(-5.0F, 2.0F, 0.0F);
this.field_78112_f.addBox(-3.0F, -2.0F, -2.0F, 4, 12, 4, 0.0F);
this.setRotateAngle(field_78112_f, -1.548672871706523F, -0.0368731636120601F, 0.02458210907470669F);
this.field_78124_i = new ModelRenderer(this, 0, 16);
this.field_78124_i.mirror = true;
this.field_78124_i.setRotationPoint(1.899999976158142F, 12.0F, 0.0F);
this.field_78124_i.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, 0.0F);
this.field_78116_c = new ModelRenderer(this, 0, 0);
this.field_78116_c.setRotationPoint(0.0F, 0.0F, 0.0F);
this.field_78116_c.addBox(-4.0F, -8.0F, -4.0F, 8, 8, 8, 0.0F);
this.field_78115_e = new ModelRenderer(this, 16, 16);
this.field_78115_e.setRotationPoint(0.0F, 0.0F, 0.0F);
this.field_78115_e.addBox(-4.0F, 0.0F, -2.0F, 8, 12, 4, 0.0F);
this.field_78123_h = new ModelRenderer(this, 0, 16);
this.field_78123_h.setRotationPoint(-1.899999976158142F, 12.0F, 0.0F);
this.field_78123_h.addBox(-2.0F, 0.0F, -2.0F, 4, 12, 4, 0.0F);
this.field_78113_g = new ModelRenderer(this, 40, 16);
this.field_78113_g.mirror = true;
this.field_78113_g.setRotationPoint(5.0F, 2.0F, 0.0F);
this.field_78113_g.addBox(-1.0F, -2.0F, -2.0F, 4, 12, 4, 0.0F);
this.setRotateAngle(field_78113_g, -1.5481070465189704F, 0.5462880558742251F, 0.045553093477052F);
}
@Override
public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) {
this.field_78114_d.render(f5);
this.field_78121_j.render(f5);
this.field_78112_f.render(f5);
this.field_78124_i.render(f5);
this.field_78116_c.render(f5);
this.field_78115_e.render(f5);
this.field_78123_h.render(f5);
this.field_78113_g.render(f5);
}
/**
* This is a helper function from Tabula to set the rotation of model parts
*/
public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) {
modelRenderer.rotateAngleX = x;
modelRenderer.rotateAngleY = y;
modelRenderer.rotateAngleZ = z;
}
}
А также код рендера 3д предмета.
Render:
package ru.SinT.Nuck.Render;
import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.AbstractClientPlayer;
import net.minecraft.client.renderer.entity.RenderPlayer;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.client.IItemRenderer;
import ru.SinT.Nuck.Reference.Reference;
import ru.SinT.Nuck.RenderEntity.RenderTileEntityAk_47;
import ru.SinT.Nuck.RenderEntity.RenderTileEntityBorcsh_1;
import ru.SinT.Nuck.RenderEntity.RenderTileEntityHandsA;
import ru.SinT.Nuck.model.ModelPlayerAK;
import org.lwjgl.opengl.GL11;
import com.mojang.authlib.minecraft.MinecraftProfileTexture.Type;
public class RenderItemAk_47 extends RenderPlayer implements IItemRenderer {
// public ModelBiped tutModel;
// public RenderItemAk_47()
// {
// super();
// this.mainModel = new ModelBiped();
// this.modelBipedMain = (net.minecraft.client.model.ModelBiped) this.mainModel;
@Override
public boolean handleRenderType(ItemStack is, ItemRenderType type) {
return true;
}
@Override
public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack is, ItemRendererHelper helper) {
return true;
}
@Override
public void renderItem(ItemRenderType type, ItemStack is, Object... data) {
GL11.glPushMatrix();
ResourceLocation skin;
EntityPlayer player = (EntityPlayer)Minecraft.getMinecraft().thePlayer;
skin = ((AbstractClientPlayer) player).getLocationSkin();
switch(type) {
case EQUIPPED_FIRST_PERSON:
// Minecraft.getMinecraft().renderEngine.bindTexture(RenderTileEntityHandsA.texture);
// RenderTileEntityHandsA.model.renderAll();
break;
case EQUIPPED:
GL11.glScalef(0.69F, 0.69F, 0.69F);
GL11.glRotatef(90F + 0, 0, 1, 0);
break;
default:
break;
}
Minecraft.getMinecraft().renderEngine.bindTexture(RenderTileEntityAk_47.texture);
RenderTileEntityAk_47.model.renderAll();
GL11.glPopMatrix();
}
}