☰

着色器

着色器(Shader)是在 GPU 核心上运行的程序片段。它们定义了渲染方法。

材质着色器标志与着色器组合(Material Shader Flags & Shader Combinations)

着色器定义了材质标志(material flags),这些标志可以按材质进行配置。每个材质着色器标志都会更改着色器代码的一部分,以改变材质的外观。例如,一旦启用了”USE_PROCEDURAL_WIND_ANIMATION”标志,材质将开始根据场景中的风力沿固定轴进行动画。

着色器缓存(Shader Cache)

每个材质都定义了一种新的着色器标志组合,这反过来又定义了一个需要编译的新着色器代码。游戏附带了一个着色器缓存,其中包含基础游戏中所有独特的着色器 + 材质着色器标志组合。

为模组进行批量着色器编译(Bulk Shader Compilation for Mods)

如果一个模组添加了相当多的新组合,运行时着色器编译可能会极大地影响游戏流程。为避免这种情况,模组所有者应该编译该模组中引入的独特着色器 + 材质组合。要做到这一点,在编辑器中通过”Publish Module”(发布模组)功能发布模组时,应勾选”Compile Shaders”(编译着色器)复选框。着色器缓存将被保存到”Modules/‘ModuleName’/Shaders/D3D11”文件夹中。请注意,游戏着色器可能会在某些版本更新中发生更改,尽管这种情况并不常见,但在这些情况下,旧的着色器缓存文件将失效且不会被使用。为避免这种情况,建议在每次上传到游戏的新主要版本之前重新创建着色器缓存。着色器编译系统具有高度并行性,根据 CPU 的多核性能,可能需要大约 30 到 60 分钟才能完成。

本页面由 AI 翻译,可能存在不准确之处。请以英文原版为准。