RenderTicker
基本信息
| 属性 | 值 |
|---|---|
| 路径 | mrtjp.core.render.RenderTicker |
| 源码 | src/main/scala/mrtjp/core/render/RenderTicker.scala(28 行) |
渲染帧计数器。同时订阅 ClientTickEvent 与 RenderTickEvent。
| 成员 | 说明 |
|---|---|
clientTick(event) |
客户端 tick 时递增 renderTime |
renderTick(event) |
渲染时递增 renderFrame |
getRenderFrame |
当前渲染帧序号 |
getRenderTime |
renderTime + renderFrame(小数帧插值时间) |
用于动画插值:按 getRenderTime 在关键帧之间做线性插值,避免动画卡顿。
由 MrTJPCoreProxy 在客户端 postInit 双重注册
(既注册到 FMLCommonHandler.bus 又注册到 MinecraftForge.EVENT_BUS)。
缺陷
两个事件总线都注册同一个 RenderTicker:ClientTickEvent 实际属于 FML 总线,
而 RenderTickEvent 属于 Forge 总线。因 clientTick 标注了 @SubscribeEvent 但无
Event.isCanceled 处理,重复注册不会导致重复计数(事件类型不同),但属冗余写法。