微缩方块¶
微缩方块(Micro Block)是中国版模组SDK中一种把较大范围的方块形状预处理为单个可放置方块资源的机制。它通过预先记录体素化后的方块数据,在游戏内以一个方块物品的形式复现更复杂的局部结构。
概述¶
普通方块通常只占据一个标准方格,并依赖固定几何体、方块状态或客户端实体表现来描述外观。微缩方块则把一个更大的三维区域缩并为单个“微缩资源”,再在放置时作为一个整体渲染。因此,它更接近一种预烘焙的小型体素模型,而不是常规意义上的自定义方块组件组合。
旧版中国版资料说明,微缩方块主要用于把地图中的局部结构、雕塑或复杂装饰压缩成可重复放置的内容。它适合制作需要整体复用的小型模型,但不适合承载复杂交互逻辑。
资源构成¶
微缩方块通常同时包含两部分资源:
- 行为包中的
netease_micro_blocks/:声明微缩方块标识符、是否加入创造模式物品栏,以及占用的方格尺寸。 - 资源包中的
models/netease_micro_block/:保存实际渲染所需的微缩体素数据、引用的方块表和图标信息。
旧版资料要求微缩方块标识符以micro_block:开头,否则游戏不会将其识别为微缩方块。其资源并不依赖普通自定义方块常见的组件体系;旧版资料明确指出,微缩方块不支持直接复用原版或中国版普通方块的JSON组件。
尺寸与数据¶
微缩方块会声明一个尺寸(Size),用于描述它在世界中占据多少个标准方格。旧版资料给出的上限为4×4×4。与此同时,资源数据中还会记录更细粒度的渲染体素尺寸,例如把一个标准方格进一步细分为16×16×16级别的数据。
从概念上看,微缩方块包含以下几类核心信息:
- 标识符(Identifier):把行为包声明与资源包渲染数据对应起来。
- 尺寸信息:说明该资源在世界中占据的方格范围。
- 方块表:列出该微缩资源内部使用到的原始方块类型、附加值和可选颜色信息。
- 体素数据:描述每个细分位置应渲染哪一种方块。
生成方式¶
旧版中国版资料把微缩方块视为“预生成资源”。开发者通常先选取世界中的一个区域,再通过中国版模组SDK接口导出对应的微缩资源字符串,并将结果保存为资源包文件。由此可见,微缩方块并不是主要依赖手写JSON逐项定义的机制,而更依赖工具或运行时接口生成结果。
限制¶
微缩方块有若干明显边界:
- 导出的资源重点是方块数据,不以实体数据为核心。
- 未加载区域不能完整参与导出。
- 资源体积越大,初始加载成本越高。
- 它更适合静态外观复用,不适合承担复杂状态变化。
旧版资料还指出,移动端在加载大量高分辨率微缩方块数据时,启动时间会明显上升。因此,微缩方块更适合作为少量高价值装饰资源,而不是大规模替代常规方块系统。
与普通自定义方块的区别¶
普通自定义方块更强调组件、事件、状态与交互;微缩方块更强调把既有结构压缩成可复用外观。前者是规则驱动的方块定义,后者是预生成的体素表现资源。两者都可以表现为“一个可放置的方块”,但设计目标并不相同。