Jump to content

[1.8.9] TileEntitySpecialRenderer.renderTileEntityAt() being rendered as a cube


Recommended Posts

Posted

I rendered my block with no errors except my "block" is a cube. I used this method because It allows me to rotate the block using OpenGL

 

This is my rendering Code:

 

 

public class CyrstalRenderer extends TileEntitySpecialRenderer {

 

public static final ResourceLocation texture = new ResourceLocation(ECRef.MODID + ":" + "textures/blocks/crystal.png");

private static final ModelResourceLocation loc = new ModelResourceLocation(ECRef.MODID + ":" + "models/block/crystal.obj");

 

Function<ResourceLocation, TextureAtlasSprite> textureGetter = new Function<ResourceLocation, TextureAtlasSprite>() {

public TextureAtlasSprite apply(ResourceLocation location) {

return Minecraft.getMinecraft().getTextureMapBlocks().getAtlasSprite(location.toString());

}

};

 

public void renderTileEntityAt(TileEntity te, double x, double y, double z, float partialTicks, int destroyStage) {

Tessellator tessellator = Tessellator.getInstance();

this.bindTexture(texture);

 

WorldRenderer worldRenderer = tessellator.getWorldRenderer();

GL11.glPushMatrix();

GL11.glTranslated(x, y, z);

GL11.glRotatef(45, 0.0f, 0.0f, 1.0f);

IModel crystalModel = null;

try {

crystalModel = OBJLoader.instance.loadModel(loc);

} catch (IOException e) {

crystalModel = ModelLoaderRegistry.getMissingModel();

e.printStackTrace();

}

IBakedModel bakedModel = crystalModel.bake((TRSRTransformation.identity()), Attributes.DEFAULT_BAKED_FORMAT, textureGetter);

worldRenderer.begin(7, Attributes.DEFAULT_BAKED_FORMAT);// StartDrawingQuads

 

List<BakedQuad> generalQuads = bakedModel.getGeneralQuads();

for (BakedQuad q : generalQuads)

{

int[] vd = q.getVertexData();

worldRenderer.addVertexData(vd);

}

for (EnumFacing face : EnumFacing.values())

{

List<BakedQuad> faceQuads = bakedModel.getFaceQuads(face);

for (BakedQuad q : faceQuads)

{

int[] vd = q.getVertexData();

worldRenderer.addVertexData(vd);

}

}

tessellator.draw();

GL11.glPopMatrix();

 

}

 

}

 

 

Guest
This topic is now closed to further replies.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.