是否有可能在Unity中获得Sprite Sheet动画的当前帧?

问题描述 投票:0回答:1

[我在Unity(2019.2.21f1)中有一个简单的12帧2D精灵动画,我是通过制作一个精灵表并使用Unity精灵编辑器将精灵表切成动画的各个帧来创建的。

我想在动画的第3、7和10帧上执行某些代码。

是否可以用代码(C#)获取动画中当前正在显示的帧?还是在显示第3帧,第7帧或第10帧时是否有其他正确执行代码的方法?

c# unity3d animation sprite sprite-sheet
1个回答
0
投票
您可以用代码来完成,但是推荐的(而且容易得多)的方法是使用Animation Events

这是在动画的第三帧上调用某些代码的示例。我圈了您必须单击以添加动画事件的按钮。添加事件后,将其拖到要执行的帧或时间上(也圈出)。然后单击动画事件,然后输入事件执行时要调用的函数的名称。您可以选择通过在函数名称下输入参数来将参数传递给函数。

© www.soinside.com 2019 - 2024. All rights reserved.