The Animator Controller you have used is not valid. Animations will not play
反覆檢查後發現是動畫 Clip 沒有載入造成的。
繼續追查下去確認了這個問題的幾個特性:
- 打包成 Asset Bundle 的物件才會發生這情況。
- 自帶動畫 Clip 的 FBX 檔才會發生這情況。
- 同一包 Bundle 裡只要有一個物件出現這種壞掉的情況會造成其它物件也壞掉。
- 不固定發生。也就是有時候載入動畫正常,有時候出錯,完全憑運氣。
最終觀察到這個情況的發生原因,是「Play 之後將視窗的 Focus 移到 Unity 之外再移回來」。更白話的說明就是在 Unity 按了 Play,程式開始執行了;接著又點選了其它視窗例如瀏覽器、編輯器、或是回了一下 Line 訊息之類的,總之就是切換到 Unity 以外的視窗;然後再度把焦點回到 Unity,此時若有 Instantiate 的動作就會出現動畫載入不完整的問題。
發生的原因如此,那解法自然是 Play 之後不要任意切換到別的視窗即可。
以上為這次卡關做個紀錄。
發生的原因如此,那解法自然是 Play 之後不要任意切換到別的視窗即可。
以上為這次卡關做個紀錄。
總結,個人覺得這是 Unity 自帶的奇怪 bug,若誰知道更好的解法也請跟我說。
Unity 真的很多莫名奇妙的坑。
沒有留言:
張貼留言