VexRenderer.java

net.minecraft.client.renderer.entity.VexRenderer

信息

  • 全限定名:net.minecraft.client.renderer.entity.VexRenderer
  • 类型:public class
  • 包:net.minecraft.client.renderer.entity
  • 源码路径:src/main/java/net/minecraft/client/renderer/entity/VexRenderer.java
  • 起始行号:L15
  • 继承:MobRenderer<Vex,VexRenderState,VexModel>
  • 职责:

    TODO

字段/常量

  • VEX_LOCATION

    • 类型: Identifier
    • 修饰符: private static final
    • 源码定位: L16
    • 说明:

      TODO

  • VEX_CHARGING_LOCATION

    • 类型: Identifier
    • 修饰符: private static final
    • 源码定位: L17
    • 说明:

      TODO

内部类/嵌套类型

构造器

public VexRenderer(EntityRendererProvider.Context context) @ L19

  • 构造器名:VexRenderer
  • 源码定位:L19
  • 修饰符:public

参数:

  • context: EntityRendererProvider.Context

说明:

TODO

方法

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

protected int getBlockLightLevel(Vex entity, BlockPos blockPos) @ L24

  • 方法名:getBlockLightLevel
  • 源码定位:L24
  • 返回类型:int
  • 修饰符:protected

参数:

  • entity: Vex
  • blockPos: BlockPos

说明:

TODO

public Identifier getTextureLocation(VexRenderState state) @ L28

  • 方法名:getTextureLocation
  • 源码定位:L28
  • 返回类型:Identifier
  • 修饰符:public

参数:

  • state: VexRenderState

说明:

TODO

public VexRenderState createRenderState() @ L32

  • 方法名:createRenderState
  • 源码定位:L32
  • 返回类型:VexRenderState
  • 修饰符:public

参数:

说明:

TODO

public void extractRenderState(Vex entity, VexRenderState state, float partialTicks) @ L36

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

参数:

  • entity: Vex
  • state: VexRenderState
  • partialTicks: float

说明:

TODO

代码

@OnlyIn(Dist.CLIENT)
public class VexRenderer extends MobRenderer<Vex, VexRenderState, VexModel> {
    private static final Identifier VEX_LOCATION = Identifier.withDefaultNamespace("textures/entity/illager/vex.png");
    private static final Identifier VEX_CHARGING_LOCATION = Identifier.withDefaultNamespace("textures/entity/illager/vex_charging.png");
 
    public VexRenderer(EntityRendererProvider.Context context) {
        super(context, new VexModel(context.bakeLayer(ModelLayers.VEX)), 0.3F);
        this.addLayer(new ItemInHandLayer<>(this));
    }
 
    protected int getBlockLightLevel(Vex entity, BlockPos blockPos) {
        return 15;
    }
 
    public Identifier getTextureLocation(VexRenderState state) {
        return state.isCharging ? VEX_CHARGING_LOCATION : VEX_LOCATION;
    }
 
    public VexRenderState createRenderState() {
        return new VexRenderState();
    }
 
    public void extractRenderState(Vex entity, VexRenderState state, float partialTicks) {
        super.extractRenderState(entity, state, partialTicks);
        ArmedEntityRenderState.extractArmedEntityRenderState(entity, state, this.itemModelResolver, partialTicks);
        state.isCharging = entity.isCharging();
    }
}

引用的其他类

  • VexModel

    • 引用位置: 构造调用
    • 关联成员: VexModel()
  • EntityRendererProvider

    • 引用位置: 参数
  • MobRenderer

    • 引用位置: 继承
  • ArmedEntityRenderState

    • 引用位置: 方法调用
    • 关联成员: ArmedEntityRenderState.extractArmedEntityRenderState()
  • VexRenderState

    • 引用位置: 参数/构造调用/返回值
    • 关联成员: VexRenderState()
  • BlockPos

    • 引用位置: 参数
  • Identifier

    • 引用位置: 字段/方法调用/返回值
    • 关联成员: Identifier.withDefaultNamespace()
  • Vex

    • 引用位置: 参数