找回密码
 注册帐号

扫一扫,访问微社区

外文翻译 Animator- Interruption Source用法

9
回复
1085
查看
[ 复制链接 ]
排名
1
昨日变化

7846

主题

8404

帖子

3万

积分

Rank: 16

UID
1231
好友
186
蛮牛币
11094
威望
30
注册时间
2013-7-29
在线时间
4025 小时
最后登录
2019-6-19

活力之星原创精华达人突出贡献奖财富之证游戏蛮牛QQ群会员蛮牛妹VIP

2018-12-7 14:12:24 显示全部楼层 阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
1.jpg
通常情况下,动画状态机(State Machine) 在 动画过渡(Transition) 时是无法被打断的,一旦你开始从一个 动画节点(State) 过渡到另一个 State 时,你无法中断这种行为。就好比一个乘客乘坐在一部已经离开地面的飞机上,你能做的只是好好享受这次旅途直到抵达终点,你却无法改变这次飞行航线。在大多数情况下,都是如此。

但是,如果你需要对动画过渡拥有更多的控制权,unity 的 State Machine 给你提供了一些方法来实现。当你的飞机已经起飞,你对旅途的终点并不满意,你可以选择坐在飞行员的位置中途改变航线。这意味着State 与 State之间有更多的可能性,同样的,也增加了State Machine 的复杂性。

首先,让我们看几个简单的例子,先从一个简单的State Machine开始,它拥有4个 State,分别是 A, B, C, D 以及相对应的 触发行为(Triggers) 连结状态机上的每个State(每一个箭头代表一种Transition,对应一种触发行为)。

2.jpg

添加一些动画状态以及一些动画过渡
一般情况下,当我们从State A 向 State B (A->B) 进行 Transition 时,我们的动画状态机State Machine 在这个过渡过程中是不会发生任何改变的,直到它抵达到State B。但是如果我们选中这个过渡线段(A与B之间的白色箭头线段),我们可以从检视面板中看到有一个 Interruption Source 的选项,我们将其状态从 None 改成 Current State,此时这个过渡动作才会被“某些”在触发行为打断(如下图):
3.jpg

动画过渡的检视面板
为什么说是某些?因其下方的 Ordered Interruption 单选框为勾选状态,这个选项意味着只有在当前State(State A)上拥有更高优先级的 Transition 才可以打断 A->B 这个过渡动作。(如下图):
除了本身A->B之外,A->C的优先级要高于 A->D,
4.jpg

A 动画状态节点上的过渡动作及其优先级
那么,即使我们触发了A ->B的 Transition,又立刻去触发 A->D的过渡动作,我们的整个过程是不会被打断的。然而,当我们触发的不是 A->D 而是 A->C,则 State Machine 会立刻打断A->B 的Transition, 执行 A->C 的 Transition。

而在动画系统内部,它会记住被打断的位置(X),并且将该位置(X)的动画与新Transition(A->C)终点(C)的动画进行融合过渡,如下图(X->C)。
5.jpg

被打断点X到C动作融合
在一个游戏中,经常会遇到动作被打断的情况,动画机便会快速的在这些被打断出与新的Transition 终点进行模拟融合以至于整个State Machine看起来更流畅。

如果我们不勾选 Ordered Interruption 单选框,那么情况会变得更加简单, A->C 和 A->D 都可以打断A->B这个Transition。当然,如果 A->C 和 A->D 的 Transition 同时被触发,那么 A->C 会成为打断者,因为它在Current State (State A)上拥有更高的优先级。

如果我们将 Interruption Source 改成 Next State, 那么 A->C 和 A->D 将无法打断这个过渡。但是,此时当我们在 A->B 过程中去触发 B->D,State Machine 将会立刻开始 A->D 的过渡,并且整个过程不需要完成 A->B 的Transition。

这种过渡模式同样适用于State B到其他的State,当然,同样的,B->D和B->C的过渡同时发生,那么优先采用优先级更高的(B->D)如下图,即发生A->D的过渡。
6.jpg

B 动画状态节点上的过渡动作及其优先级
最后,我们可以通过设置 Interruption Source 成 Current State Then Next State 或者 Next State Then Current State 来决定哪个动画State上的过渡节点优先权更高,前者表示先看当前State的优先级如果没有被触发,再看下一个State的优先级,后者则相反,来达到不同的融合与打断效果。

大家如果有不太清楚的地方,也可以自己新建一个工程,新建一个Animator以及一些Clip来测试效果。

以上便是StateMachine中Interruption Source的主要用法,希望对大家有帮助,大家也可以进行一些测试,如果有翻译的不恰当的,可以留言交流,谢谢。

回复

使用道具 举报

排名
26982
昨日变化

0

主题

23

帖子

40

积分

Rank: 1

UID
304200
好友
1
蛮牛币
110
威望
0
注册时间
2018-11-11
在线时间
3 小时
最后登录
2018-12-7
2018-12-7 15:32:19 显示全部楼层
Animator- Interruption Source用法
回复 支持 反对

使用道具 举报

7日久生情
1535/5000
排名
3443
昨日变化

0

主题

895

帖子

1535

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
210390
好友
0
蛮牛币
1835
威望
0
注册时间
2017-3-7
在线时间
206 小时
最后登录
2019-5-23
2018-12-7 16:49:10 显示全部楼层
回复

使用道具 举报

6蛮牛粉丝
1357/1500
排名
2036
昨日变化

5

主题

174

帖子

1357

积分

Rank: 6Rank: 6Rank: 6

UID
126588
好友
0
蛮牛币
4723
威望
0
注册时间
2015-10-24
在线时间
504 小时
最后登录
2019-6-20
2018-12-7 17:53:11 显示全部楼层
回复

使用道具 举报

6蛮牛粉丝
1050/1500
排名
5543
昨日变化

0

主题

657

帖子

1050

积分

Rank: 6Rank: 6Rank: 6

UID
300432
好友
1
蛮牛币
1450
威望
0
注册时间
2018-10-18
在线时间
133 小时
最后登录
2019-3-27
2018-12-9 23:21:34 显示全部楼层
66666666666
回复

使用道具 举报

6蛮牛粉丝
1284/1500
排名
3640
昨日变化

2

主题

586

帖子

1284

积分

Rank: 6Rank: 6Rank: 6

UID
112390
好友
2
蛮牛币
1537
威望
0
注册时间
2015-7-7
在线时间
284 小时
最后登录
2019-6-20
2018-12-11 09:16:42 显示全部楼层

多谢分享!                     
回复 支持 反对

使用道具 举报

5熟悉之中
720/1000
排名
5234
昨日变化

2

主题

202

帖子

720

积分

Rank: 5Rank: 5

UID
208267
好友
0
蛮牛币
1521
威望
0
注册时间
2017-2-24
在线时间
242 小时
最后登录
2019-6-20
2018-12-13 09:47:42 显示全部楼层
这片风儿吹过
回复

使用道具 举报

3偶尔光临
193/300
排名
14497
昨日变化

0

主题

81

帖子

193

积分

Rank: 3Rank: 3Rank: 3

UID
11601
好友
0
蛮牛币
8
威望
0
注册时间
2014-1-2
在线时间
56 小时
最后登录
2019-3-24
2019-3-5 17:02:37 显示全部楼层
可以可以 基础知识是很重要的!
回复 支持 反对

使用道具 举报

排名
39859
昨日变化

0

主题

47

帖子

67

积分

Rank: 2Rank: 2

UID
314313
好友
0
蛮牛币
18
威望
0
注册时间
2019-2-20
在线时间
14 小时
最后登录
2019-4-2
2019-3-9 22:14:11 显示全部楼层
学习学习!!!!!
回复

使用道具 举报

排名
64929
昨日变化

1

主题

11

帖子

29

积分

Rank: 1

UID
313173
好友
0
蛮牛币
7
威望
0
注册时间
2019-1-30
在线时间
15 小时
最后登录
2019-5-15
2019-4-13 10:39:44 显示全部楼层
我在做一个类似CF的FPS,里面的步枪单发和扫射起来有不同的动画.这正是我需要的!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则