我非常流利地使用Unity,但是對於Mechanim和動畫我目前並不是太大,所以請不要給我太多的困難時間。所以我有這個布爾這是在我的遊戲管理器的腳本:「3,2,1,GO」將布爾值設置爲True後進行動畫播放?
public bool countDownDone = false;
這個布爾被設置爲true,一旦我的倒數計時器在我的比賽開始時結束。布爾值設置爲true後,我的遊戲中的所有內容都會啓動。例如:
我有這個爬行動畫,在遊戲的最初階段播放(即使在定時器結束之前)並永久循環。我的問題是,一旦布爾值設置爲「true」,我怎麼才能讓爬行動畫也啓動?或者我只是將它應用於CoRoutine並在3秒後播放?我對是否引用動畫或動畫師進行了廣泛的研究,我也對此有所疑惑。有什麼建議?如果您需要更多圖片或我的問題的詳細信息,請告訴我。謝謝! :)
NEW下面的代碼
using UnityEngine;
using System.Collections;
public class Crawling : MonoBehaviour {
Animator animator;
private GameManagerScript GMS;
void Start()
{
animator = GetComponent<Animator>();
GMS = GameObject.Find ("GameManager").GetComponent<GameManagerScript>();
}
void Update()
{
if (GMS.countDownDone == true)
{
animator.Play("Main Character Crawling", 1);
}
}
}
是安全的統一爲使用傳統的動畫呢?我讀到他們是如何試圖完成這一切並與Mechanim(Animator)完全一致的。爲了讓我使用你所提供給我的東西,我必須將我的動畫片段更改爲Legacy格式:) @Programmer –
@StephenGeorge你是對的。這是舊的,但Unity不會很快刪除它,因爲許多項目仍在使用它。我只是檢查Unity的網站,它不會很快被刪除。建議您使用新的Animator API。 – Programmer
@StephenGeorge我的回答幾乎與此相同。在我的答案中簡單地移除動畫API並將其替換爲Animator。使用'Animator.Play(「stateName」)'來播放它。 'stateName'是在Mechanim中創建的動畫狀態的名稱。 – Programmer