HighlightingSystem插件使用(边缘发光)
发表于2017-12-26
这篇文章给大家介绍下使用插件HighlightingSystem实现边缘发光效果。导入Unity里面可能会报错,不过没关系,直接注释掉就可以了,我用的是Unity5.1的版本。
可以看到如下文件夹,HighlighingSystemDemo是一些实例,可以看一下,然后Plugins里面就是插件的相关代码了

Resouces里面是一些Shader,Scripts里面有两个脚本,一个HighlightingEffect需要挂载在摄像机上面,用来渲染, 一个 HighlightableObject脚本用来显示边缘发光,哪一个物体需要边缘发光,就可以把该脚本挂载在那一个物体上面,然后调用里面的方法就可以实现了。
下面使用自己探究写的,

public class MouseTest : MonoBehaviour { public HighlightableObject ho; void Start() { ho.FlashingOn(Color.red, Color.blue); } }
就这样就可以实现从red到blue闪烁的效果
当然里面还有很多方法值得试试,我可以带大家来看一下一些方法的使用,其他的方法大家自己探究哦
导入Unity里面之后有一个PDF文档,里面目录有一个Methods reference,就是说明里面方法的使用

(1)ConstantOn(Color c); 边缘发光
()ConstantOff(Color c);边缘发光效果关闭
()FlashingOn(Color.red, Color.blue); 从一种颜色到另一种颜色之间的闪烁
另一版
需求:点选物体时,高亮显示,以示用户选中了这个物件。
官方教程:http://deepdreamgames.com/highlighting-system/ 翻译整理如下:
1、安装插件
2、在Main Camera增加HighlightingRenderer component
3、在动作触发的代码中加入高亮显示代码:
using HighlightingSystem;
Highlighter h = gameObject.AddComponent<Highlighter>();;
h.ConstantOn(Color.yellow);
h.ConstantOffImmediate();
h.FlashingOn(Color.blue, Color.cyan, 2f);
4、真实场景中,点选后高亮物件:
using UnityEngine; using System.Collections; using HighlightingSystem; public class Tap : MonoBehaviour { void OnTap() { Highlighter h = gesture.Selection.AddComponent<Highlighter>();; // Fade in constant highlighting h.ConstantOn(Color.yellow); // Turn off constant highlighting h.ConstantOffImmediate(); // Start flashing from blue to cyan color and frequency = 2f h.FlashingOn(Color.blue, Color.cyan, 2f); } }