package com.hbm.render.tileentity; import org.lwjgl.opengl.GL11; import com.hbm.lib.RefStrings; import com.hbm.main.ResourceManager; import com.hbm.render.util.SoyuzPronter; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.ResourceLocation; import net.minecraftforge.client.model.AdvancedModelLoader; import net.minecraftforge.client.model.IModelCustom; public class RendererObjTester extends TileEntitySpecialRenderer { private static final ResourceLocation objTesterModelRL = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/TestObj.obj"); //private static final ResourceLocation objTesterModelRL = new ResourceLocation(/*"/assets/" + */RefStrings.MODID, "models/Prototype.obj"); private IModelCustom objTesterModel; private ResourceLocation objTesterTexture; public RendererObjTester() { objTesterModel = AdvancedModelLoader.loadModel(objTesterModelRL); objTesterTexture = new ResourceLocation(RefStrings.MODID, "textures/models/TestObj.png"); //objTesterTexture = new ResourceLocation(RefStrings.MODID, "textures/models/Prototype.png"); } @Override public void renderTileEntityAt(TileEntity tileEntity, double x, double y, double z, float f) { GL11.glPushMatrix(); GL11.glTranslated(x + 0.5, y, z + 0.5); GL11.glEnable(GL11.GL_LIGHTING); /*switch(tileEntity.getBlockMetadata()) { case 5: GL11.glRotatef(90, 0F, 1F, 0F); break; case 3: GL11.glRotatef(180, 0F, 1F, 0F); break; case 4: GL11.glRotatef(270, 0F, 1F, 0F); break; case 2: GL11.glRotatef(0, 0F, 1F, 0F); break; }*/ /*bindTexture(objTesterTexture); objTesterModel.renderAll();*/ //GL11.glScaled(5, 5, 5); /*GL11.glEnable(GL11.GL_LIGHTING); GL11.glEnable(GL11.GL_CULL_FACE); bindTexture(ResourceManager.sat_foeq_burning_tex); ResourceManager.sat_foeq_burning.renderAll(); GL11.glDisable(GL11.GL_TEXTURE_2D); GL11.glDisable(GL11.GL_CULL_FACE); GL11.glEnable(GL11.GL_BLEND); Random rand = new Random(System.currentTimeMillis() / 50); GL11.glScaled(1.15, 0.75, 1.15); GL11.glTranslated(0, -0.5, 0.3); GL11.glDisable(GL11.GL_CULL_FACE); for(int i = 0; i < 10; i++) { GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE); GL11.glColor3d(1, 0.75, 0.25); GL11.glRotatef(rand.nextInt(360), 0F, 1F, 0F); ResourceManager.sat_foeq_fire.renderAll(); GL11.glTranslated(0, 2, 0); GL11.glColor3d(1, 0.5, 0); GL11.glRotatef(rand.nextInt(360), 0F, 1F, 0F); ResourceManager.sat_foeq_fire.renderAll(); GL11.glTranslated(0, 2, 0); GL11.glColor3d(1, 0.25, 0); GL11.glRotatef(rand.nextInt(360), 0F, 1F, 0F); ResourceManager.sat_foeq_fire.renderAll(); GL11.glTranslated(0, 2, 0); GL11.glColor3d(1, 0.0, 0); GL11.glRotatef(rand.nextInt(360), 0F, 1F, 0F); ResourceManager.sat_foeq_fire.renderAll(); GL11.glTranslated(0, -3.8, 0); GL11.glScaled(0.95, 1.2, 0.95); } GL11.glDisable(GL11.GL_BLEND); GL11.glEnable(GL11.GL_TEXTURE_2D);*/ /*ModelCalBarrel barrel = new ModelCalBarrel(); ModelCalStock stock = new ModelCalStock(); ModelCalDualStock saddle = new ModelCalDualStock(); bindTexture(new ResourceLocation(RefStrings.MODID, "textures/models/ModelCalDualStock.png")); saddle.renderAll(1F/16F); bindTexture(new ResourceLocation(RefStrings.MODID, "textures/models/ModelCalBarrel.png")); GL11.glTranslated(0, 0, -0.25); barrel.renderAll(1F/16F); GL11.glTranslated(0, 0, 0.5); barrel.renderAll(1F/16F); bindTexture(new ResourceLocation(RefStrings.MODID, "textures/models/ModelCalStock.png"));*/ //stock.renderAll(1F/16F); //SoyuzPronter.prontSoyuz(2); //TomPronter.prontTom(); //BeamPronter.prontBeam(Vec3.createVectorHelper(5, 5, 5), EnumWaveType.SPIRAL, EnumBeamType.SOLID, 0xff8000, 0xff8000, (int)tileEntity.getWorldObj().getTotalWorldTime() % 360 * 25, 25, 0.1F, 4, 0.05F); //BeamPronter.prontBeam(Vec3.createVectorHelper(5, 5, 5), EnumWaveType.SPIRAL, EnumBeamType.SOLID, 0xffff00, 0xffff00, (int)tileEntity.getWorldObj().getTotalWorldTime() % 360 * 25, 1, 0F, 4, 0.05F); //BeamPronter.prontHelix(Vec3.createVectorHelper(0, 5, 0), 0.5, 0.5, 0.5, EnumWaveType.SPIRAL, EnumBeamType.LINE, 0x0000ff, 0xffff00, (int)tileEntity.getWorldObj().getTotalWorldTime() % 360 * 25 + 180, 25, 0.25F); //DiamondPronter.pront(1, 2, 3, EnumSymbol.OXIDIZER); //GL11.glTranslatef(0.0F, -0.25F, 0.0F); //GL11.glRotatef(-25, 0, 1, 0); //GL11.glRotatef(15, 0, 0, 1); long time = tileEntity.getWorldObj().getTotalWorldTime(); double sine = Math.sin(time * 0.05) * 5; double sin3 = Math.sin(time * 0.05 + Math.PI * 0.5) * 5; double sin2 = Math.sin(time * 0.05 + Math.PI); int height = 7; GL11.glTranslated(0.0F, height + sin2, 0.0F); GL11.glRotated(sine, 0, 0, 1); GL11.glRotated(sin3, 1, 0, 0); GL11.glTranslated(0.0F, -height, 0.0F); GL11.glEnable(GL11.GL_CULL_FACE); GL11.glShadeModel(GL11.GL_SMOOTH); bindTexture(ResourceManager.soyuz_lander_tex); ResourceManager.soyuz_lander.renderPart("Capsule"); bindTexture(ResourceManager.soyuz_chute_tex); ResourceManager.soyuz_lander.renderPart("Chute"); GL11.glShadeModel(GL11.GL_FLAT); GL11.glPopMatrix(); } }