当 Shader 有错误的时候,Xcode 的输出窗口会在每一帧都输出 IOAF code 之类的错误, 表示一个数字,比如 IOAF code 4、IOAF code 11 等等。

此时 Xcode 没有给出其他的任何信息,导致我们无法去定位问题。

解决的办法也很简单,点击 Edit Scheme,在 Diagnostics 子tab中,最底下有一个 Shader Validation,将其勾选上。重新运行即可。

image.png

我遇到这个问题的时候是 IOAF code 4。勾选上 Shader Validation 后,提示我是数组越界,并指明了是哪个shader,哪一行,非常清晰的错误提示。

这个问题我搜了 1-2 个小时,希望能帮助大家节省时间。


krosshj
152 声望16 粉丝

Developer, Gamer, Artist