我已经在适用于 Windows 和 Linux 以及 Windows 和 Linux 计算机的适当版本的 Unity 中构建了 LGSVL。两个着色器似乎总是在 Linux 构建中被禁止,而在 Windows 构建中没有被禁止。我可以通过将其中一个(粒子/添加剂)包含在图形设置“始终包含着色器”列表中来修复它们(我应该这样做似乎很奇怪),但另一个 Skybox2CubeBlend 拒绝工作。我的天空永远是粉红色的。我已将它(以及它使用的 Day、Night 和 RiseSet 立方体贴图)也放入 Resources 文件夹中,但没有更好的结果。似乎着色器在 Linux 中不受欢迎,但如果我下载并运行该软件的预编译 Linux 版本,它就可以正常工作。这表明着色器本身一定没问题,只是没有进入我的构建或其他东西。也许这是特定于 LGSVL 的构建过程问题。有任何想法吗?同样,这一切在 Windows 构建中都运行良好。
最佳答案
看起来在 LGSVL 项目中,在 Prefabs 文件夹中,有一个 AssetBundleManager。这个预制件在检查器窗口中有一个特殊的按钮,可以根据您正在构建的目标为您创建 Assets 包。选择用于 Linux x64 的那个使其在 Assets 包中包含所有必要的东西。不再有粉红色的天空!
关于linux - Unity 中的 LGSVL 构建为 Linux 目标而非 Windows 提供了 Pink Sky,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55480669/