我有一个着色器,其中包含一些#includes 到其他 cg/hlsl 脚本。如果我将该着色器放入 AssetBundle,我该如何处理 cg/hlsl 脚本?
是否不再需要它们,因为它们是在 AssetBundle 构建过程中编译到着色器中的?Unity 版本为 5.6.6f2
或者我是否也必须将 cg/hlsl 脚本也放入 AssetBundle 中?如果是这种情况,我如何在运行时加载它们以便着色器找到它们?
有人建议我内联它们,但如果可能的话,我想避免它。
着色器不会编译到资产包中,它们像任何其他脚本一样受到威胁,因此无法编译到包中。
在项目设置 > 图形 > 内置着色器设置下,有一个“始终包含着色器”部分。如果您在其中添加着色器,它们将包含在您的构建中。因此,只要您的资产包在编译包时有对着色器的引用,一旦实例化对象,使用正确的着色器就应该没有问题。
根本不需要内联着色器。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句