Untiy3D使用HighlightingSystem插件实现鼠标移动到物体物体高亮效果

插件分享:

链接:https://pan.baidu.com/s/1huncAc0

密码:krde

或者如下

链接:https://pan.baidu.com/s/1x4185KYeSvLEbr0zSccBWw

密码:rwj4

//插件导入时如若报错,将错误行代码注释掉即可

1.在场景摄像机上挂载 Highlighting Effect 脚本,用于渲染外发光

2.在需要外发光效果的物体上添加 HighlightableObject 脚本,用于外发光效果显示

//HighLightControl脚本为本人自己编写的脚本便于控制,大家可忽略

 

3.进行外发光的触发开始与结束代码实现

 

/***************************************************
 * 项目名称:外发光组件学习
 * 创建人:魔卡先生
 * 创建时间:2018.01.20
 * 脚本功能描述:外发光功能实现
 * 
 * 脚本修改:    修改人         修改时间        修改内容
 * 
*****************************************************/
using UnityEngine;
using System.Collections;

public class HighLightControl : MonoBehaviour
{

    //持有当前外发光需要的组件
    private HighlightableObject m_ho;

    void Awake()
    {
        //初始化组件
        m_ho = GetComponent<HighlightableObject>();
    }


    void HifhLightFunction()
    {
        //循环往复外发光开启(参数为:颜色1,颜色2,切换时间)
        m_ho.FlashingOn(Color.green, Color.blue, 1f);

        //关闭循环往复外发光
        m_ho.FlashingOff();


        //持续外发光开启(参数:颜色)
        m_ho.ConstantOn(Color.yellow);

        //关闭持续外发光
        m_ho.ConstantOff();
    }

    /// <summary>
    /// 鼠标指向模型时触发
    /// </summary>
    private void OnMouseEnter()
    {
        //开启外发光
        m_ho.FlashingOn(Color.green, Color.blue, 1f);
    }

    /// <summary>
    /// 鼠标离开模型时触发
    /// </summary>
    private void OnMouseExit()
    {
        //关闭外发光
        m_ho.FlashingOff();
    }
}

4.效果图如下

备注:

//获取到鼠标在世界空间的位置
                Vector3 MousePos = Camera.main.ScreenToWorldPoint(Input.mousePosition + new Vector3(0, 0, 10));
                //计算鼠标与目标点的位置
                float dis = (MousePos - target.transform.position).magnitude;


转自:https://www.cnblogs.com/mrmocha/p/8320994.html

  • 7
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值