作者reccaX (渺小的正義)
看板GameDesign
標題[請益] Unity enable BoxCollider2D跳錯誤訊息
時間Thu Jan 5 17:43:00 2017
目前製作角色的攻擊動作,攻擊的時候會enable 預先放置的BoxCollider2D在角色前方,
不過都會跳出錯誤訊息:
Assertion failed on expression: 'GetShapeCount () == 0'
Assertion failed on expression: 'GetShape () == NULL'
http://goo.gl/s6scBd
這邊好像有在討論這個問題,但是我還是不太清楚他是怎麼解決的。
不知道有沒有人可以指點一下,感謝。
CODE:
[SerializeField]
private BoxCollider2D MeleeCollider;//放入BoxCollider2D
private void Update()
{
MeleeCollider.enabled = true;
}
本來是放在攻擊底下的,不過放在Update下面測試結果也一樣。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.229.132.30
※ 文章網址: https://www.ptt.cc/bbs/GameDesign/M.1483609382.A.297.html
※ 編輯: reccaX (36.229.132.30), 01/05/2017 17:46:56
推 cowbaying: 是因為沒初始化還是沒指定物件嗎? 01/05 18:10
在Awake加上
MeleeCollider = GetComponent<BoxCollider2D>();
還是會跳一樣的錯誤...
※ 編輯: reccaX (36.229.132.30), 01/05/2017 19:08:54
推 yu830619: 用add的方式呢? 01/05 20:29
推 amsmsk: 用動畫機控制boxcollider開關試試 01/06 00:44
實驗中
範例是綁在animation的event上面。
※ 編輯: reccaX (36.229.213.235), 01/06/2017 16:29:18
→ rswa: 我怎試都沒assert 丫..lol 有沒有完整的assert 範例 01/07 22:04
→ rswa: 我是用c# 測試 01/07 22:05
→ rswa: 我是unity 5.5 01/07 22:05
似乎是版本的問題,有問題的版本是5.50a6,改用5.50f3就不會跳這訊息了。
※ 編輯: reccaX (36.229.213.235), 01/07/2017 23:39:11
推 cowbaying: 這問題還真是... 01/08 03:17