带有包含#include 到 cg/hlsl 的着色器的 AssetBundles

艾吉

我有一个着色器,其中包含一些#includes 到其他 cg/hlsl 脚本。如果我将该着色器放入 AssetBundle,我该如何处理 cg/hlsl 脚本?

是否不再需要它们,因为它们是在 AssetBundle 构建过程中编译到着色器中的?Unity 版本为 5.6.6f2

或者我是否也必须将 cg/hlsl 脚本也放入 AssetBundle 中?如果是这种情况,我如何在运行时加载它们以便着色器找到它们?

有人建议我内联它们,但如果可能的话,我想避免它。

雷米

着色器不会编译到资产包中,它们像任何其他脚本一样受到威胁,因此无法编译到包中。

在项目设置 > 图形 > 内置着色器设置下,有一个“始终包含着色器”部分。如果您在其中添加着色器,它们将包含在您的构建中。因此,只要您的资产包在编译包时有对着色器的引用,一旦实例化对象,使用正确的着色器就应该没有问题。

根本不需要内联着色器。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

有没有办法在片段着色器上从顶点着色器到一个点的位置绘制一个圆?

当我将具有属性的着色器传递到着色器时,gl_Position将不会移动顶点?

Unity着色器,将具有相同材质的对象渲染到后续的GrabPasses

如何通过顶点着色器将数据从顶点着色器传递到片段着色器

如何在Metal中将数组从顶点着色器传递到片段着色器

OpenGL:如何将顶点位置从几何着色器传递到片段着色器?

OpenGL-一次将所有数据传递到着色器时遇到麻烦

将顶点位置从顶点传递到片段着色器-仅在使用Nsight进行调试时有效

着色器输入到寄存器映射

是否有基本的着色器类?

金属RGB到YUV转换计算着色器

从计算着色器写入到持久映射的SSBO失败

GLSL 变量未从顶点传递到片段着色器

将计算着色器输出渲染到屏幕

Unity将多个纹理(数组)传递到着色器?

比较两种状态到着色器中

带有SceneKit SCNProgram的金属着色器

GL_Triangles带有细分着色器

带有几何着色器的OpenGL几何挤出

顶点着色器和像素着色器有什么关系?

如果几何着色器处于活动状态,如何将信息从顶点着色器传递到片段着色器?

GLSL从“片段着色器”到“顶点着色器”发送颜色数据似乎总是等于0

在glsl 3.3中将浮点数组从顶点着色器传递到片段着色器

将数据“预加载”到计算着色器的共享存储中以实现更快的读取访问是否有意义?

是否可以使用具有或不具有几何体着色器的相同顶点着色器和片段着色器?

计算着色器共享内存包含工件

如何将着色器包含为外部文件

主程序中有多个着色器程序

具有Typescript和React三纤维的着色器