导入具有非人形(通用)动画的模型
导入具有人形动画的模型
本页面包含有关导入模型以在 Unity 动画系统中使用的指南。 有关创建用于动画系统的模型的信息,请参阅创建动画模型。
动画系统使用两种类型的模型:
有关适用于所有类型模型的一般导入准则,请参阅导入模型。
概述
当Unity导入包含人形骨骼和动画的模型文件时,需要将模型的骨骼结构与其动画相协调。 为了实现这一点,文件中的每个骨骼都被映射到人形化身,以便动画正确播放。 因此,在将模型文件导入 Unity 之前仔细准备模型文件非常重要。
。 。 完成骨骼映射后,您可以选择单击“肌肉和设置”选项卡来调整阿凡达的肌肉配置。 可以选择另存为人体模板 (.ht) 文件。 您可以选择限制某些骨骼上导入的动画。 在“动画”选项卡中,启用“导入动画”选项,然后设置其他特定于资源的属性。 如果文件包含多个动画或动作,您可以将特定的动作范围定义为动画剪辑。 对于文件中定义的每个动画剪辑,您可以: 要保存更改,请单击“导入设置”窗口底部的“应用”按钮,或单击“恢复”以放弃更改。 设置头像
在 Inspector 窗口的 Rig 选项卡中,将 Animation Type 设置为 Humanoid。 默认情况下,“头像定义”属性设置为“从该模型创建”。 如果保留打开状态人物立绘,Unity 将尝试将文件中定义的骨骼集映射到人形头像。
人形装备
在某些情况下,可以将此选项更改为从其他头像复制以使用先前为另一个模型文件定义的头像。 例如,如果您在 3D 建模应用程序中使用多种不同的动画创建网格(皮肤),则可以将网格导出到一个 FBX 文件,并将每个动画导出到其自己的 FBX 文件。 将这些文件导入 Unity 时,只需为导入的第一个文件(通常是网格)创建一个 Avatar。 只要所有文件都使用相同的骨骼结构,您就可以将此 Avatar 用于其余文件(例如,所有动画)。
如果启用此选项,则必须通过设置 Source 属性来指定要使用的 Avatar。
您还可以使用该属性更改可以影响给定顶点的骨骼的最大数量。 默认情况下3dmax模型导入到unity,此属性限制对四个骨骼的影响,但您可以指定不同的值。
当您单击“应用”按钮时,Unity 将尝试将现有骨骼结构与 Avatar 骨骼结构进行匹配。 在许多情况下,它可以通过分析骨架中骨骼之间的连接来自动完成此操作。
如果匹配成功,“配置”菜单旁边会出现一个复选标记。 Unity 还将 Avatar 子资源添加到模型资源中(可以在“项目”视图中找到)。
Avatar 显示为导入模型的子资源
成功的匹配仅仅意味着 Unity 能够匹配所有所需的骨骼。 然而,为了获得更好的结果,您还需要匹配可选骨骼并将模型设置为正确的 T 姿势。
如果 Unity 无法创建 Avatar,“配置”按钮旁边会出现一个十字,并且项目视图中不会出现 Avatar 子资源。
Unity无法创建有效的头像
由于头像是动画系统极其重要的一个方面,因此为模型正确配置头像非常重要。
因此,无论自动头像创建是否成功3dmax模型导入到unity,重要的是其有效且设置正确。
配置头像
如果您需要检查Unity是否正确地将模型的骨骼映射到Avatar,或者Unity无法为模型创建Avatar,您可以单击Rig选项卡上的Configure...按钮进入Avatar配置模式。
如果 Unity 成功创建 Avatar,则 Avatar 将显示为模型 Asset 的子资源。 您可以在Project窗口中选择Avatar资源游戏动态,然后单击Inspector中的“Configure Avatar”按钮进入Avatar配置模式。 在此模式下,您可以检查或调整 Unity 如何将模型的骨骼映射到 Avatar 布局。
Avatar 子资源检查器
进入 Avatar 配置模式后,Avatar 窗口出现在 Inspector 中并显示骨骼贴图。
确保骨骼正确映射,并且映射未由 Unity 分配的任何可选骨骼。
骨架必须至少具有 Unity 生成有效匹配所需的骨骼。 为了提高与头像匹配的机会,请确保骨骼的命名方式能够反映它们所代表的身体部位。 例如,“LeftArm”和“RightForearm”显式地显示了这些骨骼的控制对象。
映射策略
如果模型未产生有效匹配,则可以使用与 Unity 内部流程类似的流程:
从 Avatar 窗口底部的“映射”菜单中选择“清除”以重置 Unity 尝试的映射。
从 Avatar 窗口底部的 Pose 菜单中选择 Sample Bind-pose 来估计模型的初始建模姿势。
选择“映射”>“自动映射”以根据初始姿势创建骨骼贴图。 选择“姿势”>“强制 T 形姿势”将模型设置回所需的 T 形姿势。
如果自动映射完全或部分失败,您可以通过从“场景”视图或“层次结构”视图中拖动骨骼来手动分配骨骼。 如果Unity认为该骨骼合适,它将在Avatar Mapping选项卡中显示为绿色; 否则会显示红色。
重置姿势
T 姿势是 Unity 动画所需的默认姿势,也是 3D 建模应用程序中建模的推荐姿势。 但是,如果您的角色不是使用 T 姿势建模并且动画未按预期工作,您可以从“姿势”下拉菜单中选择“重置”:
“头像”窗口底部的“姿势”下拉菜单
如果骨骼分配正确但角色姿势不正确,您将看到消息“角色未处于 T 形姿势”。 此问题可以通过从“姿势”菜单中选择“强制 T 姿势”来解决。 如果姿势仍然不正确,您可以手动将剩余的骨骼旋转为 T 字姿势。
创建头像面具
通过遮罩,您可以丢弃剪辑中的一些动画数据,从而使剪辑仅对对象或角色的部分而不是整体进行动画处理。 例如,您可能有一个包含手臂和腿部运动的标准行走动画,但如果角色用双手握住一个大物体,您不希望其手臂在行走时侧向摆动。 但是,当角色握住物体时,仍然可以使用标准行走动画,但您需要使用遮罩在行走动画之上仅播放握住动画的上半身部分。
蒙版可以在导入时或运行时应用于动画剪辑。 最好在导入时应用遮罩,因为这样做可以从构建中省略废弃的动画数据,从而使文件更小,从而使用更少的内存。 由于运行时需要混合的动画数据更少,因此处理速度也得到了提高。 在某些情况下,导入口罩可能不适合您。 在这种情况下,可以通过创建 Avatar Mask 资源并在 Animator Controller 的图层设置中使用它来在运行时应用遮罩。
要创建空的头像遮罩资源,您可以:
新资源将出现在项目视图中:
阿凡达面具窗口
现在,您可以将身体部位添加到蒙版,然后将蒙版添加到动画层或添加对蒙版的引用(在“动画”选项卡的“蒙版”部分中)。
导入模型
导入具有非人形(通用)动画的模型
文章来源:https://docs.unity3d.com/cn/2022.1/Manual/ConfiguringtheAvatar.html