91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Unity3D如何制作序列幀動畫

發布時間:2020-08-03 10:05:46 來源:億速云 閱讀:1136 作者:小豬 欄目:編程語言

這篇文章主要為大家展示了Unity3D如何制作序列幀動畫,內容簡而易懂,希望大家可以學習一下,學習完之后肯定會有收獲的,下面讓小編帶大家一起來看看吧。

當我們需要制作動態炫酷科技感很強的UI時,美術一般會給我們提供一些序列圖,這時候我們只需在程序里實現序列動畫。

一.動畫機

unity自帶的幀動畫機很方便,我們首先選擇所要播放序列幀動畫的Image,然后在Window下選擇Animation,會彈出一個動畫制動的界面,我們選擇Create,然后進入如下界面:

Unity3D如何制作序列幀動畫

我們按照如下添加動畫控制的屬性,

Unity3D如何制作序列幀動畫

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

Unity3D如何制作序列幀動畫

Unity自帶的動畫機播放序列幀動畫很簡單也很方便,但是有一定的局限性。因為我們不能很方便的控制動畫的進程以及一些我們的要求。(雖然也可以,但是還是需要寫代碼,然后還要操控動畫機,太費勁)。下面就介紹完全用代碼控制動畫播放的方法。

二.代碼控制

這個方法完全用代碼實現,不需要在去操作一下動畫機了。代碼如下:

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;//可以用來控制起始播放的動畫幀索引
 gameObject.SetActive(true);
 while (true)
 {
 //當我們需要在整個動畫播放完之后 重復播放后面的部分 就可以展現我們純代碼播放的自由性
 if (index > AnimationAmount - 1)
 {
 index = 50;
 }
 image.sprite = animationSprites[index];
 index++;
 yield return new WaitForSeconds(0.03f);//等待間隔 控制動畫播放速度
 }
 }
}

效果圖如下:

Unity3D如何制作序列幀動畫

以上就是關于Unity3D如何制作序列幀動畫的內容,如果你們有學習到知識或者技能,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

尼勒克县| 越西县| 鱼台县| 保亭| 南通市| 定陶县| 固原市| 泰安市| 新沂市| 安阳市| 定安县| 眉山市| 耒阳市| 綦江县| 嘉峪关市| 梧州市| 泸溪县| 五大连池市| 高清| 湘阴县| 临洮县| 扬中市| 工布江达县| 师宗县| 阿巴嘎旗| 竹山县| 留坝县| 崇州市| 宜黄县| 巴彦淖尔市| 集安市| 苍溪县| 融水| 错那县| 孝昌县| 天门市| 台中县| 利辛县| 福海县| 墨玉县| 福安市|