- 用户指南
- 资源商店 (Asset Store)
- 资源服务器 (Asset Server)(仅限团队许可证)
- 缓存服务器(仅限团队许可证)
- 幕后场景
- 创建游戏
- 运行时实例化预设 (Prefabs)
- 变换 (Transforms)
- 物理
- 添加随机的游戏元素
- 粒子系统(Particle Systems)
- Mecanim 动画系统
- 旧动画系统
- 导航网格 (Navmesh) 和寻路 (Pathfinding)(仅限专业版 (Pro))
- Sound (音频侦听器)
- 游戏界面元素
- 多玩家联网游戏
- iOS 开发入门
- Android 开发入门
- Blackberry 10 开发入门
- Metro:入门指南
- 本地客户端开发入门
- FAQ
- Advanced
- Vector Cookbook
- 资源包(仅限专业版)
- Graphics Features
- 资源数据库 (AssetDatabase)
- 构建播放器管道
- 分析器(仅限专业版)
- 光照贴图快速入门
- 遮挡剔除(仅限专业版)
- 相机使用技巧
- 运行时加载资源
- 通过脚本修改源资源
- 用程序生成网格几何体
- 富文本
- 在 Unity 工程 (Project) 中使用 Mono DLL
- 事件函数的执行顺序
- 移动优化实用指南
- Unity XCode 工程结构
- 优化图形性能
- 减少文件大小
- 理解自动内存管理
- 平台依赖编译
- 泛型函数
- 调试
- 插件(专业版/移动版特有功能)
- 文本场景文件格式(仅限专业版)
- 流媒体资源
- 启动时运行编辑器脚本代码
- 网络模拟
- VisualStudio C 集成
- 分析
- 检查更新
- 安装多版本 Unity
- 故障排除
- Unity 中的阴影
- Unity 中的 IME
- 对集成显卡进行优化
- 网络播放器 (Web Player) 部署
- 使用网络播放器中的信任链系统
二维混合 (2D Blending)
混合节点 (Blend Node)的检视器 (Inspector) 中的第一个选项是混合类型 (Blend Type)。此下拉菜单用于选择可以根据一个或两个参数混合的不同混合类型之一。二维混合 (2D Blending) 类型根据两个参数混合子运动。
不同二维混合 (2D Blend) 类型具有不同的适合用途。它们之间的差异在于计算各个运动影响力的方式。
- 二维简单方向 (2D Simple Directional)
- 最适用于运动表示不同方向时,如“向前行走”、“向后行走”、“向左行走”和“向右行走”或是“向上瞄准”、“向下瞄准”、“向左瞄准”和“向右瞄准”。可以选择包括位置 (0, 0) 处的单个运动,如“空闲”或“笔直瞄准”。在简单方向 (Simple Directional) 类型中,相同方向上不应存在多个运动,如“向前行走”和“向前奔跑”。
- 二维任意方向 (2D Freeform Directional)
- 此混合类型也在运动表示不同方向时使用,但是可以在相同方向上具有多个运动,例如“向前行走”和“向前奔跑”。在任意方向 (Freeform Directional) 类型中,运动集应始终包括位置 (0, 0) 处的单个运动,如“空闲”。
- 二维任意笛卡尔 (2D Freeform Cartesian)
- 最适用于运动不表示不同方向时。使用任意笛卡尔 (Freeform Cartesian) 时,X 参数和 Y 参数可以表示不同概念,如角速度和线速度。示例包括“向前行走而不转弯”、“向前奔跑而不转弯”、“向前行走并右转”、“向前奔跑并右转”等运动。
设置“混合类型” (Blend Type) 之后,需要执行的第一个操作是选择将控制此混合树 (Blend Tree) 的动画参数 (Animation Parameter) 。在此示例中,参数为 velocityX (扫射) 和 velocityZ (向前速度)。
随后可以通过单击 + -> 添加运动区域 (Add Motion Field) 将动画片段 (Animation Clip) 添加到混合树中,从而添加各个动画。完成后,它应类似于下面这样:
具有五个动画片段 (Animation Clip) 的二维混合节点 (2D Blend Node)。
二维混合中的位置类似于一位混合中的阈值,除了存在分别对应于两个参数的两个值,而不是一个值。其沿水平 X 轴上的位置对应于第一个参数,其沿垂直 Y 轴上的位置对应于第二个参数。向前行走动画可能 velocityX 为 0 并且 velocityZ 为 1.5,从而应将这些值键入运动的“位置 X”(Pos X) 和“位置 Y”(Pos Y) 数字字段。
二维混合示意图 (The 2D Blending Diagram)
检视器 (Inspector) 顶部的示意图显示二维混合空间中的子运动位置。这些运动显示为蓝色点。未分配动画片段 (Animation Clip) 或混合树 (Blend Tree) 的运动对混合没有影响力,显示为灰色点。可以通过在示意图中单击其点来选择运动。一旦选择后,该运动对混合空间中每个点的影响力会展示为蓝色区域。该区域在运动位置正下方最明显(其中运动具有完全影响力,这表示其动画权重为 1,而其他动画的权重为 0)。随着距离变远,影响力会下降,同时其他运动的影响力会逐渐占优势。
混合节点检视器 (Blend Node Inspector) 顶部的示意图形象地展示各个子运动在参数值范围内的权重。
红色点指示两个参数的值。如果在检视器 (Inspector) 底部的 预览 (Preview) 中按 播放 (Play) 并在示意图中四处拖动红色点,则可以看到参数值如何控制不同运动的混合。在示意图中,还可以看到各个运动的影响力(表示为围绕各个运动的圆形)。如果将红色点移动到表示运动的蓝色点之一上,则您会看到该运动的圆形会达到其最大半径,而所有其他运动的圆形会缩小为不可见。在介于几个运动之间的位置处,多个附近的运动会对混合具有一定影响力。如果选择其中一个运动以查看该运动的蓝色影响力区域,则可以看到,随着四处移动红色点,运动的圆形大小恰好对应于影响力区域在各个位置处的强度。
未选择任何运动时,示意图显示所有影响力区域的混合,其中单个运动占优势的位置处蓝色较深,许多运动参与混合的位置处蓝色较浅。
位置
可以通过单击运动在示意图中的对应蓝色点并四处拖动,来更改运动的位置。还可以通过在“位置 X”(Pos X) 和“位置 Y”(Pos Y) 列的数字字段中键入数字,在运动列表中编辑运动的位置坐标。
计算位置 (Compute Positions) 下拉菜单会通过从动画片段 (Animation Clip) 中的根运动获取的数据选择来设置位置。可供选择的数据有速度 (speed)、速率 (velocity) x、速率 (velocity) y 或速率 (velocity) z 以及角速度 (angular speed)(以度或弧度为单位)。如果参数 (parameters) 对应于这些属性之一,则可以使用“计算位置”(Compute Positions)下拉菜单计算“位置 X”(Pos X) 和/或“位置 Y”(Pos Y)。
属性: | 功能: |
---|---|
速率 XZ (Velocity XZ) | 根据各个运动的 velocity.x 设置其“位置 X”(Pos X),并根据其 velocity.z 设置其“位置 Y”(Pos Y)。 |
速度和角速度 (Speed And Angular Speed) | 根据各个运动的角速度(以弧度/秒为单位)设置其“位置 X”(Pos X),并根据其速度设置其“位置 Y”(Pos Y)。 |
而且可以选择计算位置 (Compute Position) -> X 位置 (X Position From) 和/或 计算位置 (Compute Position) -> Y 位置 (Y Position From) 以便一次仅自动计算其中之一(另一个保持不变),从而进行混合和匹配。
属性: | 功能: |
---|---|
速度 (Speed) | 根据各个运动的速度(速率的量级)设置其“位置 X”(Pos X) 或“位置 Y”(Pos Y)。 |
速率 X (Velocity X) | 根据各个运动的 velocity.x 设置其“位置 X”(Pos X) 或“位置 Y”(Pos Y)。 |
速率 Y (Velocity Y) | 根据各个运动的 velocity.y 设置其“位置 X”(Pos X) 或“位置 Y”(Pos Y)。 |
速率 Z (Velocity Z) | 根据各个运动的 velocity.z 设置其“位置 X”(Pos X) 或“位置 Y”(Pos Y)。 |
角速度(弧度)(Angular Speed (Rad)) | 根据各个运动的角速度(以弧度/秒为单位)设置其“位置 X”(Pos X) 或“位置 Y”(Pos Y)。 |
角速度(度) (Angular Speed (Deg)) | 根据各个运动的角速度(以度/秒为单位)设置其“位置 X”(Pos X) 或“位置 Y”(Pos Y)。 |
也就是说,例如您的参数对应于侧向速率和向前速率,并且有一个平均速率为 (0, 0, 0) 的空闲动画、一个平均速率为 (0, 0, 1.5) 的行走动画以及两个速率分别为 (-1.5, 0, 0) 和 (1.5, 0, 0) 的扫射动画。从下拉菜单中选择速率 XZ (Velocity XZ) 选项会根据这些速率的 X 和 Z 坐标设置运动的位置。
(返回 混合树 (Blend Tree)))
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论