Small rendering optimization

This commit is contained in:
paulevsGitch 2020-11-02 20:49:32 +03:00
parent 1360b4171c
commit 6f1077eea7
4 changed files with 17 additions and 17 deletions

View file

@ -35,8 +35,8 @@ import ru.betterend.blocks.basis.BlockChest;
import ru.betterend.blocks.entities.EChestBlockEntity;
import ru.betterend.registry.EndItems;
public class EChestBlockEntityRenderer extends BlockEntityRenderer<EChestBlockEntity> {
private static final HashMap<Integer, RenderLayer[]> LAYERS = Maps.newHashMap();
public class EndChestBlockEntityRenderer extends BlockEntityRenderer<EChestBlockEntity> {
private static final HashMap<Block, RenderLayer[]> LAYERS = Maps.newHashMap();
private static RenderLayer[] defaultLayer;
private static final int ID_NORMAL = 0;
@ -53,7 +53,7 @@ public class EChestBlockEntityRenderer extends BlockEntityRenderer<EChestBlockEn
private final ModelPart partLeftC;
private final ModelPart partLeftB;
public EChestBlockEntityRenderer(BlockEntityRenderDispatcher blockEntityRenderDispatcher) {
public EndChestBlockEntityRenderer(BlockEntityRenderDispatcher blockEntityRenderDispatcher) {
super(blockEntityRenderDispatcher);
this.partC = new ModelPart(64, 64, 0, 19);
@ -151,7 +151,7 @@ public class EChestBlockEntityRenderer extends BlockEntityRenderer<EChestBlockEn
}
public static VertexConsumer getConsumer(VertexConsumerProvider provider, Block block, ChestType chestType) {
RenderLayer[] layers = LAYERS.getOrDefault(Block.getRawIdFromState(block.getDefaultState()), defaultLayer);
RenderLayer[] layers = LAYERS.getOrDefault(block, defaultLayer);
return provider.getBuffer(getChestTexture(chestType, layers));
}
@ -167,7 +167,7 @@ public class EChestBlockEntityRenderer extends BlockEntityRenderer<EChestBlockEn
Block block = ((BlockItem) item).getBlock();
if (block instanceof BlockChest) {
String name = Registry.BLOCK.getId(block).getPath();
LAYERS.put(Block.getRawIdFromState(block.getDefaultState()), new RenderLayer[] {
LAYERS.put(block, new RenderLayer[] {
RenderLayer.getEntitySolid(BetterEnd.makeID("textures/entity/chest/" + name + ".png")),
RenderLayer.getEntitySolid(BetterEnd.makeID("textures/entity/chest/" + name + "_left.png")),
RenderLayer.getEntitySolid(BetterEnd.makeID("textures/entity/chest/" + name + "_right.png"))

View file

@ -32,12 +32,12 @@ import ru.betterend.blocks.basis.BlockSign;
import ru.betterend.blocks.entities.ESignBlockEntity;
import ru.betterend.registry.EndItems;
public class ESignBlockEntityRenderer extends BlockEntityRenderer<ESignBlockEntity> {
private static final HashMap<Integer, RenderLayer> LAYERS = Maps.newHashMap();
public class EndSignBlockEntityRenderer extends BlockEntityRenderer<ESignBlockEntity> {
private static final HashMap<Block, RenderLayer> LAYERS = Maps.newHashMap();
private static RenderLayer defaultLayer;
private final SignModel model = new SignBlockEntityRenderer.SignModel();
public ESignBlockEntityRenderer(BlockEntityRenderDispatcher dispatcher) {
public EndSignBlockEntityRenderer(BlockEntityRenderDispatcher dispatcher) {
super(dispatcher);
}
@ -100,19 +100,19 @@ public class ESignBlockEntityRenderer extends BlockEntityRenderer<ESignBlockEnti
}
public static VertexConsumer getConsumer(VertexConsumerProvider provider, Block block) {
return provider.getBuffer(LAYERS.getOrDefault(Block.getRawIdFromState(block.getDefaultState()), defaultLayer));
return provider.getBuffer(LAYERS.getOrDefault(block, defaultLayer));
}
static {
defaultLayer = RenderLayer.getEntitySolid(new Identifier("textures/entity/sign/oak.png"));
EndItems.getModBlocks().forEach((item) -> {
if (item instanceof BlockItem) {
Block block = ((BlockItem) item).getBlock();
if (block instanceof BlockSign) {
String name = Registry.BLOCK.getId(block).getPath();
RenderLayer layer = RenderLayer.getEntitySolid(BetterEnd.makeID("textures/entity/sign/" + name + ".png"));
LAYERS.put(Block.getRawIdFromState(block.getDefaultState()), layer);
LAYERS.put(block, layer);
}
}
});