序
游戏开发、动漫影视都离不开人物,本期文章围绕游戏开发中的人物,详细介绍游戏人物从设计到应用的全流程,并使用一个小案例讲解各个阶段的操作。
本篇文章采用的是Blender+Unity的搭配,Blender为4.4版本,Unity为6版本,都是发布时比较新的版本。
流程
建模(Modeling) —— 在Blender里创建人物3D模型
拓扑和细化(Retopology & Details) —— 优化模型结构,保证动画时变形合理
UV展开(UV Unwrapping) —— 展开模型表面,方便贴图
贴图绘制(Texturing) —— 制作人物皮肤、衣服等贴图
骨骼绑定(Rigging) —— 给模型绑定骨骼系统
权重绘制(Weight Painting) —— 调整骨骼对模型顶点的影响权重
动画制作(Animation) —— 制作走路、跑步、攻击等动作
导出模型和动画(Export) —— 导出FBX或其他格式到Unity
Unity导入和配置(Import & Setup) —— 在Unity里导入模型,配置Animator
动画控制(Animation Controller) —— 使用Animator Controller制作动画状态机,控制人物动画播放
代码交互(Optional) —— 用脚本控制动画切换、人物行为等
建模
创建人物模型:用Blender的建模工具从头建模,或者用扫描数据、现成模型基础上修改。
人物形体:确定比例、整体形状,先做低多边形版本,方便后续优化。
参考资料:准备好人物概念图正侧面,方便对齐。
常用工具:顶点编辑、挤出、环切、雕刻等。
拓扑和细化
优化拓扑:保证模型面数均匀且流线合理,特别是关节部位(如肩膀、膝盖)要有良好拓扑,方便弯曲变形。
添加细节:如果需要高精度细节,可以用雕刻后生成法线贴图在低模上表现。
UV展开
拆分UV:将3D表面展开成2D平面,方便贴图绘制。
缝合点放置:选择合理缝合点,避免贴图拉伸、接缝明显。
UV布局:安排好UV在贴图空间中的位置,提高贴图利用率。
贴图绘制
基础贴图:颜色贴图(Albedo)、法线贴图(Normal Map)、金属度、粗糙度等PBR贴图。
绘制方式:可以用Blender自带画笔绘制,也可以用Substance Painter、Photoshop等软件。
分区贴图:比如身体和衣服分开不同材质贴图。
骨骼绑定
创建骨骼(Armature):在Blender中为人物模型添加骨架(骨骼链),包含主骨骼(脊椎、四肢、头部等)。
骨骼层级:骨骼按层级关系绑定,比如手指骨骼从手腕骨骼挂下去。
命名规范:骨骼命名要清晰方便识别,有助于后续导出和Unity识别。
设置IK约束:便于后续动画制作时使用。
权重绘制
顶点权重:调整每个骨骼对模型顶点的影响比例,确保骨骼移动时模型表面合理变形。
常用技巧:关节部位权重渐变平滑,避免硬折叠。
测试变形:用骨骼控制测试模型弯曲,调整权重达到自然效果。
动画制作(Animation)
制作动作:用Blender的动作编辑器(Action Editor)制作动画剪辑,如站立、走路、跑步、跳跃等。
关键帧:在时间轴上设置关键帧,定义骨骼位置和旋转。
循环动画:走路等动作设置为循环,保证平滑过渡。
动作命名:给每个动画动作起名字,方便导入后在Unity调用。
导出模型和动画(Export)
导出格式:通常用FBX格式(.fbx),包含模型、骨骼和动画。
导出设置:确保勾选“动画”、“骨骼”、“网格”等选项,选择合适的单位和轴方向(Unity默认Y轴为上)。
版本兼容:用Unity支持的FBX版本,避免导入问题。
Unity导入和配置(Import & Setup)
导入模型:将FBX文件拖入Unity项目Assets目录。
模型设置:在Inspector里调整模型导入参数,如缩放、轴向。
Rig类型选择:设置Rig为“Humanoid”(人形)或“Generic”(通用骨骼)。一般游戏人物选Humanoid,方便动画复用和IK。
Avatar生成:Humanoid模式下生成Avatar,可以在配置里调整骨骼映射。
动画控制(Animator Controller)
创建Animator Controller:控制动画状态和切换。
添加动画状态:导入的动画动作放入不同状态。
设置过渡条件:用参数(如速度、是否跳跃)控制状态之间的切换。
挂载Animator:将Animator组件挂在人物模型上,绑定Animator Controller。
代码交互(Optional)
动画触发:通过代码控制参数,触发动画播放。
角色控制:结合动画和角色控制器(CharacterController或自定义),实现人物移动、攻击等。
IK支持:可用Unity内置或第三方IK系统,使动画更自然。