Pedestal Trophy Model
基本信息
| 属性 | 值 |
|---|---|
| model ID | pedestal |
| 父类 | glowredman.amazingtrophies.api.TrophyModelHandler(被其余 4 个 model handler 继承作为 super.render()) |
| 注册处 | ClientHandler.registerTrophyModelHandlers()(first provider) |
| 资源路径 | 模型 amazingtrophies:models/trophy_pedestal.obj;贴图 amazingtrophies:textures/blocks/trophy_pedestal.png |
配置
无配置字段——该 handler 是所有 model handler 的渲染基座,本身写死加载 trophy_pedestal 模型和贴图;其余 4 个 model handler 都会通过 super.render(...) 调用它先画底座。
当
TrophyProperties.getModelHandler() == null时,RendererTrophy会回退到一个PedestalTrophyModelHandler()单例,仅渲染底座。
渲染细节
按视角:
- 绑定底座贴图 → 设置模型矩阵 → 用方块元数据
rotation(0–15,每档 22.5°)绕 Y 轴旋转。 - 调用
ModelWrapper.renderAll()渲染trophy_pedestal.obj。 - 若
name == null || name.isEmpty() || time == 0,跳过浮雕文字。 - 文字部分:将视角反向 180°,平移到基座正面
(0, -0.5, 0.376),缩放至0.00625f;用gtnhlib的FontRendering工具绘制玩家名 + 日期(按本地时区格式化%tF,缓存到Long2ObjectMap)。
标签渲染距离阈值:仅当相机相对奖杯距离平方 ≤ 32 * 32 时才绘制玩家名与日期(由 RendererTrophy 控制)。
触发位置
RendererTrophy.renderTileEntityAt(TESR)+ RendererTrophy.renderItem(ItemStack 渲染/手持)。
相关条目
源码
src/main/java/glowredman/amazingtrophies/model/PedestalTrophyModelHandler.java