• 论坛

导航

  • 主页
  • 样式指南
  • 入门
    • 概述
    • Mod的结构
    • Forge更新检查器
    • 依赖管理
    • 调试分析器
  • 概念
    • Sides
    • 资源
    • 注册表
    • Jar签名
    • 国际化和本地化
  • 方块
    • 概述
    • 介绍方块状态
    • 方块互动
  • 动画 API
    • 概述
    • 骨骼
    • 动画状态机
    • 使用API
  • TileEntity
    • 概述
    • 特殊渲染器
  • 物品
    • 主页
    • 战利品表
  • 模型
    • 模型概述
    • 模型文件
    • 方块状态
      • 方块状态JSON概述
      • Forge方块状态JSON
    • 绑定模型到方块和物品
    • 彩色纹理
    • 物品属性概述
    • 高级模型(未翻译)
      • 高级模型介绍
      • IModel
      • IModelState and IModelPart
      • IBakedModel
      • Extended Blockstates
      • Perspective
      • ItemOverrideList
      • ICustomModelLoader
  • 渲染
    • TileEntityItemStackRenderer
  • 事件
    • 基本用法
  • 网络
    • 主页
    • 概述
    • SimpleImpl
    • 实体
  • 数据储存
    • 能力系统
    • World Saved Data
    • 拓展实体属性
    • Config注解
  • 工具
    • 合成
    • 矿物词典
    • 权限API
  • 效果
    • 音效
  • 惯例
    • 版本命名
    • 文件位置
    • 加载阶段
  • 参与Forge开发
    • 入门
    • PR指南

提示

该功能仅存在于forge版本>= 14.23.2.2638.

TileEntityItemStackRenderer是一个用OpenGL渲染物品的方法. 该系统比原本的TESRItemStack系统要简单, 它需要一个 TileEntity, 并且不需要获得ItemStack.

使用TileEntityItemStackRenderer

TileEntityItemStackRenderer 允许你用 public void renderByItem(ItemStack itemStackIn)渲染物品.
有一个重载会将partialTicks作为参数,但它永远没在原版中调用。

要使用TEISR,物品首先必须其模型的IBakedModel#isBuiltInRenderer返回true 一旦返回true,将访问Item的TEISR进行渲染。 如果它没有,它将使用默认的TileEntityItemStackRenderer.instance。

Item设置TEISR,请使用Item#setTileEntityItemStackRenderer。 每个Item只能提供一个TEISR,而getter是final的,因此mods不会每帧返回新的实例。

就是这样,使用TEISR不需要额外的设置。

如果需要访问TransformType进行渲染,可以储存通过IBakedModel#handlePerspective传递的TransformType,并在渲染过程中使用它。 始终在TileEntityItemStackRenderer#renderByItem之前调用此方法。

基于 MkDocs 使用自定义主题构建. 托管于 Read the Docs.
启用夜间模式