Unity UGUI的Outline(描边)组件的介绍及使用
Unity UGUI的Outline(描边)组件的介绍及使用
1. 什么是Outline(描边)组件?
Outline(描边)组件是Unity UGUI中的一种特效组件,用于给UI元素添加描边效果。通过设置描边的颜色、宽度和模糊程度,可以使UI元素在视觉上更加突出。
2. Outline(描边)组件的工作原理
Outline(描边)组件通过在UI元素周围绘制多个相同的UI元素,并设置不同的颜色和大小,从而实现描边的效果。描边的宽度和模糊程度可以通过调整参数来控制。
3. Outline(描边)组件的常用属性
- Effect Color:描边的颜色。
- Effect Distance:描边的距离,可以设置为正值或负值。
- Use Graphic Alpha:是否使用UI元素的透明度作为描边的透明度。
- Blur:描边的模糊程度。
- Outline:描边的宽度。
4. Outline(描边)组件的常用函数
- ModifyMesh:修改UI元素的网格,用于绘制描边效果。
5. 完整例子代码
例子1:给按钮添加红色描边
using UnityEngine;
using UnityEngine.UI;
public class Example1 : MonoBehaviour
{
public Button button;
public Outline outline;
void Start()
{
outline.effectColor = Color.red;
outline.effectDistance = new Vector2(2, -2);
outline.useGraphicAlpha = true;
outline.blur = 0;
outline.outline = 5;
}
}
操作步骤:
- 创建一个按钮,并将Example1脚本挂载到按钮上。
- 将按钮的Outline组件拖拽到Example1脚本的outline变量上。
- 在Start函数中,设置outline的属性,包括effectColor、effectDistance、useGraphicAlpha、blur和outline。
注意事项:
- 可以根据需要调整描边的颜色、距离、透明度、模糊程度和宽度。
例子2:给文本添加蓝色描边
using UnityEngine;
using UnityEngine.UI;
public class Example2 : MonoBehaviour
{
public Text text;
public Outline outline;
void Start()
{
outline.effectColor = Color.blue;
outline.effectDistance = new Vector2(1, -1);
outline.useGraphicAlpha = true;
outline.blur = 0;
outline.outline = 3;
}
}
操作步骤:
- 创建一个文本对象,并将Example2脚本挂载到文本对象上。
- 将文本对象的Outline组件拖拽到Example2脚本的outline变量上。
- 在Start函数中,设置outline的属性,包括effectColor、effectDistance、useGraphicAlpha、blur和outline。
注意事项:
- 可以根据需要调整描边的颜色、距离、透明度、模糊程度和宽度。
例子3:给图片添加绿色描边
using UnityEngine;
using UnityEngine.UI;
public class Example3 : MonoBehaviour
{
public Image image;
public Outline outline;
void Start()
{
outline.effectColor = Color.green;
outline.effectDistance = new Vector2(3, -3);
outline.useGraphicAlpha = true;
outline.blur = 0;
outline.outline = 7;
}
}
操作步骤:
- 创建一个图片对象,并将Example3脚本挂载到图片对象上。
- 将图片对象的Outline组件拖拽到Example3脚本的outline变量上。
- 在Start函数中,设置outline的属性,包括effectColor、effectDistance、useGraphicAlpha、blur和outline。
注意事项:
- 可以根据需要调整描边的颜色、距离、透明度、模糊程度和宽度。
例子4:给滑动条添加黄色描边
using UnityEngine;
using UnityEngine.UI;
public class Example4 : MonoBehaviour
{
public Slider slider;
public Outline outline;
void Start()
{
outline.effectColor = Color.yellow;
outline.effectDistance = new Vector2(2, -2);
outline.useGraphicAlpha = true;
outline.blur = 0;
outline.outline = 5;
}
}
操作步骤:
- 创建一个滑动条对象,并将Example4脚本挂载到滑动条对象上。
- 将滑动条对象的Outline组件拖拽到Example4脚本的outline变量上。
- 在Start函数中,设置outline的属性,包括effectColor、effectDistance、useGraphicAlpha、blur和outline。
注意事项:
- 可以根据需要调整描边的颜色、距离、透明度、模糊程度和宽度。
例子5:给输入框添加紫色描边
using UnityEngine;
using UnityEngine.UI;
public class Example5 : MonoBehaviour
{
public InputField inputField;
public Outline outline;
void Start()
{
outline.effectColor = Color.magenta;
outline.effectDistance = new Vector2(1, -1);
outline.useGraphicAlpha = true;
outline.blur = 0;
outline.outline = 3;
}
}
操作步骤:
- 创建一个输入框对象,并将Example5脚本挂载到输入框对象上。
- 将输入框对象的Outline组件拖拽到Example5脚本的outline变量上。
- 在Start函数中,设置outline的属性,包括effectColor、effectDistance、useGraphicAlpha、blur和outline。
注意事项:
- 可以根据需要调整描边的颜色、距离、透明度、模糊程度和宽度。
参考资料
- Unity官方文档:Outline
Unity UGUI的Outline(描边)组件的介绍及使用的更多相关文章
- Unity UGUI Layout自动排版组件用法介绍
Unity UGUI布局组件 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享 ...
- 关于 Unity UGUI 中修改 Mask 组件下 Image 等子节点组件的材质无效的问题
前几天同事做了一个效果,希望在原本使用了遮罩组件 Mask 的技能图标(让技能图标变成圆形)上在添加一个置灰的功能,但问题来了:因为是动态根据游戏中玩家的条件才动态置灰,以修改 Mask 下子节点 I ...
- unity, UGUI Text outline
UGUI Text的勾边效果是通过添加component实现的: Add Component->UI->Effects->Outline 参考:http://www.cnblogs. ...
- Unity UGUI —— 无限循环List
还记得大学毕业刚工作的时候是做flash的开发,那时候看到别人写的各种各样的UI组件就非常佩服,后来自己也慢慢尝试着写,发现其实也就那么回事.UI的开发其实技术的成分相对来说不算多,但是一个好的UI是 ...
- Unity UGUI图文混排源码(三) -- 动态表情
这里是根据图文混排源码(二)进一步修改的,其他链接也不贴了,就贴一个链接就好了,第一次看这文章的同学可以先去看看其他几篇文章 Unity UGUI图文混排源码(二):http://blog.csdn. ...
- Unity UGUI图文混排源码(二)
Unity UGUI图文混排源码(一):http://blog.csdn.net/qq992817263/article/details/51112304 Unity UGUI图文混排源码(二):ht ...
- Unity UGUI实现图文混排
目前在unity实现图文混排的好像都是通过自定义字体然后在文本获取字符的位置,用图片替换掉图片标签,这样对于支持英文来说,并没有什么影响.然后对于中文来说就是一个相当麻烦的事了,毕竟图文混排多用于游戏 ...
- Unity UGUI
超详细的基础教程传送门:(持续更新中) Unity UGUI之Canvas&EventSystem:http://blog.csdn.net/qq992817263/article/detai ...
- Unity Jobsystem 详解实体组件系统ECS
原文摘选自Unity Jobsystem 详解实体组件系统ECS 简介 随着ECS的加入,Unity基本上改变了软件开发方面的大部分方法.ECS的加入预示着OOP方法的结束.随着实体组件系统ECS的到 ...
- unity ugui Toggle Group详解(Chinar出品、简单易懂)
UGUI Toggle Group用法教程 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar ...
随机推荐
- linux下防火墙与SELinux状态与关闭
linux下防火墙与SELinux状态与关闭 在使用ftp命令以及wget命令测试两台linux机器之间ftp下载是否正常,虽然关闭了防火墙,但是一直还是提示以下错误 然来还需要将SELinux 设置 ...
- NC19469 01串
题目链接 题目 题目描述 I used to believe We were burning on the edge of something beautiful Something beautifu ...
- Redis基础命令汇总,看这篇就够了
本文首发于公众号:Hunter后端 原文链:Redis基础命令汇总,看这篇就够了 本篇笔记将汇总 Redis 基础命令,包括几个常用的通用命令,和各个类型的数据的操作,包括字符串.哈希.列表.集合.有 ...
- 【Java】Eclipse常用快捷键整理
前言 还是最近在上Java课,由于疫情原因,看的网课,那里的老师比较实战派,很多时候不知道按了什么快捷键就立马出现了很骚的操作.网上查询后发现了一些快捷键对于我这个eclipse小白还是挺常用的,整理 ...
- 【源码解读】asp.net core源码启动流程精细解读
引言 core出来至今,已经7年了,我接触也已经4年了,从开始的2.1,2.2,3.1,5,6再到如今的7,一直都有再用,虽然我是一个Winform仔,但是源码一直从3.1到7都有再看,然后在QQ上面 ...
- Godot的几个附加脚本和进行继承时比较特别的特性
注: 这是在Godot4.0中总结出的内容,并且语言是C#. 特别的,下面有的特性和C#关系比较大. 基本特性 在Godot中,为某个节点编写特别的代码时,需要为节点新建脚本,或引用已有脚本. 引用脚 ...
- 800名科学家Nature联名发文主张废除p值!
每年,全球有数百万学生修读统计学课程.随着世界上的数据量越来越大,统计学已成为越来越受欢迎的话题.如果大多数学生都从这门课中记住一点,那可能就是"统计显著性"和"p 值& ...
- 二维数组初始化vector, 以及类型转换问题
//二维数组的初始化1 vector<vector<float>> _box_parm(class_row_num, vector<float>(class_col ...
- 从n个不同元素中有放回的取出r个且不计顺序,有多少种不同的取法?
从n个不同元素中有放回的取出r个且不计顺序,有多少种不同的取法? 答案是:\(C_{n+r-1}^r\) 解析 因为是有放回地取出,所以同一个元素可能会被取多次,并且取出的元素是不计顺序的,那么如果我 ...
- kafka学习之三_信创CPU下单节点kafka性能测试验证
kafka学习之三_信创CPU下单节点kafka性能测试验证 背景 前面学习了 3controller+5broker 的集群部署模式. 晚上想着能够验证一下国产机器的性能. 但是国产机器上面的设备有 ...