Blender教程: 创建一个引人入胜的循环小球滚动动画

在本教程中,我们将学习如何使用 Blender 创建一个有趣的动力学动画:一排排小球在波浪形轨道上滚动。这个效果非常适合用于制作令人满意的循环动画。本教程适合 Blender 的初学者到中级用户,你将学习到曲线编辑、修改器的使用、对象约束、基础动画以及材质设置等核心技能。
0:00
/0:02
准备工作
- Blender (本教程使用 Blender 3.x 版本,但早期版本应该也适用)
- 确保 Blender 的
Node Wrangler
插件已启用 (通常默认启用。检查方式:Edit > Preferences > Add-ons
, 搜索Node Wrangler
并勾选)。
步骤一: 创建基础波浪路径
我们将首先创建一个作为轨道基础的波浪形曲线。
- 打开 Blender,删除默认的立方体、灯光和相机。
- 按下
Shift + A
,在弹出的菜单中选择Curve
->Path
,创建一个路径曲线。 - 按下
S
键,然后输入2
,再按下Enter
。这将把路径放大两倍。 - 确保路径被选中,按下
Tab
键进入编辑模式。 - 右键点击路径,选择
Subdivide
。 - 再次右键点击路径,选择
Subdivide
。这将为我们提供更多的控制点来塑造波浪。 - 现在,我们需要选择路径上的交替控制点。点击路径最左端的一个控制点,然后按住
Shift
键,依次点击每隔一个的控制点,直到选择完所有交替的点。- 视觉上,你会看到路径上一些点是橙色(选中),一些点是黑色(未选中)。
- 使用移动工具(或按
G
键,然后按Z
键约束到 Z 轴),向上拖动选中的控制点,形成一个波浪形状。你可以根据喜好调整波浪的高度。- 完成后,你的路径应该看起来像一起伏的波浪线。
- 按下
Tab
键返回物体模式。

步骤二: 设置曲线几何形状与修改器 (轨道主体)
现在我们将给这条波浪线赋予厚度和体积,使其成为一个实际的轨道。
- 选中我们创建的波浪路径。
- 在右侧的属性面板中,找到并点击绿色的曲线图标,即 Object Data Properties。
- 展开
Shape
选项卡:- 将
Resolution Preview U
和Render U
都设置为64
。这将使曲线更平滑。
- 将
- 展开
Geometry
选项卡:- 找到
Extrude
值,将其设置为一个较小的值,例如0.015m
。这将给路径一个基础的厚度。
- 找到
- 接下来,点击属性面板中的扳手图标,进入 Modifier Properties。
- 点击
Add Modifier
,选择Solidify
修改器。- 调整
Thickness
参数,使其具有你期望的轨道宽度,例如0.255m
。
- 调整
- 再次点击
Add Modifier
,选择Bevel
修改器。- 调整
Amount
值来控制倒角的大小,例如0.002m
。
- 调整
至此,我们已经创建了第一个轨道。

步骤三: 创建小球的动画路径
我们需要一条纯粹的路径供小球跟随,这条路径不应带有几何形状或修改器。
- 选中刚刚创建的轨道物体 (
NurbsPath
)。 - 按下
Shift + D
复制该物体,然后立即右键单击,使其留在原位。 - 选中这个新复制的路径 (
NurbsPath.001
)。 - 在 Modifier Properties (扳手图标) 中,删除其上的
Solidify
和Bevel
修改器 (点击修改器右上角的 'X' 图标)。 - 转到此复制路径的 Object Data Properties (绿色曲线图标)。
- 在
Geometry
选项卡下,将Extrude
值改回0
。- 现在
NurbsPath.001
是一条没有实际厚度的纯路径,它将作为小球的运动轨迹。
- 现在
步骤四: 创建并约束小球
- 按下
Shift + A
,选择Mesh
->UV Sphere
,创建一个 UV 球体。 - 选中球体,按下
Tab
键进入编辑模式。 - 右键点击球体,选择
Subdivide
。 - 在左下角弹出的
Subdivide
操作框中,将Smoothness
设置为1
。 - 切换到面选择模式 (可以在顶部工具栏选择,或按键盘上的
3
)。 - 按住
Alt
键,点击球体赤道附近的一圈垂直边,这将选中一圈面。 - 按住
Shift + Alt
键,点击相邻的另一圈垂直边,选中两圈面带。 - 按下
E
键进行挤出,然后立即按下S
键进行缩放大概 0.83,将选中的面带向内缩放一点点,形成凹槽。 - 按下
Tab
键返回物体模式。 - 为球体添加一个
Bevel
修改器,调整Amount = 0.044m
和Segments = 5
以获得平滑边缘。 - 右键点击球体,选择
Shade Smooth
。 - 选中球体。在右侧属性面板中,点击链条图标,进入 Object Constraint Properties。
- 点击
Add Object Constraint
,选择Follow Path
。 - 在
Target
字段,点击吸管图标或下拉菜单,选择我们之前创建的纯动画路径 (NurbsPath.001
)。 - 调整
Offset
滑块,你会看到球体沿着路径移动。 - 根据轨道的大小,使用
S
键缩放球体,使其适合轨道。 - 你可能需要调整球体的 Z 轴位置 (
G
然后Z
),以及动画路径上控制点的 Z 轴位置 (选中动画路径,Tab
进入编辑模式,选择所有点A
,然后G
Z
),确保球体看起来像是“坐”在轨道上。

步骤五: 动画第一个小球
- 在底部的时间轴编辑器中,将结束帧 (
End
) 设置为60
。这将使我们的动画循环长度为 60 帧。 - 将时间指示器拖到第
0
帧。 - 选中球体。在 Object Constraint Properties 中的
Follow Path
约束下,将Offset
值调整到你希望球体开始的位置 (例如,轨道的一端)。 - 鼠标悬停在
Offset
值上,按下I
键,为其插入一个关键帧。 - 在视口的右侧属性栏 (按
N
键调出),转到Item
选项卡。鼠标悬停在Rotation
的X
值上,按下I
键,插入旋转关键帧。 - 将时间指示器拖到第
60
帧。 - 调整
Follow Path
约束的Offset
值,使球体移动到轨道的中间某个波峰位置 (这是为了后续循环的衔接)。鼠标悬停在Offset
值上,按下I
键。 - 在
Item
选项卡的Rotation Y
值中输入360*3
(即1080度),然后按下I
键。这会让球体在移动过程中旋转3圈。
现在播放动画 (按空格键),你应该能看到第一个小球沿着轨道滚动并旋转。
步骤六: 创建循环元素 (第二个小球)
为了制作无缝循环,我们需要第二个小球在第一个小球“消失”时出现。
- 确保时间指示器在第
60
帧 (第一个球体动画结束的地方)。 - 选中第一个球体 (
Sphere
) 和它的动画路径 (NurbsPath.001
)。 - 按下
Shift + D
复制它们,然后右键单击以将复制体保留在原位。 - 选中新复制的球体 (
Sphere.001
)。 - 在其
Follow Path
约束中,右键点击Offset
值,选择Clear Keyframes
。 - 将时间指示器拖回第
0
帧。 - 调整新球体的
Offset
值,使其位于第一个球体在第60
帧时的起始位置。鼠标悬停在Offset
值上,按下I
键。 - 将时间指示器拖到第
60
帧。 - 调整新球体的
Offset
值,使其移动到第一个球体在第0
帧结束动画的那个波峰位置。鼠标悬停在Offset
值上,按下I
键。- 这一步的目的是让第二个球体在第一个球体完成其“可见”部分的滚动后,从轨道更远的地方继续滚动,以便在阵列复制时形成连续滚动的效果。

步骤七: 构建轨道阵列
- 在 Outliner (右上角的场景层级列表) 中,将与第一条轨道相关的所有物体 (轨道几何体
NurbsPath
、动画路径NurbsPath.001
、第一个球体Sphere
、第二个球体Sphere.001
) 放入一个新的集合中。- 选中这些物体,按
M
键,选择New Collection
,命名为Track_Set_1
。
- 选中这些物体,按
- 选中
Track_Set_1
集合实例 (或集合内的所有物体)。 - 按下
Shift + D
复制整个集合,然后按G
键,再按Y
键 (或X
键,取决于你的视图方向),将其移动到旁边,留出适当间距。 - 将这个新复制的集合命名为
Track_Set_2
。 - 选中
Track_Set_2
中的轨道几何体和动画路径。按下R
键,然后Z
键,输入180
,再按Enter
。这将把第二条轨道沿Z轴旋转180度,使其波浪方向与第一条相反。 - 调整
Track_Set_2
的位置,使其与Track_Set_1
并排。 - 重复以上复制和旋转(可选,也可以保持同向)的步骤,创建大约 7 排轨道。每一排新的轨道都放入新的集合中,方便管理。

步骤八: 设置场景 (地面与相机)
- 按下
Shift + A
,选择Mesh
->Plane
,创建一个平面作为地面。 - 按下
S
键,将其放大到足够覆盖所有轨道的下方。 - 按下
G
键,然后Z
键,将其向下移动到轨道下方。 - 调整你的3D视图到一个你喜欢的观看角度。
- 按下
Ctrl + Alt + Numpad 0
,将相机对齐到当前视图。 - 选中相机。在 Object Data Properties (绿色相机图标) 中:
- 将
Type
从Perspective
改为Orthographic
。 - 调整
Orthographic Scale
的值,直到所有轨道都舒适地显示在相机视图内。 - 你可以使用
G
键然后按鼠标中键(或G
然后Z
Z
)来推拉相机。
- 将

步骤九: 灯光设置
- 切换到 Cycles 渲染引擎 (在 Render Properties,即相机图标下方的小电视图标中设置)。你也可以使用 Eevee,但视频中最终效果是 Cycles。
- 按下
Shift + A
,选择Light
->Spot
。 - 使用
G
和Z
将聚光灯向上移动,使其照射整个场景。 - 在 Object Data Properties (灯泡图标) 中,调整聚光灯设置:
Power
: 设置一个较高的值,例如10000 W
。Radius
: 稍微增大一点,例如0.25 m
,以获得更柔和的阴影。Spot Shape
->Size
: 调整光锥角度,例如45
度。Spot Shape
->Blend
: 调整边缘羽化,例如0.15
。
- 按下
Shift + A
,选择Light
->Area
。 - 将区域光向上移动,使其位于场景上方。
- 在区域光的属性中:
Shape
: 改为Disk
。- 使用
S
键将其放大。 Power
: 设置一个值,例如100 W
(根据需要调整)。

步骤十: 应用材质
现在为我们的物体添加一些漂亮的材质。
- 切换到 Shading 工作区。确保你在相机视图 (
Numpad 0
) 并已启用渲染预览 (通常是右上角的球形图标)。 - 地面材质:
- 选中地面平面。
- 在材质属性面板中,点击
New
创建新材质。 - 将
Base Color
设置为你喜欢的蓝色。
- 小球材质:
- 选中场景中的任意一个小球。
- 点击
New
创建新材质。 - 将
Base Color
设置为与地面相同的蓝色 (可以使用吸管工具或复制HEX颜色代码)。 - 为了增加表面细节,我们将添加一些凹凸:
Shift + A
->Texture
->Noise Texture
。Shift + A
->Converter
->ColorRamp
。Shift + A
->Vector
->Bump
。- 连接节点:
Noise Texture
的Fac
输出到ColorRamp
的Fac
输入。ColorRamp
的Color
输出到Bump
节点的Height
输入。Bump
节点的Normal
输出到Principled BSDF
的Normal
输入。 - 调整
Noise Texture
:Scale = 9.2Detail
设为8.2
,Roughness
调高一些 (例如0.7
到0.9
)。 - 调整
Bump
节点:Distance
设为0.1
。 - 调整
ColorRamp
的滑块,以控制凹凸的强度和对比度。
- 现在,选中场景中所有其他的小球,最后再选中刚刚设置好材质的那个小球 (使其成为活动对象,边框更亮)。
- 按下
Ctrl + L
,选择Link Materials
。所有小球现在都将共享这个材质。
- 轨道材质:
- 选中场景中的任意一个轨道 (
NurbsPath
几何体)。 - 点击
New
创建新材质,可以命名为Waves_Material
。 - 将
Base Color
设置为白色。 - 我们将使用 Voronoi 纹理制作类似水磨石的斑点效果:
Shift + A
->Converter
->ColorRamp
。Shift + A
->Texture
->Voronoi Texture
。- 选中
Voronoi Texture
节点,按下Ctrl + T
(需要启用 Node Wrangler 插件),会自动添加Texture Coordinate
和Mapping
节点。将Texture Coordinate
的Object
输出连接到Mapping
的Vector
输入。 - 连接节点:
Voronoi Texture
的Color
输出到ColorRamp
的Fac
输入。ColorRamp
的Color
输出到Principled BSDF
的Base Color
输入。 - 在
ColorRamp
节点中,将插值模式从Linear
改为Constant
。 - 调整
Voronoi Texture
的Scale
值,例如30
到100
,直到获得满意的斑点大小。 - 在
ColorRamp
中,拖动白色滑块靠近黑色滑块,以形成清晰的斑点。将黑色滑块的颜色改为一个深蓝色 (可以与小球/地面的蓝色相近,或者用其他对比色,如橙色)。
- 选中场景中所有其他的轨道几何体,最后再选中刚刚设置好材质的那个轨道。
- 按下
Ctrl + L
,选择Link Materials
。
- 选中场景中的任意一个轨道 (
步骤十一: 渲染设置
- 转到 Output Properties (打印机图标)。
Resolution X
和Y
: 设置你想要的渲染分辨率 (例如1920 px
x1080 px
)。Frame Range
: 确保Start
是0
(或1
,取决于你的起始帧),End
是60
。Output
: 点击文件夹图标,选择一个文件夹来保存你的动画帧。File Format
:- 推荐选择
PNG
。这将渲染出一系列的静态图片,如果中途出错,可以从断点继续。之后你可以在Blender的视频编辑器或其他软件中将PNG序列合成为视频。 - 如果想直接输出视频,选择
FFmpeg video
。- 展开
Encoding
。 Container
: 选择MPEG-4
。Output Quality
: 选择Perceptually Lossless
。
- 展开
- 推荐选择
- 转到 Render Properties (小电视图标)。
- 如果你想让运动的物体带有模糊效果,展开
Motion Blur
并勾选它。 - 一切设置完毕后,点击顶部菜单的
Render
->Render Animation
。
总结
恭喜你!你已经成功创建了一个令人着迷的小球滚动循环动画。通过这个教程,你练习了Blender中的曲线操作、修改器堆栈、对象约束、关键帧动画以及节点材质的设置。你可以尝试调整颜色、纹理、灯光和相机角度,创造出属于你自己的独特版本!