Unity 程式碼幀動畫
Unity序列幀動畫 可以使用Unity本身自帶的切圖加Animation製作。詳細製作可以參考這個網址:
http://blog.csdn.net/liqiangeastsun/article/details/46356939
還可以通過程式碼製作,也不是很複雜,這兩種情況根據專案需求使用。
廢話不多說,上程式碼
新增引用:
using UnityEngine;
using System;
using UnityEngine.UI;
using System.Collections.Generic;
using System.Collections;
新增控制元件:
public GameObject go;//建立一個UI Image物體掛載上;
public sprite[] picture=new sprite[5];//將五個sprite掛載 也可以通過程式碼查詢資源的方法獲取
//限制幀的時間
private float m_fTime = 0;
//一秒多少幀
private float m_fFps =7;
//暫停
private bool m_bStop = false;
//當前幀
private int NowZhen;
新增方法:
private void Update()
{
DrawAnimation();
}
void DrawAnimation()
{
//計算限制幀的時間
m_fTime += Time.deltaTime;
//超過限制幀切換貼圖
if (m_fTime >= 1.0 / m_fFps && m_bStop == false)
{
//幀序列切換 切換sprite
go.GetComponent<Image>().sprite=picture[i];
NowZhen ++;
//限制幀清空
m_fTime = 0;
//播放完所有的sprite
if (NowZhen >= DeskSmok.Length)
{
// 新增動畫完你想觸發的事情
m_bStop = true;//停止播放
NowZhen = 0;//迴圈播放
}
}
}