package lumaceon.mods.clockworkphase2.client.tesr; import lumaceon.mods.clockworkphase2.block.temporal.BlockCelestialCompassSB; import lumaceon.mods.clockworkphase2.lib.Textures; import lumaceon.mods.clockworkphase2.tile.TileCelestialCompass; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.GlStateManager; import net.minecraft.client.renderer.RenderItem; import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.VertexBuffer; import net.minecraft.client.renderer.block.model.ItemCameraTransforms; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.client.renderer.vertex.DefaultVertexFormats; import net.minecraft.entity.item.EntityItem; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import org.lwjgl.opengl.GL11; public class TESRTimezoneController extends TileEntitySpecialRenderer { private RenderItem itemRenderer; private EntityItem item; public TESRTimezoneController() { itemRenderer = Minecraft.getMinecraft().getRenderItem(); } @Override public boolean isGlobalRenderer(TileEntity te) { return true; } @Override public void renderTileEntityAt(TileEntity te, double x, double y, double z, float partialTicks, int destroyStage) { GL11.glPushMatrix(); GL11.glTranslated(x, y, z); GlStateManager.disableLighting(); GlStateManager.disableBlend(); GlStateManager.enableAlpha(); GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); Tessellator tessellator = Tessellator.getInstance(); VertexBuffer renderer = tessellator.getBuffer(); bindTexture(Textures.MISC.CELESTIAL_COMPASS_SIDE); renderer.begin(7, DefaultVertexFormats.POSITION_TEX); addSideVerticies(renderer, te, partialTicks); tessellator.draw(); GL11.glTranslatef(-5.0F, 0.0F, -5.0F); GL11.glScalef(11.0F, 1.0F, 11.0F); func_190053_a(true); bindTexture(Textures.MISC.CELESTIAL_COMPASS_MAIN); renderer.begin(7, DefaultVertexFormats.POSITION_TEX); renderer.pos(0, 0.98, 0).tex(0, 0).endVertex(); renderer.pos(0, 0.98, 1).tex(0, 1).endVertex(); renderer.pos(1, 0.98, 1).tex(1, 1).endVertex(); renderer.pos(1, 0.98, 0).tex(1, 0).endVertex(); /*renderer.pos(1, 0.98, 0).tex(0, 0).endVertex(); renderer.pos(1, 0.98, 1).tex(0, 1).endVertex(); renderer.pos(0, 0.98, 1).tex(1, 1).endVertex(); renderer.pos(0, 0.98, 0).tex(1, 0).endVertex();*/ //bindTexture(Textures.MISC.TIMEZONE_CONTROLLER_BOTTOM); renderer.pos(0, 0.01, 0).tex(0, 0).endVertex(); renderer.pos(0, 0.01, 1).tex(0, 1).endVertex(); renderer.pos(1, 0.01, 1).tex(1, 1).endVertex(); renderer.pos(1, 0.01, 0).tex(1, 0).endVertex(); renderer.pos(1, 0.01, 0).tex(0, 0).endVertex(); renderer.pos(1, 0.01, 1).tex(0, 1).endVertex(); renderer.pos(0, 0.01, 1).tex(1, 1).endVertex(); renderer.pos(0, 0.01, 0).tex(1, 0).endVertex(); tessellator.draw(); /*bindTexture(Textures.MISC.TIMEZONE_CONTROLLER_METAL); renderer.begin(7, DefaultVertexFormats.POSITION_TEX); renderer.pos(0, 0.8, 0).tex(0, 0).endVertex(); renderer.pos(0, 0.8, 1).tex(0, 1).endVertex(); renderer.pos(1, 0.8, 1).tex(1, 1).endVertex(); renderer.pos(1, 0.8, 0).tex(1, 0).endVertex(); renderer.pos(1, 0.8, 0).tex(0, 0).endVertex(); renderer.pos(1, 0.8, 1).tex(0, 1).endVertex(); renderer.pos(0, 0.8, 1).tex(1, 1).endVertex(); renderer.pos(0, 0.8, 0).tex(1, 0).endVertex(); tessellator.draw(); GL11.glScalef(1F/11.0F, 1.0F, 1F/11.0F); GL11.glTranslatef(5.5F, 0.0F, 5.5F); GL11.glRotatef((System.currentTimeMillis() / 10) % 360, 0.0F, -1.0F, 0.0F); GL11.glTranslatef(-5.5F, 0.0F, -5.5F); GL11.glScalef(11.0F, 1.0F, 11.0F); bindTexture(Textures.MISC.TIMEZONE_CONTROLLER_LHAND); renderer.begin(7, DefaultVertexFormats.POSITION_TEX); renderer.pos(0, 0.999, 0).tex(0, 0).endVertex(); renderer.pos(0, 0.999, 1).tex(0, 1).endVertex(); renderer.pos(1, 0.999, 1).tex(1, 1).endVertex(); renderer.pos(1, 0.999, 0).tex(1, 0).endVertex(); renderer.pos(1, 0.999, 0).tex(0, 0).endVertex(); renderer.pos(1, 0.999, 1).tex(0, 1).endVertex(); renderer.pos(0, 0.999, 1).tex(1, 1).endVertex(); renderer.pos(0, 0.999, 0).tex(1, 0).endVertex(); tessellator.draw(); GL11.glScalef(1F/11.0F, 1.0F, 1F/11.0F); GL11.glTranslatef(5.5F, 0.0F, 5.5F); GL11.glRotatef(-((System.currentTimeMillis() / 10) % 360), 0.0F, -1.0F, 0.0F); //Negate old translation. GL11.glRotatef(((System.currentTimeMillis() / 600) % 360), 0.0F, -1.0F, 0.0F); GL11.glTranslatef(-5.5F, 0.0F, -5.5F); GL11.glScalef(11.0F, 1.0F, 11.0F); bindTexture(Textures.MISC.TIMEZONE_CONTROLLER_SHAND); renderer.begin(7, DefaultVertexFormats.POSITION_TEX); renderer.pos(0, 0.99, 0).tex(0, 0).endVertex(); renderer.pos(0, 0.99, 1).tex(0, 1).endVertex(); renderer.pos(1, 0.99, 1).tex(1, 1).endVertex(); renderer.pos(1, 0.99, 0).tex(1, 0).endVertex(); renderer.pos(1, 0.99, 0).tex(0, 0).endVertex(); renderer.pos(1, 0.99, 1).tex(0, 1).endVertex(); renderer.pos(0, 0.99, 1).tex(1, 1).endVertex(); renderer.pos(0, 0.99, 0).tex(1, 0).endVertex(); tessellator.draw();*/ GL11.glScalef(1/11.0F, 1.0F, 1/11.0F); GL11.glTranslatef(5.0F, 0.0F, 5.0F); if(te != null && te instanceof TileCelestialCompass) { //double floatingHeight = (System.currentTimeMillis()/100.0) % 10.0; int rotationSpeed = 15; //This should never be 0. Slower numbers are faster. GL11.glPushMatrix(); GL11.glTranslated(0.5, 3.0, 0.5); GL11.glRotatef(((System.currentTimeMillis()) % (360*rotationSpeed)) / (float)rotationSpeed, 0.0F, 1.0F, 0.0F); //float rotation = (Minecraft.getSystemTime() % 1440.0F) * 0.25F; //GL11.glRotatef(rotation, 0, 1.0F, 0); //GL11.glScalef(1.5F, 1.5F, 1.5F); TileCelestialCompass timezoneController = (TileCelestialCompass) te; ItemStack itemToRender = timezoneController.getCraftingItem(8); if(item == null) item = new EntityItem(te.getWorld()); if(itemToRender != null) { item.setEntityItemStack(itemToRender); itemRenderer.renderItem(itemToRender, ItemCameraTransforms.TransformType.FIXED); } GL11.glRotatef(-(((System.currentTimeMillis()) % (360*rotationSpeed)) / (float)rotationSpeed), 0.0F, 1.0F, 0.0F); GL11.glTranslatef(-0.5F, -0.5F, -0.5F); renderSideItems(timezoneController, rotationSpeed); GL11.glPopMatrix(); } GL11.glPopMatrix(); } private void renderSideItems(TileCelestialCompass timezoneController, int rotationSpeed) //Slower speed is faster (weird, but easier to code). Never 0. { ItemStack itemToRender; for(int n = 0; n < 8; n++) { itemToRender = timezoneController.getCraftingItem(n); if(itemToRender == null) continue; switch(n) { case 0: GL11.glTranslatef(BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.LIFE_X, 0, BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.LIFE_Z); GL11.glRotatef(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed, 0.0F, 1.0F, 0.0F); itemRenderer.renderItem(itemToRender, ItemCameraTransforms.TransformType.FIXED); GL11.glRotatef(-(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed), 0.0F, 1.0F, 0.0F); GL11.glTranslatef(-BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.LIFE_X, 0, -BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.LIFE_Z); break; case 1: GL11.glTranslatef(BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.LIGHT_X, 0, BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.LIGHT_Z); GL11.glRotatef(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed, 0.0F, 1.0F, 0.0F); itemRenderer.renderItem(itemToRender, ItemCameraTransforms.TransformType.FIXED); GL11.glRotatef(-(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed), 0.0F, 1.0F, 0.0F); GL11.glTranslatef(-BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.LIGHT_X, 0, -BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.LIGHT_Z); break; case 2: GL11.glTranslatef(BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.WATER_X, 0, BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.WATER_Z); GL11.glRotatef(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed, 0.0F, 1.0F, 0.0F); itemRenderer.renderItem(itemToRender, ItemCameraTransforms.TransformType.FIXED); GL11.glRotatef(-(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed), 0.0F, 1.0F, 0.0F); GL11.glTranslatef(-BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.WATER_X, 0, -BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.WATER_Z); break; case 3: GL11.glTranslatef(BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.EARTH_X, 0, BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.EARTH_Z); GL11.glRotatef(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed, 0.0F, 1.0F, 0.0F); itemRenderer.renderItem(itemToRender, ItemCameraTransforms.TransformType.FIXED); GL11.glRotatef(-(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed), 0.0F, 1.0F, 0.0F); GL11.glTranslatef(-BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.EARTH_X, 0, -BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.EARTH_Z); break; case 4: GL11.glTranslatef(BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.AIR_X, 0, BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.AIR_Z); GL11.glRotatef(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed, 0.0F, 1.0F, 0.0F); itemRenderer.renderItem(itemToRender, ItemCameraTransforms.TransformType.FIXED); GL11.glRotatef(-(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed), 0.0F, 1.0F, 0.0F); GL11.glTranslatef(-BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.AIR_X, 0, -BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.AIR_Z); break; case 5: GL11.glTranslatef(BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.FIRE_X, 0, BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.FIRE_Z); GL11.glRotatef(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed, 0.0F, 1.0F, 0.0F); itemRenderer.renderItem(itemToRender, ItemCameraTransforms.TransformType.FIXED); GL11.glRotatef(-(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed), 0.0F, 1.0F, 0.0F); GL11.glTranslatef(-BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.FIRE_X, 0, -BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.FIRE_Z); break; case 6: GL11.glTranslatef(BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.CELESTIAL_X, 0, BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.CELESTIAL_Z); GL11.glRotatef(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed, 0.0F, 1.0F, 0.0F); itemRenderer.renderItem(itemToRender, ItemCameraTransforms.TransformType.FIXED); GL11.glRotatef(-(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed), 0.0F, 1.0F, 0.0F); GL11.glTranslatef(-BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.CELESTIAL_X, 0, -BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.CELESTIAL_Z); break; case 7: GL11.glTranslatef(BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.DEATH_X, 0, BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.DEATH_Z); GL11.glRotatef(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed, 0.0F, 1.0F, 0.0F); itemRenderer.renderItem(itemToRender, ItemCameraTransforms.TransformType.FIXED); GL11.glRotatef(-(((System.currentTimeMillis() + 45*n) % (360*rotationSpeed)) / (float)rotationSpeed), 0.0F, 1.0F, 0.0F); GL11.glTranslatef(-BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.DEATH_X, 0, -BlockCelestialCompassSB.Ranges.CELESTIAL_COMPASS_COORDINATES.DEATH_Z); break; } } } private void addSideVerticies(VertexBuffer renderer, TileEntity te, float partialTicks) { renderer.pos(4, 0, 4).tex(1, 1).endVertex(); //Bottom-right renderer.pos(4, 1, 4).tex(1, 0).endVertex(); //Top-right renderer.pos(4, 1, 5).tex(0, 0).endVertex(); //Top-left renderer.pos(4, 0, 5).tex(0, 1).endVertex(); //Bottom-left renderer.pos(4, 0, 5).tex(0, 1).endVertex(); renderer.pos(4, 1, 5).tex(0, 0).endVertex(); renderer.pos(4, 1, 4).tex(1, 0).endVertex(); renderer.pos(4, 0, 4).tex(1, 1).endVertex(); renderer.pos(4, 0, 5).tex(1, 1).endVertex(); renderer.pos(4, 1, 5).tex(1, 0).endVertex(); renderer.pos(3, 1, 5).tex(0, 0).endVertex(); renderer.pos(3, 0, 5).tex(0, 1).endVertex(); renderer.pos(3, 0, 5).tex(0, 1).endVertex(); renderer.pos(3, 1, 5).tex(0, 0).endVertex(); renderer.pos(4, 1, 5).tex(1, 0).endVertex(); renderer.pos(4, 0, 5).tex(1, 1).endVertex(); renderer.pos(3, 0, 5).tex(1, 1).endVertex(); //Bottom-right renderer.pos(3, 1, 5).tex(1, 0).endVertex(); //Top-right renderer.pos(3, 1, 6).tex(0, 0).endVertex(); //Top-left renderer.pos(3, 0, 6).tex(0, 1).endVertex(); //Bottom-left renderer.pos(3, 0, 6).tex(0, 1).endVertex(); renderer.pos(3, 1, 6).tex(0, 0).endVertex(); renderer.pos(3, 1, 5).tex(1, 0).endVertex(); renderer.pos(3, 0, 5).tex(1, 1).endVertex(); renderer.pos(3, 0, 6).tex(1, 1).endVertex(); renderer.pos(3, 1, 6).tex(1, 0).endVertex(); renderer.pos(2, 1, 6).tex(0, 0).endVertex(); renderer.pos(2, 0, 6).tex(0, 1).endVertex(); renderer.pos(2, 0, 6).tex(0, 1).endVertex(); renderer.pos(2, 1, 6).tex(0, 0).endVertex(); renderer.pos(3, 1, 6).tex(1, 0).endVertex(); renderer.pos(3, 0, 6).tex(1, 1).endVertex(); renderer.pos(2, 0, 6).tex(1, 1).endVertex(); renderer.pos(2, 1, 6).tex(1, 0).endVertex(); renderer.pos(1, 1, 6).tex(0, 0).endVertex(); renderer.pos(1, 0, 6).tex(0, 1).endVertex(); renderer.pos(1, 0, 6).tex(0, 1).endVertex(); renderer.pos(1, 1, 6).tex(0, 0).endVertex(); renderer.pos(2, 1, 6).tex(1, 0).endVertex(); renderer.pos(2, 0, 6).tex(1, 1).endVertex(); renderer.pos(1, 0, 6).tex(1, 1).endVertex(); renderer.pos(1, 1, 6).tex(1, 0).endVertex(); renderer.pos(0, 1, 6).tex(0, 0).endVertex(); renderer.pos(0, 0, 6).tex(0, 1).endVertex(); renderer.pos(0, 0, 6).tex(0, 1).endVertex(); renderer.pos(0, 1, 6).tex(0, 0).endVertex(); renderer.pos(1, 1, 6).tex(1, 0).endVertex(); renderer.pos(1, 0, 6).tex(1, 1).endVertex(); renderer.pos(0, 0, 6).tex(1, 1).endVertex(); renderer.pos(0, 1, 6).tex(1, 0).endVertex(); renderer.pos(-1, 1, 6).tex(0, 0).endVertex(); renderer.pos(-1, 0, 6).tex(0, 1).endVertex(); renderer.pos(-1, 0, 6).tex(0, 1).endVertex(); renderer.pos(-1, 1, 6).tex(0, 0).endVertex(); renderer.pos(0, 1, 6).tex(1, 0).endVertex(); renderer.pos(0, 0, 6).tex(1, 1).endVertex(); renderer.pos(-1, 0, 6).tex(1, 1).endVertex(); renderer.pos(-1, 1, 6).tex(1, 0).endVertex(); renderer.pos(-2, 1, 6).tex(0, 0).endVertex(); renderer.pos(-2, 0, 6).tex(0, 1).endVertex(); renderer.pos(-2, 0, 6).tex(0, 1).endVertex(); renderer.pos(-2, 1, 6).tex(0, 0).endVertex(); renderer.pos(-1, 1, 6).tex(1, 0).endVertex(); renderer.pos(-1, 0, 6).tex(1, 1).endVertex(); renderer.pos(-2, 0, 6).tex(1, 1).endVertex(); renderer.pos(-2, 1, 6).tex(1, 0).endVertex(); renderer.pos(-2, 1, 5).tex(0, 0).endVertex(); renderer.pos(-2, 0, 5).tex(0, 1).endVertex(); renderer.pos(-2, 0, 5).tex(0, 1).endVertex(); renderer.pos(-2, 1, 5).tex(0, 0).endVertex(); renderer.pos(-2, 1, 6).tex(1, 0).endVertex(); renderer.pos(-2, 0, 6).tex(1, 1).endVertex(); renderer.pos(-2, 0, 5).tex(1, 1).endVertex(); renderer.pos(-2, 1, 5).tex(1, 0).endVertex(); renderer.pos(-3, 1, 5).tex(0, 0).endVertex(); renderer.pos(-3, 0, 5).tex(0, 1).endVertex(); renderer.pos(-3, 0, 5).tex(0, 1).endVertex(); renderer.pos(-3, 1, 5).tex(0, 0).endVertex(); renderer.pos(-2, 1, 5).tex(1, 0).endVertex(); renderer.pos(-2, 0, 5).tex(1, 1).endVertex(); renderer.pos(-3, 0, 5).tex(1, 1).endVertex(); renderer.pos(-3, 1, 5).tex(1, 0).endVertex(); renderer.pos(-3, 1, 4).tex(0, 0).endVertex(); renderer.pos(-3, 0, 4).tex(0, 1).endVertex(); renderer.pos(-3, 0, 4).tex(0, 1).endVertex(); renderer.pos(-3, 1, 4).tex(0, 0).endVertex(); renderer.pos(-3, 1, 5).tex(1, 0).endVertex(); renderer.pos(-3, 0, 5).tex(1, 1).endVertex(); renderer.pos(-3, 0, 4).tex(1, 1).endVertex(); renderer.pos(-3, 1, 4).tex(1, 0).endVertex(); renderer.pos(-4, 1, 4).tex(0, 0).endVertex(); renderer.pos(-4, 0, 4).tex(0, 1).endVertex(); renderer.pos(-4, 0, 4).tex(0, 1).endVertex(); renderer.pos(-4, 1, 4).tex(0, 0).endVertex(); renderer.pos(-3, 1, 4).tex(1, 0).endVertex(); renderer.pos(-3, 0, 4).tex(1, 1).endVertex(); renderer.pos(-4, 0, 4).tex(1, 1).endVertex(); renderer.pos(-4, 1, 4).tex(1, 0).endVertex(); renderer.pos(-4, 1, 3).tex(0, 0).endVertex(); renderer.pos(-4, 0, 3).tex(0, 1).endVertex(); renderer.pos(-4, 0, 3).tex(0, 1).endVertex(); renderer.pos(-4, 1, 3).tex(0, 0).endVertex(); renderer.pos(-4, 1, 4).tex(1, 0).endVertex(); renderer.pos(-4, 0, 4).tex(1, 1).endVertex(); renderer.pos(-4, 0, 3).tex(1, 1).endVertex(); renderer.pos(-4, 1, 3).tex(1, 0).endVertex(); renderer.pos(-5, 1, 3).tex(0, 0).endVertex(); renderer.pos(-5, 0, 3).tex(0, 1).endVertex(); renderer.pos(-5, 0, 3).tex(0, 1).endVertex(); renderer.pos(-5, 1, 3).tex(0, 0).endVertex(); renderer.pos(-4, 1, 3).tex(1, 0).endVertex(); renderer.pos(-4, 0, 3).tex(1, 1).endVertex(); renderer.pos(-5, 0, 3).tex(1, 1).endVertex(); renderer.pos(-5, 1, 3).tex(1, 0).endVertex(); renderer.pos(-5, 1, 2).tex(0, 0).endVertex(); renderer.pos(-5, 0, 2).tex(0, 1).endVertex(); renderer.pos(-5, 0, 2).tex(0, 1).endVertex(); renderer.pos(-5, 1, 2).tex(0, 0).endVertex(); renderer.pos(-5, 1, 3).tex(1, 0).endVertex(); renderer.pos(-5, 0, 3).tex(1, 1).endVertex(); renderer.pos(-5, 0, 2).tex(1, 1).endVertex(); renderer.pos(-5, 1, 2).tex(1, 0).endVertex(); renderer.pos(-5, 1, 1).tex(0, 0).endVertex(); renderer.pos(-5, 0, 1).tex(0, 1).endVertex(); renderer.pos(-5, 0, 1).tex(0, 1).endVertex(); renderer.pos(-5, 1, 1).tex(0, 0).endVertex(); renderer.pos(-5, 1, 2).tex(1, 0).endVertex(); renderer.pos(-5, 0, 2).tex(1, 1).endVertex(); renderer.pos(-5, 0, 1).tex(1, 1).endVertex(); renderer.pos(-5, 1, 1).tex(1, 0).endVertex(); renderer.pos(-5, 1, 0).tex(0, 0).endVertex(); renderer.pos(-5, 0, 0).tex(0, 1).endVertex(); renderer.pos(-5, 0, 0).tex(0, 1).endVertex(); renderer.pos(-5, 1, 0).tex(0, 0).endVertex(); renderer.pos(-5, 1, 1).tex(1, 0).endVertex(); renderer.pos(-5, 0, 1).tex(1, 1).endVertex(); renderer.pos(-5, 0, 0).tex(1, 1).endVertex(); renderer.pos(-5, 1, 0).tex(1, 0).endVertex(); renderer.pos(-5, 1, -1).tex(0, 0).endVertex(); renderer.pos(-5, 0, -1).tex(0, 1).endVertex(); renderer.pos(-5, 0, -1).tex(0, 1).endVertex(); renderer.pos(-5, 1, -1).tex(0, 0).endVertex(); renderer.pos(-5, 1, 0).tex(1, 0).endVertex(); renderer.pos(-5, 0, 0).tex(1, 1).endVertex(); renderer.pos(-5, 0, -1).tex(1, 1).endVertex(); renderer.pos(-5, 1, -1).tex(1, 0).endVertex(); renderer.pos(-5, 1, -2).tex(0, 0).endVertex(); renderer.pos(-5, 0, -2).tex(0, 1).endVertex(); renderer.pos(-5, 0, -2).tex(0, 1).endVertex(); renderer.pos(-5, 1, -2).tex(0, 0).endVertex(); renderer.pos(-5, 1, -1).tex(1, 0).endVertex(); renderer.pos(-5, 0, -1).tex(1, 1).endVertex(); renderer.pos(-5, 0, -2).tex(1, 1).endVertex(); renderer.pos(-5, 1, -2).tex(1, 0).endVertex(); renderer.pos(-4, 1, -2).tex(0, 0).endVertex(); renderer.pos(-4, 0, -2).tex(0, 1).endVertex(); renderer.pos(-4, 0, -2).tex(0, 1).endVertex(); renderer.pos(-4, 1, -2).tex(0, 0).endVertex(); renderer.pos(-5, 1, -2).tex(1, 0).endVertex(); renderer.pos(-5, 0, -2).tex(1, 1).endVertex(); renderer.pos(-4, 0, -2).tex(1, 1).endVertex(); renderer.pos(-4, 1, -2).tex(1, 0).endVertex(); renderer.pos(-4, 1, -3).tex(0, 0).endVertex(); renderer.pos(-4, 0, -3).tex(0, 1).endVertex(); renderer.pos(-4, 0, -3).tex(0, 1).endVertex(); renderer.pos(-4, 1, -3).tex(0, 0).endVertex(); renderer.pos(-4, 1, -2).tex(1, 0).endVertex(); renderer.pos(-4, 0, -2).tex(1, 1).endVertex(); renderer.pos(-4, 0, -3).tex(1, 1).endVertex(); renderer.pos(-4, 1, -3).tex(1, 0).endVertex(); renderer.pos(-3, 1, -3).tex(0, 0).endVertex(); renderer.pos(-3, 0, -3).tex(0, 1).endVertex(); renderer.pos(-3, 0, -3).tex(0, 1).endVertex(); renderer.pos(-3, 1, -3).tex(0, 0).endVertex(); renderer.pos(-4, 1, -3).tex(1, 0).endVertex(); renderer.pos(-4, 0, -3).tex(1, 1).endVertex(); renderer.pos(-3, 0, -3).tex(1, 1).endVertex(); renderer.pos(-3, 1, -3).tex(1, 0).endVertex(); renderer.pos(-3, 1, -4).tex(0, 0).endVertex(); renderer.pos(-3, 0, -4).tex(0, 1).endVertex(); renderer.pos(-3, 0, -4).tex(0, 1).endVertex(); renderer.pos(-3, 1, -4).tex(0, 0).endVertex(); renderer.pos(-3, 1, -3).tex(1, 0).endVertex(); renderer.pos(-3, 0, -3).tex(1, 1).endVertex(); renderer.pos(-3, 0, -4).tex(1, 1).endVertex(); renderer.pos(-3, 1, -4).tex(1, 0).endVertex(); renderer.pos(-2, 1, -4).tex(0, 0).endVertex(); renderer.pos(-2, 0, -4).tex(0, 1).endVertex(); renderer.pos(-2, 0, -4).tex(0, 1).endVertex(); renderer.pos(-2, 1, -4).tex(0, 0).endVertex(); renderer.pos(-3, 1, -4).tex(1, 0).endVertex(); renderer.pos(-3, 0, -4).tex(1, 1).endVertex(); renderer.pos(-2, 0, -4).tex(1, 1).endVertex(); renderer.pos(-2, 1, -4).tex(1, 0).endVertex(); renderer.pos(-2, 1, -5).tex(0, 0).endVertex(); renderer.pos(-2, 0, -5).tex(0, 1).endVertex(); renderer.pos(-2, 0, -5).tex(0, 1).endVertex(); renderer.pos(-2, 1, -5).tex(0, 0).endVertex(); renderer.pos(-2, 1, -4).tex(1, 0).endVertex(); renderer.pos(-2, 0, -4).tex(1, 1).endVertex(); renderer.pos(-2, 0, -5).tex(1, 1).endVertex(); renderer.pos(-2, 1, -5).tex(1, 0).endVertex(); renderer.pos(-1, 1, -5).tex(0, 0).endVertex(); renderer.pos(-1, 0, -5).tex(0, 1).endVertex(); renderer.pos(-1, 0, -5).tex(0, 1).endVertex(); renderer.pos(-1, 1, -5).tex(0, 0).endVertex(); renderer.pos(-2, 1, -5).tex(1, 0).endVertex(); renderer.pos(-2, 0, -5).tex(1, 1).endVertex(); // renderer.pos(-1, 0, -5).tex(1, 1).endVertex(); renderer.pos(-1, 1, -5).tex(1, 0).endVertex(); renderer.pos(0, 1, -5).tex(0, 0).endVertex(); renderer.pos(0, 0, -5).tex(0, 1).endVertex(); renderer.pos(0, 0, -5).tex(0, 1).endVertex(); renderer.pos(0, 1, -5).tex(0, 0).endVertex(); renderer.pos(-1, 1, -5).tex(1, 0).endVertex(); renderer.pos(-1, 0, -5).tex(1, 1).endVertex(); renderer.pos(0, 0, -5).tex(1, 1).endVertex(); renderer.pos(0, 1, -5).tex(1, 0).endVertex(); renderer.pos(1, 1, -5).tex(0, 0).endVertex(); renderer.pos(1, 0, -5).tex(0, 1).endVertex(); renderer.pos(1, 0, -5).tex(0, 1).endVertex(); renderer.pos(1, 1, -5).tex(0, 0).endVertex(); renderer.pos(0, 1, -5).tex(1, 0).endVertex(); renderer.pos(0, 0, -5).tex(1, 1).endVertex(); renderer.pos(1, 0, -5).tex(1, 1).endVertex(); renderer.pos(1, 1, -5).tex(1, 0).endVertex(); renderer.pos(2, 1, -5).tex(0, 0).endVertex(); renderer.pos(2, 0, -5).tex(0, 1).endVertex(); renderer.pos(2, 0, -5).tex(0, 1).endVertex(); renderer.pos(2, 1, -5).tex(0, 0).endVertex(); renderer.pos(1, 1, -5).tex(1, 0).endVertex(); renderer.pos(1, 0, -5).tex(1, 1).endVertex(); renderer.pos(2, 0, -5).tex(1, 1).endVertex(); renderer.pos(2, 1, -5).tex(1, 0).endVertex(); renderer.pos(3, 1, -5).tex(0, 0).endVertex(); renderer.pos(3, 0, -5).tex(0, 1).endVertex(); renderer.pos(3, 0, -5).tex(0, 1).endVertex(); renderer.pos(3, 1, -5).tex(0, 0).endVertex(); renderer.pos(2, 1, -5).tex(1, 0).endVertex(); renderer.pos(2, 0, -5).tex(1, 1).endVertex(); renderer.pos(3, 0, -5).tex(1, 1).endVertex(); renderer.pos(3, 1, -5).tex(1, 0).endVertex(); renderer.pos(3, 1, -4).tex(0, 0).endVertex(); renderer.pos(3, 0, -4).tex(0, 1).endVertex(); renderer.pos(3, 0, -4).tex(0, 1).endVertex(); renderer.pos(3, 1, -4).tex(0, 0).endVertex(); renderer.pos(3, 1, -5).tex(1, 0).endVertex(); renderer.pos(3, 0, -5).tex(1, 1).endVertex(); renderer.pos(3, 0, -4).tex(1, 1).endVertex(); renderer.pos(3, 1, -4).tex(1, 0).endVertex(); renderer.pos(4, 1, -4).tex(0, 0).endVertex(); renderer.pos(4, 0, -4).tex(0, 1).endVertex(); renderer.pos(4, 0, -4).tex(0, 1).endVertex(); renderer.pos(4, 1, -4).tex(0, 0).endVertex(); renderer.pos(3, 1, -4).tex(1, 0).endVertex(); renderer.pos(3, 0, -4).tex(1, 1).endVertex(); renderer.pos(4, 0, -4).tex(1, 1).endVertex(); renderer.pos(4, 1, -4).tex(1, 0).endVertex(); renderer.pos(4, 1, -3).tex(0, 0).endVertex(); renderer.pos(4, 0, -3).tex(0, 1).endVertex(); renderer.pos(4, 0, -3).tex(0, 1).endVertex(); renderer.pos(4, 1, -3).tex(0, 0).endVertex(); renderer.pos(4, 1, -4).tex(1, 0).endVertex(); renderer.pos(4, 0, -4).tex(1, 1).endVertex(); renderer.pos(4, 0, -3).tex(1, 1).endVertex(); renderer.pos(4, 1, -3).tex(1, 0).endVertex(); renderer.pos(5, 1, -3).tex(0, 0).endVertex(); renderer.pos(5, 0, -3).tex(0, 1).endVertex(); renderer.pos(5, 0, -3).tex(0, 1).endVertex(); renderer.pos(5, 1, -3).tex(0, 0).endVertex(); renderer.pos(4, 1, -3).tex(1, 0).endVertex(); renderer.pos(4, 0, -3).tex(1, 1).endVertex(); renderer.pos(5, 0, -3).tex(1, 1).endVertex(); renderer.pos(5, 1, -3).tex(1, 0).endVertex(); renderer.pos(5, 1, -2).tex(0, 0).endVertex(); renderer.pos(5, 0, -2).tex(0, 1).endVertex(); renderer.pos(5, 0, -2).tex(0, 1).endVertex(); renderer.pos(5, 1, -2).tex(0, 0).endVertex(); renderer.pos(5, 1, -3).tex(1, 0).endVertex(); renderer.pos(5, 0, -3).tex(1, 1).endVertex(); renderer.pos(5, 0, -2).tex(1, 1).endVertex(); renderer.pos(5, 1, -2).tex(1, 0).endVertex(); renderer.pos(6, 1, -2).tex(0, 0).endVertex(); renderer.pos(6, 0, -2).tex(0, 1).endVertex(); renderer.pos(6, 0, -2).tex(0, 1).endVertex(); renderer.pos(6, 1, -2).tex(0, 0).endVertex(); renderer.pos(5, 1, -2).tex(1, 0).endVertex(); renderer.pos(5, 0, -2).tex(1, 1).endVertex(); renderer.pos(6, 0, -2).tex(1, 1).endVertex(); renderer.pos(6, 1, -2).tex(1, 0).endVertex(); renderer.pos(6, 1, -1).tex(0, 0).endVertex(); renderer.pos(6, 0, -1).tex(0, 1).endVertex(); renderer.pos(6, 0, -1).tex(0, 1).endVertex(); renderer.pos(6, 1, -1).tex(0, 0).endVertex(); renderer.pos(6, 1, -2).tex(1, 0).endVertex(); renderer.pos(6, 0, -2).tex(1, 1).endVertex(); // renderer.pos(6, 0, -1).tex(1, 1).endVertex(); renderer.pos(6, 1, -1).tex(1, 0).endVertex(); renderer.pos(6, 1, 0).tex(0, 0).endVertex(); renderer.pos(6, 0, 0).tex(0, 1).endVertex(); renderer.pos(6, 0, 0).tex(0, 1).endVertex(); renderer.pos(6, 1, 0).tex(0, 0).endVertex(); renderer.pos(6, 1, -1).tex(1, 0).endVertex(); renderer.pos(6, 0, -1).tex(1, 1).endVertex(); renderer.pos(6, 0, 0).tex(1, 1).endVertex(); renderer.pos(6, 1, 0).tex(1, 0).endVertex(); renderer.pos(6, 1, 1).tex(0, 0).endVertex(); renderer.pos(6, 0, 1).tex(0, 1).endVertex(); renderer.pos(6, 0, 1).tex(0, 1).endVertex(); renderer.pos(6, 1, 1).tex(0, 0).endVertex(); renderer.pos(6, 1, 0).tex(1, 0).endVertex(); renderer.pos(6, 0, 0).tex(1, 1).endVertex(); renderer.pos(6, 0, 1).tex(1, 1).endVertex(); renderer.pos(6, 1, 1).tex(1, 0).endVertex(); renderer.pos(6, 1, 2).tex(0, 0).endVertex(); renderer.pos(6, 0, 2).tex(0, 1).endVertex(); renderer.pos(6, 0, 2).tex(0, 1).endVertex(); renderer.pos(6, 1, 2).tex(0, 0).endVertex(); renderer.pos(6, 1, 1).tex(1, 0).endVertex(); renderer.pos(6, 0, 1).tex(1, 1).endVertex(); renderer.pos(6, 0, 2).tex(1, 1).endVertex(); renderer.pos(6, 1, 2).tex(1, 0).endVertex(); renderer.pos(6, 1, 3).tex(0, 0).endVertex(); renderer.pos(6, 0, 3).tex(0, 1).endVertex(); renderer.pos(6, 0, 3).tex(0, 1).endVertex(); renderer.pos(6, 1, 3).tex(0, 0).endVertex(); renderer.pos(6, 1, 2).tex(1, 0).endVertex(); renderer.pos(6, 0, 2).tex(1, 1).endVertex(); renderer.pos(6, 0, 3).tex(1, 1).endVertex(); renderer.pos(6, 1, 3).tex(1, 0).endVertex(); renderer.pos(5, 1, 3).tex(0, 0).endVertex(); renderer.pos(5, 0, 3).tex(0, 1).endVertex(); renderer.pos(5, 0, 3).tex(0, 1).endVertex(); renderer.pos(5, 1, 3).tex(0, 0).endVertex(); renderer.pos(6, 1, 3).tex(1, 0).endVertex(); renderer.pos(6, 0, 3).tex(1, 1).endVertex(); renderer.pos(5, 0, 3).tex(1, 1).endVertex(); renderer.pos(5, 1, 3).tex(1, 0).endVertex(); renderer.pos(5, 1, 4).tex(0, 0).endVertex(); renderer.pos(5, 0, 4).tex(0, 1).endVertex(); renderer.pos(5, 0, 4).tex(0, 1).endVertex(); renderer.pos(5, 1, 4).tex(0, 0).endVertex(); renderer.pos(5, 1, 3).tex(1, 0).endVertex(); renderer.pos(5, 0, 3).tex(1, 1).endVertex(); renderer.pos(5, 0, 4).tex(1, 1).endVertex(); renderer.pos(5, 1, 4).tex(1, 0).endVertex(); renderer.pos(4, 1, 4).tex(0, 0).endVertex(); renderer.pos(4, 0, 4).tex(0, 1).endVertex(); renderer.pos(4, 0, 4).tex(0, 1).endVertex(); renderer.pos(4, 1, 4).tex(0, 0).endVertex(); renderer.pos(5, 1, 4).tex(1, 0).endVertex(); renderer.pos(5, 0, 4).tex(1, 1).endVertex(); } }