static void renderBlockDamage(IBlockAccess world, BlockPos pos, IBlockState state, TextureAtlasSprite sprite) {
ICCBlockRenderer renderer = blockRendererList.get(state.getRenderType());
if (renderer != null) {
state = state.getActualState(world, pos);
//TODO This needs to be optimized, probably not the most efficient thing in the world..
BufferBuilder parent = Tessellator.getInstance().getBuffer();
BakingVertexBuffer buffer = BakingVertexBuffer.create();
buffer.setTranslation(-pos.getX(), -pos.getY(), -pos.getZ());
buffer.begin(7, parent.getVertexFormat());
renderer.handleRenderBlockDamage(world, pos, state, sprite, buffer);
buffer.finishDrawing();
buffer.setTranslation(0, 0, 0);
BlockModelRenderer modelRenderer = Minecraft.getMinecraft().getBlockRendererDispatcher().getBlockModelRenderer();
modelRenderer.renderModel(world, new PerspectiveAwareBakedModel(buffer.bake(), TransformUtils.DEFAULT_BLOCK, new ModelProperties(true, true, null)), state, pos, parent, true);
}
}
BlockRenderingRegistry.java 文件源码
java
阅读 15
收藏 0
点赞 0
评论 0
项目:CodeChickenLib
作者:
评论列表
文章目录