版本:Unity 6 (6000.0)
语言:英语
启用或禁用异步着色器编译
异步着色器编译故障排除

检测异步着色器编译

您可以使用 C# API 监控异步着色器在 GPU 上运行的程序。 更多信息
参阅 词汇表
编译的状态,并在状态发生变化时执行操作。

这在高级渲染中可能最有帮助;如果占位符着色器污染了您生成的数据,则可以等到编译完成,丢弃受污染的数据,并使用正确的着色器变体重新生成新的数据。

如果您已经知道您感兴趣的材质,则可以使用 ShaderUtil.IsPassCompiled 检查着色器变体的编译状态。当状态从未编译变为已编译时,表示编译完成。

如果您不知道您感兴趣的材质,或者对多个材质感兴趣,则可以使用 ShaderUtil.anythingCompiling 检测 Unity 是否正在异步编译任何着色器变体。当该值从true变为false时,表示当前所有编译已完成。

启用或禁用异步着色器编译
异步着色器编译故障排除