0

在 Unity 中,我有一个精灵,其中包含通常的精灵和在精灵编辑器中定义为次要纹理_MainTex的附加纹理。_inner在 shaderGraph 中,当我想访问用于精灵渲染器的材质的辅助纹理时,我可以像_innerTexture2D属性中一样输入“ref”,就像一个魅力一样。

但是,当我尝试使用用于 UI 画布图像(游戏中 UI)的着色器对同一个精灵执行相同操作时,着色器似乎没有找到辅助纹理(因此相同的着色器适用于我的 SpriteRenderer,但没有'不在我的 UI 图像渲染器上)。

难道我做错了什么?知道什么吗?

4

1 回答 1

0

我遇到了类似的问题,不同的是我从着色器图中制作了一个不亮的着色器。据我所知,问题是由主节点引起的。将主节点改为 sprite lit 或 sprite unlit,然后可以指定辅助着色器,否则不会。因此,如果您的 UI 着色器可以在 sprite lit 或 sprite unlit 节点上正常工作,您可以尝试一下。

Sprite Lit 和 Sprite Unlit 工作正常

Sprite Lit 和 Sprite Unlit 工作正常

编辑:

正如我在下面评论的那样,将次要纹理翻转回来。

在此处输入图像描述

我无法解释问题背后的原理,但无论如何它对我有用。

于 2021-03-29T03:38:35.850 回答