Blender 四点五与 EEVEE 着色器编译问题

发布于 2026年02月26日 | 从西班牙语翻译
Captura de pantalla de Blender 4.5 mostrando el mensaje Compilando sombreadores en la vista Rendered con EEVEE, con objetos temporalmente invisibles

Blender 中消失物体的谜团

当你在 Blender 4.5 中打开一个项目并切换到 Material Preview 或 Rendered 视图使用 EEVEE 时,会发生一个令人困惑的现象:物体暂时消失 👻 并出现“Compilando sombreadores”消息。这是因为 4.x 版本中重写的全新 EEVEE 引擎需要在显示它们之前为每个材质生成所有着色器,这个过程可能需要几秒钟,尤其是在具有复杂材质或重量级纹理的场景中。

着色器编译背后的科学

Blender 的着色器系统为每个材质创建一个针对用户特定硬件优化的 GPU 编译版本。一旦编译完成,这些着色器会缓存以便快速访问,但某些事件可能会强制重新编译:

这种编译对于确保最终渲染过程中的最大性能是必要的 ⚡。

可视化问题的解决方案

为了避免物体在编译期间暂时消失,Blender 提供了一个优雅的解决方案。你可以转到 Edit > Preferences > Viewport 并激活 Asynchronous Shader Compilation 选项。启用此配置后:

此功能将用户体验从令人沮丧转变为流畅 🎯。

优化编译时间的提示

有几种策略可以减少着色器编译时间并提高视口响应性:

着色器系统为每个材质创建一个 GPU 编译版本以优化性能

有趣的是,在 2025 年,我们可以在 Houdini 中几秒钟内模拟整个海洋,但在 Blender 中查看一个简单的纹理仍然需要等待着色器编译。看来 GPU 在开始工作时有自己的意识形态 😅。