【发布时间】:2014-04-03 12:51:54
【问题描述】:
我有 两个 精灵需要组合成 一个。我有一个使用 Shaderlab 语法的着色器,它适用于普通纹理,但 SpireRenderer 会警告它是一个固定函数着色器,而且它不适用于Sprite Packer。
这是我的目标:
所以有一个 base sprite 用于背景和 image sprite 为卡片提供最终外观。使用 ShaderLab 我可以只使用“组合纹理”来执行此操作,但我不知道如何或是否可以使用 CG。
【问题讨论】:
-
这个过程什么时候发生?可以在初始化时完成还是需要在帧缓冲区上完成?
-
@user1610743 是的,它应该在帧缓冲区上完成。在初始化中进行纹理组合会增加加载时间。
-
事情是,在初始化期间做 1x 的事情远比在每一帧中一遍又一遍地做事情要好得多。如果您需要在每一帧内多次进行组合,则尤其如此。我无法为您发布一些代码,因为我不确定为什么将组合一次渲染到帧缓冲区中,将其复制到纹理缓冲区(GPU 内)然后使用该纹理作为预加工组合。另外,我对 Unity3D 不太熟悉。它真的会为你以后的游戏循环节省一些性能。