2021-07-09 22:24:26 +02:00
|
|
|
package com.jozufozu.flywheel.vanilla;
|
|
|
|
|
2022-01-04 06:41:08 +01:00
|
|
|
import static com.jozufozu.flywheel.backend.instancing.InstancedRenderRegistry.configure;
|
2021-07-09 22:24:26 +02:00
|
|
|
|
2021-09-15 08:45:29 +02:00
|
|
|
import net.minecraft.world.entity.EntityType;
|
|
|
|
import net.minecraft.world.level.block.entity.BlockEntityType;
|
2021-07-09 22:24:26 +02:00
|
|
|
|
2021-07-12 23:52:54 +02:00
|
|
|
/**
|
|
|
|
* TODO:
|
|
|
|
* <table>
|
2021-12-15 07:00:44 +01:00
|
|
|
* <tr><td>{@link BlockEntityType#SIGN}</td><td> {@link net.minecraft.client.renderer.blockentity.SignRenderer SignRenderer}</td></tr>
|
|
|
|
* <tr><td>{@link BlockEntityType#PISTON}</td><td> {@link net.minecraft.client.renderer.blockentity.PistonHeadRenderer PistonHeadRenderer}</td></tr>
|
|
|
|
* <tr><td>{@link BlockEntityType#CONDUIT}</td><td> {@link net.minecraft.client.renderer.blockentity.ConduitRenderer ConduitRenderer}</td></tr>
|
|
|
|
* <tr><td>{@link BlockEntityType#ENCHANTING_TABLE}</td><td> {@link net.minecraft.client.renderer.blockentity.EnchantTableRenderer EnchantTableRenderer}</td></tr>
|
|
|
|
* <tr><td>{@link BlockEntityType#LECTERN}</td><td> {@link net.minecraft.client.renderer.blockentity.LecternRenderer LecternRenderer}</td></tr>
|
|
|
|
* <tr><td>{@link BlockEntityType#MOB_SPAWNER}</td><td> {@link net.minecraft.client.renderer.blockentity.SpawnerRenderer SpawnerRenderer}</td></tr>
|
|
|
|
* <tr><td>{@link BlockEntityType#BED}</td><td> {@link net.minecraft.client.renderer.blockentity.BedRenderer BedRenderer}</td></tr>
|
2021-07-18 02:05:49 +02:00
|
|
|
* <tr><td>^^ Interesting - Major vv</td></tr>
|
2021-12-15 07:00:44 +01:00
|
|
|
* <tr><td>{@link BlockEntityType#END_PORTAL}</td><td> {@link net.minecraft.client.renderer.blockentity.TheEndPortalRenderer TheEndPortalRenderer}</td></tr>
|
|
|
|
* <tr><td>{@link BlockEntityType#END_GATEWAY}</td><td> {@link net.minecraft.client.renderer.blockentity.TheEndGatewayRenderer TheEndGatewayRenderer}</td></tr>
|
|
|
|
* <tr><td>{@link BlockEntityType#BEACON}</td><td> {@link net.minecraft.client.renderer.blockentity.BeaconRenderer BeaconRenderer}</td></tr>
|
|
|
|
* <tr><td>{@link BlockEntityType#SKULL}</td><td> {@link net.minecraft.client.renderer.blockentity.SkullBlockRenderer SkullBlockRenderer}</td></tr>
|
|
|
|
* <tr><td>{@link BlockEntityType#BANNER}</td><td> {@link net.minecraft.client.renderer.blockentity.BannerRenderer BannerRenderer}</td></tr>
|
|
|
|
* <tr><td>{@link BlockEntityType#STRUCTURE_BLOCK}</td><td> {@link net.minecraft.client.renderer.debug.StructureRenderer StructureRenderer}</td></tr>
|
|
|
|
* <tr><td>{@link BlockEntityType#CAMPFIRE}</td><td> {@link net.minecraft.client.renderer.blockentity.CampfireRenderer CampfireRenderer}</td></tr>
|
2021-07-12 23:52:54 +02:00
|
|
|
* </table>
|
|
|
|
*/
|
2021-07-09 22:24:26 +02:00
|
|
|
public class VanillaInstances {
|
|
|
|
|
|
|
|
public static void init() {
|
2022-01-04 06:41:08 +01:00
|
|
|
configure(BlockEntityType.CHEST)
|
|
|
|
.alwaysSkipRender()
|
|
|
|
.factory(ChestInstance::new)
|
|
|
|
.apply();
|
|
|
|
configure(BlockEntityType.ENDER_CHEST)
|
|
|
|
.alwaysSkipRender()
|
|
|
|
.factory(ChestInstance::new)
|
|
|
|
.apply();
|
|
|
|
configure(BlockEntityType.TRAPPED_CHEST)
|
|
|
|
.alwaysSkipRender()
|
|
|
|
.factory(ChestInstance::new)
|
|
|
|
.apply();
|
2021-07-09 22:24:26 +02:00
|
|
|
|
2022-01-04 06:41:08 +01:00
|
|
|
configure(BlockEntityType.BELL)
|
|
|
|
.alwaysSkipRender()
|
|
|
|
.factory(BellInstance::new)
|
|
|
|
.apply();
|
2021-07-12 23:52:54 +02:00
|
|
|
|
2022-01-04 06:41:08 +01:00
|
|
|
configure(BlockEntityType.SHULKER_BOX)
|
|
|
|
.alwaysSkipRender()
|
|
|
|
.factory(ShulkerBoxInstance::new)
|
|
|
|
.apply();
|
2021-07-19 00:05:12 +02:00
|
|
|
|
2022-01-04 06:41:08 +01:00
|
|
|
configure(EntityType.MINECART)
|
2022-05-21 06:14:31 +02:00
|
|
|
.skipRender(MinecartInstance::shouldSkipRender)
|
2022-01-04 06:41:08 +01:00
|
|
|
.factory(MinecartInstance::new)
|
|
|
|
.apply();
|
2022-05-21 06:14:31 +02:00
|
|
|
configure(EntityType.COMMAND_BLOCK_MINECART)
|
|
|
|
.skipRender(MinecartInstance::shouldSkipRender)
|
2022-01-04 06:41:08 +01:00
|
|
|
.factory(MinecartInstance::new)
|
|
|
|
.apply();
|
|
|
|
configure(EntityType.FURNACE_MINECART)
|
2022-05-21 06:14:31 +02:00
|
|
|
.skipRender(MinecartInstance::shouldSkipRender)
|
|
|
|
.factory(MinecartInstance::new)
|
|
|
|
.apply();
|
|
|
|
configure(EntityType.HOPPER_MINECART)
|
|
|
|
.skipRender(MinecartInstance::shouldSkipRender)
|
|
|
|
.factory(MinecartInstance::new)
|
|
|
|
.apply();
|
|
|
|
configure(EntityType.TNT_MINECART)
|
|
|
|
.skipRender(MinecartInstance::shouldSkipRender)
|
2022-01-04 06:41:08 +01:00
|
|
|
.factory(MinecartInstance::new)
|
|
|
|
.apply();
|
2021-07-09 22:24:26 +02:00
|
|
|
}
|
|
|
|
}
|