【发布时间】:2021-02-01 10:50:30
【问题描述】:
在 Unity 中,我有一个带有通常的 _MainTex 的 sprite 和一个附加的 _inner 纹理,在 sprite 编辑器中定义为辅助纹理。
在 shaderGraph 中,当我想访问用于 sprite 渲染器的材质的辅助纹理时,我只需在 Texture2D 属性中输入“ref”为 _inner,就像一个魅力。
但是,当我尝试使用用于 UI 画布图像(游戏中 UI)的着色器对同一个精灵执行相同操作时,着色器似乎找不到辅助纹理(因此相同的着色器适用于我的 SpriteRenderer ,但不在我的 UI 图像渲染器上)。
我做错了吗?知道什么吗?
【问题讨论】:
-
能贴出着色器代码吗?
-
可以,不过是shadergraph生成的。前两个属性是:
Properties{ [NoScaleOffset] _MainTex ("MainTexture", 2D) = "white" { } [NoScaleOffset] _inner ("Inner", 2D) = "white" { } }
标签: unity3d user-interface shader shader-graph