LoadedBlockModels.java
net.minecraft.client.renderer.block.LoadedBlockModels
信息
- 全限定名:net.minecraft.client.renderer.block.LoadedBlockModels
- 类型:public class
- 包:net.minecraft.client.renderer.block
- 源码路径:src/main/java/net/minecraft/client/renderer/block/LoadedBlockModels.java
- 起始行号:L23
- 职责:
TODO
字段/常量
-
IDENTITY- 类型:
Matrix4fc - 修饰符:
private static final - 源码定位:
L24 - 说明:
TODO
- 类型:
-
unbakedModels- 类型:
Map<BlockState,BlockModel.Unbaked> - 修饰符:
private final - 源码定位:
L25 - 说明:
TODO
- 类型:
-
entityModelSet- 类型:
EntityModelSet - 修饰符:
private final - 源码定位:
L26 - 说明:
TODO
- 类型:
-
sprites- 类型:
SpriteGetter - 修饰符:
private final - 源码定位:
L27 - 说明:
TODO
- 类型:
-
playerSkinRenderCache- 类型:
PlayerSkinRenderCache - 修饰符:
private final - 源码定位:
L28 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public LoadedBlockModels(Map<BlockState,BlockModel.Unbaked> unbakedModels, EntityModelSet entityModelSet, SpriteGetter sprites, PlayerSkinRenderCache playerSkinRenderCache) @ L30
- 构造器名:LoadedBlockModels
- 源码定位:L30
- 修饰符:public
参数:
- unbakedModels: Map<BlockState,BlockModel.Unbaked>
- entityModelSet: EntityModelSet
- sprites: SpriteGetter
- playerSkinRenderCache: PlayerSkinRenderCache
说明:
TODO
方法
下面的方法块按源码顺序生成。
public CompletableFuture<Map<BlockState,BlockModel>> bake(Function<BlockState,BlockStateModel> bakedBlockStateModels, BlockStateModel missingModel, Executor executor) @ L39
- 方法名:bake
- 源码定位:L39
- 返回类型:CompletableFuture<Map<BlockState,BlockModel>>
- 修饰符:public
参数:
- bakedBlockStateModels: Function<BlockState,BlockStateModel>
- missingModel: BlockStateModel
- executor: Executor
说明:
TODO
代码
@OnlyIn(Dist.CLIENT)
public class LoadedBlockModels {
private static final Matrix4fc IDENTITY = new Matrix4f();
private final Map<BlockState, BlockModel.Unbaked> unbakedModels;
private final EntityModelSet entityModelSet;
private final SpriteGetter sprites;
private final PlayerSkinRenderCache playerSkinRenderCache;
public LoadedBlockModels(
Map<BlockState, BlockModel.Unbaked> unbakedModels, EntityModelSet entityModelSet, SpriteGetter sprites, PlayerSkinRenderCache playerSkinRenderCache
) {
this.unbakedModels = unbakedModels;
this.entityModelSet = entityModelSet;
this.sprites = sprites;
this.playerSkinRenderCache = playerSkinRenderCache;
}
public CompletableFuture<Map<BlockState, BlockModel>> bake(
Function<BlockState, BlockStateModel> bakedBlockStateModels, BlockStateModel missingModel, Executor executor
) {
return CompletableFuture.supplyAsync(
() -> {
BlockModel wrappedMissingModel = new BlockStateModelWrapper(missingModel, List.of(), IDENTITY);
BlockModel.BakingContext context = new BlockModel.BakingContext(
this.entityModelSet, this.sprites, this.playerSkinRenderCache, bakedBlockStateModels, wrappedMissingModel
);
Builder<BlockState, BlockModel> result = ImmutableMap.builder();
this.unbakedModels.forEach((blockState, unbakedModel) -> result.put(blockState, unbakedModel.bake(context, IDENTITY)));
return result.build();
},
executor
);
}
}引用的其他类
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
参数/字段/方法调用/构造调用/返回值 - 关联成员:
BakingContext(), BlockModel.BakingContext()
- 引用位置:
-
- 引用位置:
构造调用 - 关联成员:
BlockStateModelWrapper()
- 引用位置:
-
- 引用位置:
参数/字段
- 引用位置:
-
- 引用位置:
参数/字段/返回值
- 引用位置: