當 Shader 有錯誤的時候,Xcode 的輸出窗口會在每一幀都輸出 IOAF code 之類的錯誤, 表示一個數字,比如 IOAF code 4、IOAF code 11 等等。
此時 Xcode 沒有給出其他的任何信息,導致我們無法去定位問題。
解決的辦法也很簡單,點擊 Edit Scheme,在 Diagnostics 子tab中,最底下有一個 Shader Validation,將其勾選上。重新運行即可。
我遇到這個問題的時候是 IOAF code 4。勾選上 Shader Validation 後,提示我是數組越界,並指明瞭是哪個shader,哪一行,非常清晰的錯誤提示。
這個問題我搜了 1-2 個小時,希望能幫助大家節省時間。