Unity UI图像的柔和阴影

时间:2018-09-04 19:36:16

标签: unity3d

在Unity UI图像的轮廓周围实现柔和阴影的最佳方法是什么?我要达到以下效果:

desired-soft-shadow

(图片来源:YouTube video: Soft Shadow UI || Unity 5

我当前的方法是在主图像后面手动添加阴影图像。例如,请参见下面的屏幕截图:

button-with-soft-shadow

scene-heirarchy

shadow-inspector

但是,从工作流程的角度来看,我发现这种方法既乏味又杂乱,因为每次我想向UI图像添加柔和阴影时,都必须手动将此阴影GameObject添加到我的GameObject层次结构中。

虽然我认为可以稍微改善当前的工作流程,但是有更好的方法吗?


请注意,我也尝试了Unity的built-in Shadow effect component

built-in-drop-shadow

这是一个阴影,不是我想要的柔和阴影效果。

但是我认为这种方法显示了理想的工作流程,就像将阴影组件添加到带有图像的GameObject一样简单。

2 个答案:

答案 0 :(得分:1)

我会将当前的阴影分成3个图像:角,边,背景。

然后,我将创建一个脚本,以正确的尺寸和方向将这些图像实例化到要遮盖的元素(用于背景)的所有角,边缘和下方。

该脚本还将处理这些参数:

  • 浮动强度(实际上会更改alpha透明度)
  • 浮动展开(将图像拉伸)
  • Vector3 位置(如果您希望阴影从要阴影的图像偏移,请进行简单转换)

然后您就可以将其用于任何元素。

答案 1 :(得分:0)

Procedural UI Image by Josh H 在 Unity Asset Store 看起来很有希望。

<块引用>

无需大量图像即可创建无限数量的基本形状 资源。控制和动画边框宽度和边框半径。这是 非常适合创建平面样式的 UI。易于理解和 注释良好的代码以及 PDF 文档将保留这一点 包可扩展。

主要特点:

[...]

➤ 衰减:可用于柔和阴影效果或发光

fall-off-distance-param


其他“程序化 UI”包也可能支持软阴影。

自从提出这个问题以来,Asset Store 上已经发布了一些新的 UI 资产,例如True Shadow - UI Soft Shadow and Glow (beta) 由 Tai's Assets 提供。