Unity3D制作序列幀動(dòng)畫的方法
當(dāng)我們需要制作動(dòng)態(tài)炫酷科技感很強(qiáng)的UI時(shí),美術(shù)一般會(huì)給我們提供一些序列圖,這時(shí)候我們只需在程序里實(shí)現(xiàn)序列動(dòng)畫。
一.動(dòng)畫機(jī)
unity自帶的幀動(dòng)畫機(jī)很方便,我們首先選擇所要播放序列幀動(dòng)畫的Image,然后在Window下選擇Animation,會(huì)彈出一個(gè)動(dòng)畫制動(dòng)的界面,我們選擇Create,然后進(jìn)入如下界面:

我們按照如下添加動(dòng)畫控制的屬性,

然后將我們美術(shù)給我們的序列圖(要設(shè)置成2DandUI模式哦)拖入到動(dòng)畫幀面板里。

Unity自帶的動(dòng)畫機(jī)播放序列幀動(dòng)畫很簡(jiǎn)單也很方便,但是有一定的局限性。因?yàn)槲覀儾荒芎芊奖愕目刂苿?dòng)畫的進(jìn)程以及一些我們的要求。(雖然也可以,但是還是需要寫代碼,然后還要操控動(dòng)畫機(jī),太費(fèi)勁)。下面就介紹完全用代碼控制動(dòng)畫播放的方法。
二.代碼控制
這個(gè)方法完全用代碼實(shí)現(xiàn),不需要在去操作一下動(dòng)畫機(jī)了。代碼如下:
public class Test : MonoBehaviour {
[SerializeField]
private Image image;
[SerializeField]
private List<Sprite> animationSprites = new List<Sprite>();
private int AnimationAmount { get { return animationSprites.Count; } }
public void PlayAnimation()
{
if (image == null) image = GetComponent<Image>();
StartCoroutine(PlayAnimationForwardIEnum());
}
private IEnumerator PlayAnimationForwardIEnum()
{
int index = 0;//可以用來控制起始播放的動(dòng)畫幀索引
gameObject.SetActive(true);
while (true)
{
//當(dāng)我們需要在整個(gè)動(dòng)畫播放完之后 重復(fù)播放后面的部分 就可以展現(xiàn)我們純代碼播放的自由性
if (index > AnimationAmount - 1)
{
index = 50;
}
image.sprite = animationSprites[index];
index++;
yield return new WaitForSeconds(0.03f);//等待間隔 控制動(dòng)畫播放速度
}
}
}
效果圖如下:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
C#?WPF?ListBox?動(dòng)態(tài)顯示圖片功能
這篇文章主要介紹了C#?WPF?ListBox?動(dòng)態(tài)顯示圖片,處理過程分為前臺(tái)代碼和后臺(tái)代碼,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-08-08
C#關(guān)聯(lián)自定義文件類型到應(yīng)用程序并實(shí)現(xiàn)自動(dòng)導(dǎo)入功能
今天通過本文給大家分享C#關(guān)聯(lián)自定義文件類型到應(yīng)用程序并實(shí)現(xiàn)自動(dòng)導(dǎo)入功能,代碼中寫入了兩個(gè)注冊(cè)表,實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2021-09-09
C#基于ScottPlot實(shí)現(xiàn)可視化的示例代碼
這篇文章主要為大家詳細(xì)介紹了C#如何基于ScottPlot實(shí)現(xiàn)可視化效果,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-01-01
DevExpress實(shí)現(xiàn)TreeList父子節(jié)點(diǎn)CheckState狀態(tài)同步的方法
這篇文章主要介紹了DevExpress實(shí)現(xiàn)TreeList父子節(jié)點(diǎn)CheckState狀態(tài)同步的方法,需要的朋友可以參考下2014-08-08
Unity實(shí)現(xiàn)透視滑動(dòng)列表
這篇文章主要為大家詳細(xì)介紹了Unity實(shí)現(xiàn)透視滑動(dòng)列表,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-07-07

