2015-09-01 24 views
0

我有一個Texture2D,可以創建和調整大小,並根據用戶鍵輸入快速銷燬。Unity3D Texture2D.Resize導致錯誤:afterDecrement> = 0

如果我趕緊打鍵銷燬/創建紋理我有時會出錯,顯然由紋理造成的:

afterDecrement >= 0 
UnityEngine.Texture2D:Resize(Int32, Int32) 

有誰知道這意味着什麼,以及如何解決這一問題?

+1

這種消息通常是Unity內部失敗的斷言。在這種情況下,它看起來像一個紋理抱怨它的寬度或高度爲0.根據您正在做什麼,這可能意味着您正在調整已刪除的紋理的大小,或者調整具有錯誤參數的現有紋理的大小。 – rutter

+0

感謝您的信息!我猜在Unity中,一般不應該配置對象,並讓Destroy(gameObject)完成這一切?我有一種感覺,試圖手動處理子對象,圖像等會導致類似這樣的錯誤。我有點內存泄漏偏執狂,請原諒! – BadmintonCat

回答

1

修好了!在我的視圖無效方法中,確實存在一個條件,其中爲紋理設置的寬度爲0,在下一個幀設置爲合適的寬度。我已經添加了一個支票,並且異常不再出現。