Posted August 7, 201411 yr Hello, I am rendering entities in my GUI Class, but when they render they look like this Gui Code: package com.icecold.modularspawners.client.gui; import com.icecold.modularspawners.tileentity.TileEntitySpawner; import cpw.mods.fml.common.registry.EntityRegistry; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.client.renderer.RenderHelper; import net.minecraft.client.renderer.entity.RenderManager; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityList; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.boss.EntityDragon; import net.minecraft.entity.boss.EntityWither; import net.minecraft.entity.item.EntityFallingBlock; import net.minecraft.entity.monster.EntityZombie; import net.minecraft.entity.passive.EntityPig; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Blocks; import net.minecraft.inventory.Container; import net.minecraft.util.ResourceLocation; import net.minecraft.world.World; import org.lwjgl.opengl.GL11; import java.util.ArrayList; import java.util.Collection; /** * * Made by tattyseal on 06/08/14 at 20:44 in IntelliJ IDEA */ public class GuiSpawner extends GuiContainer { public TileEntitySpawner tile; public Container container; public EntityPlayer player; public World world; public int x; public int y; public int z; public float rotation; public int selected = 0; public Collection<Entity> entityList; public GuiButton left; public GuiButton right; public ResourceLocation background; public GuiSpawner(Container container, TileEntitySpawner tileEntity, EntityPlayer player, World world, int x, int y, int z) { super(container); this.container = container; this.tile = tileEntity; this.player = player; this.world = world; this.x = x; this.y = y; this.z = z; this.xSize = 256; this.ySize = 256; } @Override public void initGui() { super.initGui(); background = new ResourceLocation("modular", "textures/gui/spawner.png"); rotation = 0; try { entityList = getEntityList(); } catch(Exception e) { System.out.println("Failed to output list of Entities"); } buttonList.add(left = new GuiButton(0, 100, 100, 20, 20, "<")); buttonList.add(right = new GuiButton(1, 200, 200, 20, 20, ">")); } @Override public void drawGuiContainerBackgroundLayer(float i, int j, int k) { drawDefaultBackground(); mc.renderEngine.bindTexture(background); drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize); } @Override protected void drawGuiContainerForegroundLayer(int i, int j) { super.drawGuiContainerForegroundLayer(i, j); try { GL11.glPushMatrix(); GL11.glTranslatef(guiLeft + (256 / 2), guiTop + 97, 100); GL11.glScalef(-30f, 30f, 30f); GL11.glRotatef(180, 0, 0, 1); GL11.glRotatef(rotation, 0, 1, 0); RenderHelper.enableStandardItemLighting(); if(selected <= 0 || selected >= entityList.size()); else RenderManager.instance.renderEntityWithPosYaw((Entity) entityList.toArray()[selected], 0, 0, 0, 0, 0); RenderHelper.disableStandardItemLighting(); GL11.glPopMatrix(); rotation += 1f; } catch(Exception e) { e.printStackTrace(); } } @Override public void updateScreen() { } @Override public boolean doesGuiPauseGame() { return false; } public Collection<Entity> getEntityList() throws Exception { ArrayList<Entity> list = new ArrayList<Entity>(); for(Object o : EntityList.stringToClassMapping.values()) { Class c = (Class) o; System.out.println(c.getSimpleName()); try { Entity e = (Entity) c.getDeclaredConstructor(World.class).newInstance(mc.theWorld); if(e instanceof EntityLivingBase) list.add(e); } catch(Exception e) { continue; } } return list; } @Override protected void actionPerformed(GuiButton button) { if(button.id == 0) { selected -= 1; } if(button.id == 1) { selected += 1; } } }
August 7, 201411 yr Opengl is set to orthogonal projection in Inventory's make sure to set and reset it when you render the model: GL11.glMatrixMode(GL11.GL_PROJECTION); GL11.glMatrixMode(GL11.GL_MODELVIEW); PM's regarding modding questions should belong in the Modder Support sub-forum and won't be answered.
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.