EntityRendererProvider.java

net.minecraft.client.renderer.entity.EntityRendererProvider

信息

  • 全限定名:net.minecraft.client.renderer.entity.EntityRendererProvider
  • 类型:public interface
  • 包:net.minecraft.client.renderer.entity
  • 源码路径:src/main/java/net/minecraft/client/renderer/entity/EntityRendererProvider.java
  • 起始行号:L25
  • 职责:

    TODO

字段/常量

内部类/嵌套类型

  • net.minecraft.client.renderer.entity.EntityRendererProvider.Context
    • 类型: class
    • 修饰符: public static
    • 源码定位: L29
    • 说明:

      TODO

构造器

方法

下面的方法块按源码顺序生成。

EntityRenderer<T,?> create(EntityRendererProvider.Context context) @ L26

  • 方法名:create
  • 源码定位:L26
  • 返回类型:EntityRenderer<T,?>
  • 修饰符:package-private

参数:

  • context: EntityRendererProvider.Context

说明:

TODO

代码

@FunctionalInterface
@OnlyIn(Dist.CLIENT)
public interface EntityRendererProvider<T extends Entity> {
    EntityRenderer<T, ?> create(EntityRendererProvider.Context context);
 
    @OnlyIn(Dist.CLIENT)
    public static class Context {
        private final EntityRenderDispatcher entityRenderDispatcher;
        private final BlockModelResolver blockModelResolver;
        private final ItemModelResolver itemModelResolver;
        private final MapRenderer mapRenderer;
        private final ResourceManager resourceManager;
        private final EntityModelSet modelSet;
        private final EquipmentAssetManager equipmentAssets;
        private final Font font;
        private final EquipmentLayerRenderer equipmentRenderer;
        private final AtlasManager atlasManager;
        private final PlayerSkinRenderCache playerSkinRenderCache;
 
        public Context(
            EntityRenderDispatcher entityRenderDispatcher,
            BlockModelResolver blockModelResolver,
            ItemModelResolver itemModelResolver,
            MapRenderer mapRenderer,
            ResourceManager resourceManager,
            EntityModelSet modelSet,
            EquipmentAssetManager equipmentAssets,
            AtlasManager atlasManager,
            Font font,
            PlayerSkinRenderCache playerSkinRenderCache
        ) {
            this.entityRenderDispatcher = entityRenderDispatcher;
            this.blockModelResolver = blockModelResolver;
            this.itemModelResolver = itemModelResolver;
            this.mapRenderer = mapRenderer;
            this.resourceManager = resourceManager;
            this.modelSet = modelSet;
            this.equipmentAssets = equipmentAssets;
            this.font = font;
            this.atlasManager = atlasManager;
            this.playerSkinRenderCache = playerSkinRenderCache;
            this.equipmentRenderer = new EquipmentLayerRenderer(equipmentAssets, atlasManager.getAtlasOrThrow(AtlasIds.ARMOR_TRIMS));
        }
 
        public EntityRenderDispatcher getEntityRenderDispatcher() {
            return this.entityRenderDispatcher;
        }
 
        public BlockModelResolver getBlockModelResolver() {
            return this.blockModelResolver;
        }
 
        public ItemModelResolver getItemModelResolver() {
            return this.itemModelResolver;
        }
 
        public MapRenderer getMapRenderer() {
            return this.mapRenderer;
        }
 
        public ResourceManager getResourceManager() {
            return this.resourceManager;
        }
 
        public EntityModelSet getModelSet() {
            return this.modelSet;
        }
 
        public EquipmentAssetManager getEquipmentAssets() {
            return this.equipmentAssets;
        }
 
        public EquipmentLayerRenderer getEquipmentRenderer() {
            return this.equipmentRenderer;
        }
 
        public SpriteGetter getSprites() {
            return this.atlasManager;
        }
 
        public TextureAtlas getAtlas(Identifier sheet) {
            return this.atlasManager.getAtlasOrThrow(sheet);
        }
 
        public ModelPart bakeLayer(ModelLayerLocation id) {
            return this.modelSet.bakeLayer(id);
        }
 
        public Font getFont() {
            return this.font;
        }
 
        public PlayerSkinRenderCache getPlayerSkinRenderCache() {
            return this.playerSkinRenderCache;
        }
    }
}

引用的其他类