推荐阅读
大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新 Unity 开发技巧,觉得有用记得一键三连哦。
在使用Unity3D开发的时候,会遇到要高亮某个物体的功能,比如高亮宝箱、高亮金币等。
今天就推荐一款比较好用的高亮插件 Highlighting System插件,先看下效果图:

这里提供两个版本的下载,一个是精装版,只有基础的高亮功能(已经够用),一款是完整版。
精装版下载链接:
https://download.csdn.net/download/q764424567/12325120

完整版下载链接:
https://download.csdn.net/download/q764424567/44305213
下面就来看怎么使用吧。
(1)导入插件
插件目录如下图所示:
HighlightingSystemEditor.cs:脚本用来控制高亮插件的渲染。HighlightableObject.cs:挂载到需要高亮的物体HighlightingEffect.cs:挂载到需要显示高亮物体的摄像机上,不然不渲染HighLightControl.cs.cs:自定义控制物体高亮的脚本
然后还有一些Shader。
(2)给摄像机挂载HighlightingEffect.cs脚本:
(3)给需要高亮的物体添加HighlightableObject.cs和HighLightControl.cs.cs脚本:
(4)运行程序,查看效果:.gif)
(1)导入插件
文件目录如下图所示:
(2)示例场景
可以点开Assets→HighlightingSystemDemo→Scenes 文件夹 ,查看示例场景:
(3)新建场景
新建一个场景:File→New Scene
(4)新建Cube
新建一个Cube:位置(0,0,0)
(5)给摄像机添加Highlighting Renderer.cs脚本组件
给摄像机添加Highlighting Renderer.cs脚本组件(这个组件跟精装版的HighlightingEffect.cs脚本组件作用差不多):

(5)给游戏对象Cube添加Highlighter.cs脚本组件
(6)新建脚本HighLightControl.cs编辑代码:
using HighlightingSystem; using System.Collections; using System.Collections.Generic; using UnityEngine; public class HighLightControl : MonoBehaviour { Highlighter high_Cube; void Start() { high_Cube = GetComponent<Highlighter>(); } void Update() { if (Input.GetKeyDown(KeyCode.W)) { high_Cube.ConstantOn(Color.cyan, 3);//开启高亮 } if (Input.GetKeyDown(KeyCode.S)) { high_Cube.ConstantOff();//关闭高亮 } } }csharp运行
(7)查看效果
(8)修改摄像机上挂载的Highlighting Renderer.cs脚本组件的参数:
Preset:Default
Preset:Wide
Preset:Strong
Preset:Speed
Preset:Quality
Preset:Solid 1px
Preset:Solid 2px
(9)拓展一下:透视高亮效果
选中Cube复制一份,然后勾选Overlay属性:
选择Create→3D Object→Cube命令,再新建一个Cube,拉长这个Cube挡住后面两个Cube:
运行程序:
可以看到勾选Overlay属性的Cube透视高亮了。
这就是Highlighting System插件分享的全部内容了。
当然完整版的插件里面有很多的示例效果都没有展示,这些都等待大家去摸索了。
Unity爱好者社区 分享Unity相关的技术文章、工具资源等。