Blockbench · Item model · Animation

做一根会旋转发光的能量球魔法棒

这是一堂可以直接打开源工程跟做的免费课程。我们会拆解 teacherma-magic-wand.bbmodel:先用方块和网格搭出法杖轮廓,再画金色杖头、蓝紫渐变杖身和青色光束,最后用两个关键帧完成 3 秒循环旋转。你不需要从空白画布猜尺寸,每一步都有真实工程数据和截图作参照。

完全免费 9 个模型元素 3 张嵌入贴图 3 秒循环动画 约 100–140 分钟

Mission · 先看终点

这根魔法棒的重点,不是“堆很多方块”,而是让轮廓、配色和运动讲同一个故事。

远看时,金色圆环像一个聚能装置;走近以后,中央青色能量核与蓝紫杖身形成冷暖对比;播放动画时,顶部结构围绕 Z 轴缓慢旋转,光束又通过纹理帧产生流动感。好的游戏道具会在很小的画面里告诉玩家“它是什么、应该怎样握、哪里正在蓄能”。

Blockbench 能量球魔法棒完整模型,包含金色杖头、青色能量核心和蓝紫色杖身
课程成品:金色环形杖头包围青色能量核心,下方是带高光和渐变的细长握柄。源工程中的模型、UV、贴图、分组和动画都可以继续编辑。
01 · SHAPE

读懂模型比例

根据真实工程中的尺寸搭出 2×27×2 主体、19×20×0 大图案和 8×11×0 小图案,理解为什么物品模型需要先抓轮廓。

02 · TEXTURE

画出像素明暗

不用模糊渐变糊成一片,而是用有限色块表现高光、固有色和阴影,让法杖保留 Minecraft 的像素感。

03 · ANIMATION

组织可动画分组

把要旋转的杖头放入独立组,检查枢轴,再用 0° 与 360° 两个线性关键帧做出首尾衔接的循环。

04 · MOD READY

理解接入边界

知道 .bbmodel 是制作源文件,明白静态物品模型、动画模型和最终 MOD 代码为什么需要不同的导出与渲染方案。

完成标准:你能在 Blockbench 中打开副本、说出两个结构组各自负责什么、从第一和第三人称检查握持效果、修改一处像素颜色,并让能量球在 3 秒时间轴中平滑转完一圈。

Source pack · 先认识你手里的材料

一个可编辑工程、三张贴图和一份图解教程,分别解决不同问题。

下载包的核心是 teacherma-magic-wand.bbmodel。它记录 9 个元素、2 个结构组、UV 坐标、3 张嵌入贴图和 1 段动画;也就是说,即使外部 PNG 暂时被移动,打开源工程时通常仍能看到嵌入的纹理。外部 PNG 则便于单独检查、备份和接入项目。PDF 是 12 页中文制作指南,课程中的界面截图就来自这份原始资料。

.bbmodel可继续改元素、UV、分组、枢轴与关键帧的源工程。
64 × 64 主贴图保存杖头、握柄、装饰与能量核的像素颜色。
128 × 384 动画纹理按帧排列光束变化,用于观察与制作流动效果。
12 页中文 PDF提供尺寸、视角、配色、画笔参数和关键帧截图。
重要提醒:素材包欢迎用于个人学习、课堂练习和非商业 Minecraft 创作,但请勿原样二次售卖或冒充原创。需要商业使用或重新发布时,应先联系 TeacherMa。

Workflow · 先建立全局地图

每一步只解决一个问题:形状、视角、颜色、运动,最后才谈导出。

初学者最容易把顺序倒过来:模型还没有定形,就急着画精细贴图;分组和枢轴还没检查,就堆很多关键帧。这样每改一次比例,UV 和动画都可能跟着返工。本课坚持“由大到小”:先确认剪影,再确认玩家视角,最后才投入纹理与运动细节。

Step 1 · 安全打开工程

先另存副本,再动第一个元素;这一步能救回整堂课。

  1. 1

    完整解压素材包

    不要直接在压缩包预览窗口里打开模型。把所有文件放进同一个项目目录,保留文件名,避免贴图路径和教程参照失联。

  2. 2

    用 Open Model 打开源文件

    启动 Blockbench,选择 File → Open Model,打开 teacherma-magic-wand.bbmodel。如果系统询问格式,以工程保存的 Free Model 格式继续。

  3. 3

    立刻保存个人副本

    使用 File → Save As,例如命名为 my-magic-wand-v01.bbmodel。之后每完成一个大阶段就增加版本号,原文件永远作为“可回到的答案”。

  4. 4

    检查三个工作区

    在 Edit 中查看元素和分组,在 Paint 中查看贴图,在 Animate 中找到名为 animation 的动画。此时先观察,不要批量删除陌生元素。

为什么不能只复制外部 PNG?贴图只是模型的“皮肤”,并不包含每个方块的位置、网格形状、分组关系、枢轴和时间轴。真正可编辑的结构都在 .bbmodel 里。

Step 2 · 生成模型框架

先用三个数字建立比例:2×27×2、19×20×0、8×11×0。

主体是一根非常细长的长方体,负责稳定视觉重心;杖头的大图案和底部的小图案接近二维装饰片,负责形成辨识度。原始工程一共使用 8 个 Cube 和 1 个 Mesh。Cube 适合规则握柄、连接环和装饰块,Mesh 则更适合能量光束这种不规则轮廓。

Blockbench 教程中的魔法棒框架尺寸截图,标注大图案、小图案和主体尺寸
原始课程截图:粉色平面先占位,帮助比较杖头图案与长柄的大小;这里还没有精细纹理,所以判断轮廓更容易。

搭框架时要观察什么?

第一,看中心线。长柄、能量核与圆环应围绕同一条纵向轴线组织,否则旋转后会出现明显“甩圈”。第二,看留白。能量核周围不能被金色框架完全堵住,要让青色核心从第一人称和物品栏缩略图里都能被看见。第三,看厚度。模型可以用零厚度平面形成像素图案,但不同渲染方案对双面显示的处理并不相同;如果背面消失,就要检查面朝向、材质双面设置或改成极薄的立方体。

不要一开始就追求完美圆环。Minecraft 风格更在意像素阶梯是否整齐、左右是否平衡。你可以先放一侧结构,再复制、镜像或按相同坐标搭另一侧。每新增一个元素,都在 Outliner 中改成能读懂的名称,例如 handle、head_ring、energy_core,以后做动画时会比一排 cube 清楚得多。

Step 3 · 视角验收

模型在编辑器里居中,不代表它在玩家手里就舒服。

Blockbench 魔法棒第一人称和第三人称视角对比截图
两种视角回答两种问题:第一人称检查杖头会不会挡住准星,第三人称检查握柄位置、模型朝向和角色身体的关系。

第一人称里,玩家最常盯着屏幕中央。如果杖头过大或位置太靠上,漂亮的能量球会变成视野障碍;如果模型太靠下,又会只剩一小截握柄。第三人称则要观察手掌是否落在握柄区域、法杖是否穿过手臂、跑动时是否显得过长。每次调整位置、旋转或比例后,都应该回到这两个视角快速巡检。

第一人称

准星清楚吗?杖头会遮住目标吗?法杖是否太贴屏幕边缘?

第三人称

手握在正确位置吗?模型朝向自然吗?是否穿模或碰到身体?

物品栏缩略图

缩小后还能认出金色圆环和青色核心吗?轮廓是否过于细碎?

Step 4 · 绘制主体皮肤

像素质感来自“分层色块”,不是把一支柔边笔来回涂。

Blockbench 魔法棒主体贴图绘制截图,包含对称、明暗和八种参考颜色
主体贴图截图:课程使用暖金色塑造外框,用冷蓝和紫色塑造能量与握柄,冷暖对比让小尺寸道具依旧醒目。

先擦除图案区域中不需要的像素,再从大色块开始。杖头高光可使用 #fff4a3,亮金色使用 #faf178,中间色使用 #f0cc77,暗部用 #dfa211。蓝紫区域可以从 #76acd0、#7681d0 过渡到 #394ddb 和 #6937b0。这些颜色不是必须一字不差地照抄,但它们展示了一个可靠原则:亮面提高明度,阴影降低明度并稍微改变色相,而不是只在原色上叠黑色。

#fff4a3高光金 #faf178亮金色 #f0cc77主体金 #dfa211金色暗部 #76acd0浅蓝光 #7681d0蓝紫中间色 #394ddb深蓝色 #6937b0紫色暗部

画对称图案时,可以先完成一半,再镜像检查另一半。真正重要的不是机械对称,而是视觉重量相同:左边多一个亮像素,右边可能需要用稍暗的像素保持平衡。画完后把视图缩小到接近游戏物品栏图标的尺寸。如果缩小后金色轮廓糊成一团,应减少零碎噪点,重新拉开最亮与最暗颜色的差距。

Step 5 · 绘制能量球光束

光束要有方向和衰减:靠近能量球更亮,向外逐渐消散。

Blockbench 能量球光束绘制截图,标注画笔尺寸、透明度、羽化和青色参考值
光束绘制截图:参考参数为笔尺寸 2、透明度 100、羽化边缘 30,主色使用 #65fbf0。参数是起点,最终仍要看缩放后的像素效果。

光束不是一圈等粗的毛刺。先从能量核周围画出几条主要方向,再添加较短的分叉。根部使用更亮、更实的青色,越往外越稀疏。即便使用羽化,也要保持像素轮廓,避免出现与 Minecraft 美术风格不协调的大面积柔雾。完成一帧后,可以把画布临时切换到深色背景,检查边缘有没有孤立的脏像素。

素材包中的 magic-wand-energy-animation.png 是 128 × 384 的纵向动画纹理条。它比普通 64 × 64 主贴图更高,是因为多个动画画面按顺序排列在同一张图片中。不要把它随意裁成正方形,也不要在图片压缩工具中转换成有损 JPG;透明通道和每个像素的位置都是动画的一部分。

一个好用的检查方法:暂停动画,把相邻两帧快速来回切换。如果所有光束同时跳到完全不同的位置,动画会闪烁;如果只有少量分支移动、亮度和方向逐步变化,播放时就更像能量在流动。

Step 6 · 创建循环动画

两枚关键帧就能完成一圈:0 秒为 0°,3 秒为 Z 轴 360°。

Blockbench 时间轴中创建能量球旋转动画的截图
模型旋转截图:把需要旋转的顶部结构放进独立组,再给这个组添加 Rotation 关键帧;不要直接让整根握柄绕错误枢轴打转。

真实源工程中的动画名为 animation,长度为 3 秒,循环方式为 loop,时间轴吸附值为 24。动画作用在顶部结构组:第一个 Rotation 关键帧位于 0 秒,Z 值是 0;第二个关键帧位于 3 秒,Z 值是 360;两者使用 Linear 线性插值。因为 0° 与 360° 在视觉上是同一个方向,循环回到第一帧时不会突然倒跳。

枢轴比角度更重要

如果能量球旋转时像雨刷一样绕着远处画大圈,不是 360° 写错,而是 Pivot Point 不在预期中心。先暂停在中间时刻,例如 1.5 秒,观察圆环是不是围绕能量核中心转动;如果偏心,回到 Edit 工作区修正分组原点,再重新预览。把要动的杖头与不动的握柄分成两个组,正是为了让动画只影响顶部。

Blockbench 编辑光束动画纹理关键帧和帧率的教程截图
纹理动画截图:逐帧编辑时要切到目标帧再绘制,并通过 FPS 控制播放速度。模型旋转和纹理流动可以同时存在,但应分别检查。

纹理动画更像手动翻书:每一帧都是一张略有变化的光束图。编辑时要确认当前选中的关键帧,避免把所有变化都画进同一帧。FPS 越高不代表越高级;帧数少却播放太快,会变成刺眼闪烁。先用较慢速度看清每帧变化,再逐步提高到符合“持续蓄能”的节奏。

0.0 sZ = 0°起始方向
3.0 sZ = 360°回到同方向
InterpolationLinear匀速旋转
Loop开启连续播放

Step 7 · 接入 Minecraft MOD

先选择“静态物品”还是“动画模型”;这会决定后面的技术路线。

源工程使用 Blockbench 的 Free Model 格式,适合自由建模和保存动画,但它不是一个可以直接放进 Minecraft mods 文件夹的 JAR,也不等同于原版 Java 物品模型 JSON。接入 MOD 时,模型资源、物品注册和动画渲染是三件不同的工作。

路线 A · 初学者

先做静态物品

选择一个最有辨识度的静止姿势,按目标版本支持的物品模型格式导出或重建,配合 Java/Fabric/Forge 的物品注册、模型 JSON 与 PNG 贴图进入游戏。先验证物品能显示,再升级动画。

路线 B · 进阶

保留骨骼与动画

使用与你的 Minecraft 版本和加载器匹配的动画渲染方案,把分组、枢轴、动画定义和纹理交给自定义渲染器。不同库的导出格式和代码入口不同,不能把某个版本的示例硬套到另一个版本。

物品注册让游戏认识唯一 ID
模型与贴图决定静态外观
显示变换调整手持和物品栏视角
动画渲染播放骨骼或纹理帧
游戏测试检查加载、穿模和性能

如果你刚完成本站的 Fabric 左键点火课程,可以把这次 Blockbench 作品视为“视觉升级项目”:保留 maik:magic_wand 的注册和左键事件,先替换静态贴图与模型;等静态显示稳定后,再单独研究动画渲染。这样出错时能判断问题来自玩法逻辑、资源路径还是动画层。

不要跳过平台确认:Java 版 Forge、Java 版 Fabric、Bedrock 附加包以及不同 Minecraft 大版本,支持的模型结构并不相同。导出前先写下目标版本与加载器,再选择对应格式或插件。

Save & deliver · 保存和交付

源工程负责“继续创作”,导出文件负责“进入目标项目”,两者都要保留。

  1. 1

    保存可编辑源文件

    保留最新 .bbmodel,同时留一个未改动的原始版本。名称中加入日期或版本号,比反复覆盖同一个文件更安全。

  2. 2

    单独导出贴图

    将 64 × 64 主贴图和 128 × 384 光束动画纹理保存为 PNG,保持透明背景,不要让聊天软件或图片网站自动压缩。

  3. 3

    按目标平台导出模型

    先确认 Forge、Fabric 或 Bedrock 的版本需求,再选择格式。若导出器不支持 Mesh、骨骼或纹理动画,先减少特性测试,不要假装“导出成功就一定能显示”。

  4. 4

    建立最小测试场景

    在空白开发世界中先测试一个道具。确认物品栏、第一人称、第三人称和地面掉落四种状态,再加入技能、音效和粒子。

免费下载本课可编辑素材包

包含原始 .bbmodel、两张 64 × 64 法杖贴图、一张 128 × 384 光束动画纹理、12 页中文 PDF 和预览图。下载权限不会因是否赞赏而变化。

Debug clinic · 按症状排错

先判断问题属于模型、贴图、动画还是 MOD 接入,不要四处同时乱改。

打开 .bbmodel 后贴图全部丢失或变成纯色

先确认你打开的是完整解压后的工程,而不是压缩包内的临时预览。检查 Textures 面板是否仍有 3 张嵌入纹理;若嵌入纹理存在,重新保存副本通常可以恢复。若你删除了纹理条目,再从同目录导入对应 PNG,并检查 UV 是否仍指向正确纹理。

能量球转动时绕着很远的地方画圈

这是典型的枢轴问题。暂停到 1.5 秒,选中负责旋转的顶部组,查看 Pivot Point 是否位于能量核中心。不要通过增加更多关键帧掩盖偏心;先修原点,再保留 0 秒与 3 秒两个关键帧测试。

动画循环到结尾时突然抖一下

检查第一帧与最后一帧是否分别为 0° 和 360°,动画长度是否正好 3 秒,插值是否为 Linear,Loop 是否开启。若纹理动画也在播放,还要单独暂停模型旋转,判断抖动究竟来自骨骼还是纹理帧。

背面看不到杖头的平面图案

零厚度平面可能只显示一面。先检查面的方向和材质设置;目标导出格式不支持双面时,可以复制反向面,或把平面改成极薄的立方体。修改后要重新检查 UV,避免正反面纹理镜像错误。

贴图在 Blockbench 正常,游戏里却是紫黑错误纹理

这通常不是绘画问题,而是资源路径没有对应上。检查命名空间、文件夹、模型引用和 PNG 文件名的大小写;确认导出的模型格式适合目标版本。先让静态贴图显示,再处理动画。

第一人称挡住屏幕,第三人称又离手很远

两种视角使用不同显示变换,不能只靠整体移动模型兼顾。保留模型几何中心稳定,再针对 GUI、first person、third person 等显示场景分别调整旋转、平移和缩放。

把 .bbmodel 放进资源目录后游戏完全不读取

.bbmodel 是 Blockbench 的编辑工程,不是原版游戏自动读取的资源格式。你需要根据目标加载器和渲染方案导出对应文件,并在 MOD 中注册物品、资源或动画渲染器。先阅读所用方案对版本和格式的要求。

Practice · 把范例变成自己的作品

不要一口气全改;一次只改一个变量,并写下你预测的结果。

LEVEL 1

换一套能量颜色

保留金色外框,只把青色能量核和蓝紫握柄改成红橙、翡翠或暗影紫。至少准备高光、中间色和暗部三档颜色。

LEVEL 2

改变旋转节奏

复制工程,把 3 秒改成 1.5 秒和 6 秒各试一次。记录哪一种更像攻击道具,哪一种更像持续蓄能道具。

LEVEL 3

设计第二层能量环

复制顶部结构,缩放并反向旋转。先检查两个组的枢轴,再决定是否需要更多关键帧,避免穿模。

五分钟自测

为什么要先检查第一人称和第三人称,再画精细贴图?

因为视角测试可能迫使你修改比例、位置和轮廓。结构变化会牵动 UV;过早精修贴图,后面就容易重复劳动。

为什么 0° 到 360° 很适合循环旋转?

两个角度在视觉方向上相同。配合线性插值与 Loop,最后一帧返回第一帧时能够自然衔接。

主贴图和动画纹理条分别负责什么?

64 × 64 主贴图负责杖头、握柄和能量核的静态外观;128 × 384 纹理条按顺序保存光束动画帧,用连续画面制造流动感。

为什么模型在 Blockbench 能播放,不代表游戏里会自动播放?

Blockbench 负责编辑和预览。游戏端还需要能理解相应模型与动画格式的渲染方案,并由 MOD 代码在正确时机加载与播放。

Evidence · 本课依据

课程中的尺寸、颜色和动画参数都来自可验证的本地素材。

  • teacherma-magic-wand.bbmodel:9 个元素、2 个结构组、UV、3 张嵌入贴图,以及 3 秒循环动画。
  • magic-wand-blockbench-guide.pdf:模型框架尺寸、手持视角、配色、光束画笔参数、关键帧与 FPS 图解。
  • magic-wand-texture-main.png 与 magic-wand-texture-clean.png:两张 64 × 64 法杖像素贴图。
  • magic-wand-energy-animation.png:128 × 384 光束动画纹理条。
  • README.txt 与 START-HERE-从这里开始.txt:打开方式、使用范围和“源模型并非一键安装 MOD”的说明。

Lesson complete

现在你不只是“打开了一个模型”,而是走完了一条道具美术生产线。

模型框架决定轮廓,视角检查决定可用性,像素贴图决定材质,分组和枢轴决定谁能运动,关键帧决定运动节奏,导出方案再把作品连接到具体 Minecraft 平台。以后制作法杖、锤子、枪械或科幻工具时,都可以沿用这条思路:先建立清楚的视觉目标,再一次验证一个层级。