BlockEntityRenderState.java

net.minecraft.client.renderer.blockentity.state.BlockEntityRenderState

信息

  • 全限定名:net.minecraft.client.renderer.blockentity.state.BlockEntityRenderState
  • 类型:public class
  • 包:net.minecraft.client.renderer.blockentity.state
  • 源码路径:src/main/java/net/minecraft/client/renderer/blockentity/state/BlockEntityRenderState.java
  • 起始行号:L16
  • 职责:

    TODO

字段/常量

  • blockPos

    • 类型: BlockPos
    • 修饰符: public
    • 源码定位: L17
    • 说明:

      TODO

  • blockState

    • 类型: BlockState
    • 修饰符: private
    • 源码定位: L18
    • 说明:

      TODO

  • blockEntityType

    • 类型: BlockEntityType<?>
    • 修饰符: public
    • 源码定位: L19
    • 说明:

      TODO

  • lightCoords

    • 类型: int
    • 修饰符: public
    • 源码定位: L20
    • 说明:

      TODO

  • breakProgress

    • 类型: ModelFeatureRenderer.CrumblingOverlay
    • 修饰符: public
    • 源码定位: L21
    • 说明:

      TODO

内部类/嵌套类型

构造器

方法

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

public static void extractBase(BlockEntity blockEntity, BlockEntityRenderState state, ModelFeatureRenderer.CrumblingOverlay breakProgress) @ L23

  • 方法名:extractBase
  • 源码定位:L23
  • 返回类型:void
  • 修饰符:public static

参数:

  • blockEntity: BlockEntity
  • state: BlockEntityRenderState
  • breakProgress: ModelFeatureRenderer.CrumblingOverlay

说明:

TODO

public void fillCrashReportCategory(CrashReportCategory category) @ L31

  • 方法名:fillCrashReportCategory
  • 源码定位:L31
  • 返回类型:void
  • 修饰符:public

参数:

  • category: CrashReportCategory

说明:

TODO

代码

@OnlyIn(Dist.CLIENT)
public class BlockEntityRenderState {
    public BlockPos blockPos = BlockPos.ZERO;
    private BlockState blockState = Blocks.AIR.defaultBlockState();
    public BlockEntityType<?> blockEntityType = BlockEntityType.TEST_BLOCK;
    public int lightCoords;
    public ModelFeatureRenderer.@Nullable CrumblingOverlay breakProgress;
 
    public static void extractBase(BlockEntity blockEntity, BlockEntityRenderState state, ModelFeatureRenderer.@Nullable CrumblingOverlay breakProgress) {
        state.blockPos = blockEntity.getBlockPos();
        state.blockState = blockEntity.getBlockState();
        state.blockEntityType = blockEntity.getType();
        state.lightCoords = blockEntity.getLevel() != null ? LevelRenderer.getLightCoords(blockEntity.getLevel(), blockEntity.getBlockPos()) : 15728880;
        state.breakProgress = breakProgress;
    }
 
    public void fillCrashReportCategory(CrashReportCategory category) {
        category.setDetail("BlockEntityRenderState", this.getClass().getCanonicalName());
        category.setDetail("Position", this.blockPos);
        category.setDetail("Block state", this.blockState::toString);
    }
}

引用的其他类