ArrowRenderer.java
net.minecraft.client.renderer.entity.ArrowRenderer
信息
- 全限定名:net.minecraft.client.renderer.entity.ArrowRenderer
- 类型:public abstract class
- 包:net.minecraft.client.renderer.entity
- 源码路径:src/main/java/net/minecraft/client/renderer/entity/ArrowRenderer.java
- 起始行号:L17
- 继承:EntityRenderer<T,S>
- 职责:
TODO
字段/常量
model- 类型:
ArrowModel - 修饰符:
private final - 源码定位:
L18 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public ArrowRenderer(EntityRendererProvider.Context context) @ L20
- 构造器名:ArrowRenderer
- 源码定位:L20
- 修饰符:public
参数:
- context: EntityRendererProvider.Context
说明:
TODO
方法
下面的方法块按源码顺序生成。
public void submit(S state, PoseStack poseStack, SubmitNodeCollector submitNodeCollector, CameraRenderState camera) @ L25
- 方法名:submit
- 源码定位:L25
- 返回类型:void
- 修饰符:public
参数:
- state: S
- poseStack: PoseStack
- submitNodeCollector: SubmitNodeCollector
- camera: CameraRenderState
说明:
TODO
protected abstract Identifier getTextureLocation(S state) @ L36
- 方法名:getTextureLocation
- 源码定位:L36
- 返回类型:Identifier
- 修饰符:protected abstract
参数:
- state: S
说明:
TODO
public void extractRenderState(T entity, S state, float partialTicks) @ L38
- 方法名:extractRenderState
- 源码定位:L38
- 返回类型:void
- 修饰符:public
参数:
- entity: T
- state: S
- partialTicks: float
说明:
TODO
代码
@OnlyIn(Dist.CLIENT)
public abstract class ArrowRenderer<T extends AbstractArrow, S extends ArrowRenderState> extends EntityRenderer<T, S> {
private final ArrowModel model;
public ArrowRenderer(EntityRendererProvider.Context context) {
super(context);
this.model = new ArrowModel(context.bakeLayer(ModelLayers.ARROW));
}
public void submit(S state, PoseStack poseStack, SubmitNodeCollector submitNodeCollector, CameraRenderState camera) {
poseStack.pushPose();
poseStack.mulPose(Axis.YP.rotationDegrees(state.yRot - 90.0F));
poseStack.mulPose(Axis.ZP.rotationDegrees(state.xRot));
submitNodeCollector.submitModel(
this.model, state, poseStack, this.getTextureLocation(state), state.lightCoords, OverlayTexture.NO_OVERLAY, state.outlineColor, null
);
poseStack.popPose();
super.submit(state, poseStack, submitNodeCollector, camera);
}
protected abstract Identifier getTextureLocation(S state);
public void extractRenderState(T entity, S state, float partialTicks) {
super.extractRenderState(entity, state, partialTicks);
state.xRot = entity.getXRot(partialTicks);
state.yRot = entity.getYRot(partialTicks);
state.shake = entity.shakeTime - partialTicks;
}
}引用的其他类
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
字段/构造调用 - 关联成员:
ArrowModel()
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
继承
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
参数
- 引用位置:
-
- 引用位置:
返回值
- 引用位置: