Skip to content

自定义方块定义

Dynmap 支持通过数据驱动方法定义新方块,可以用于支持自定义方块类型,例如通过插件与客户端修改提供的方块。这些定义对 Dynmap 的射线追踪内部实现非常敏感,可能随未来版本的更新而改动或无效化,且不会提前告知——若有必要,尽力避免,请在大量投入之前理解我们的用意。

方块渲染的方式

在 Dynmap 中,方块渲染是通过一系列机制实现的,表现了 Minecraft 及其模组定义的不同类型方块。在所有情况中,渲染方块都包含两个核心元素:定义渲染方块的形状,以及用于在多种形状上添加颜色的纹理组。鉴于游戏本身由方块构成,大部分方块都只是简单的方形:因此,它们不需要自定义模型。

对模组自定义方块的支持文件通过每个模组分别对应的两个文件实现:其一定义纹理映射(名称后接 *-texture.txt,放在 renderdata 目录(或其下的子目录)),其二定义非方块模型(名称后接 *-models.txt,同样放在 renderdata 目录或其子目录中)。对于只有方块的模组,不需要包含任何 *-models.txt 文件(因为对于任何没有模型的物体而言它们默认算作方块)。

创建纹理与模型定义文件

  • 对于纹理与模型定义文件,详见“纹理通用功能与模型定义文件”。
  • 对于纹理定义文件的格式详情,请见“纹理定义文件”。
  • 对于模型定义文件的格式详情,请见“模型定义文件”。

定义方块

  • 定义简单的实心方块,请见“定义简单方块”章节。
  • 定义非一般方块的长方体模型,请见“定义立方体模型”章节。
  • 定义基于自定义方块渲染器的方块,请见“定义自定义渲染器方块”
  • 定义基于体积方块模型的方块,请见“定义体积模型方块”

贡献者

页面历史