Skip to content

Shadow

image-20260717173014537

TIP

这是 Unity UGUI 的 Shadow 阴影组件

它的作用是:给 UI Graphic 复制一层偏移后的颜色层,从而形成文字或图片阴影。它不是真实光照阴影。

Unity_UI_Shadow_Inspector_Expanded_Guide

截图字段解释

Effect Color:阴影颜色。 截图中是黑色。Alpha 越低,阴影越淡。常用黑色半透明、深灰、深蓝。

Effect Distance:阴影偏移距离。 X 控制左右偏移,Y 控制上下偏移。 截图中 X = 1Y = -1,表示阴影向右下方偏移。

Use Graphic Alpha:是否使用原图形的透明度。 勾选后,原文字 / 图片变透明时,阴影也会一起变透明。 做 UI 淡入淡出时通常建议勾选。

实现原理

c
原 UI 图形

复制一份

改成 Effect Color

按 Effect Distance 偏移

再绘制原 UI 图形

所以 Shadow 本质是“复制 + 改色 + 偏移”。

适合用在哪里

按钮文字、标题文字、分数、金币数量。 浅色文字放在复杂背景上。 图片图标需要轻微层次感。 移动游戏 UI 里很常见。

Shadow 和 Outline 区别

Shadow:向一个方向复制,形成阴影。 Outline:向多个方向复制,形成描边。 想让文字更清晰,用 Outline;想要轻微层次,用 Shadow。

代码设置

c
using UnityEngine;
using UnityEngine.UI;

Shadow shadow = GetComponent<Shadow>();
shadow.effectColor = new Color(0, 0, 0, 0.5f);
shadow.effectDistance = new Vector2(1, -1);
shadow.useGraphicAlpha = true;

一句话记:Shadow 不是真实光照阴影,而是把 UI 图形复制一份、改色、偏移。

文章评价

读完这篇,留下你的看法

暂无审核通过的评价。

登录账号后才能评价。

本站访客数0总站访问量0本页访问量0