之前看过一个用来实现光晕效果的shader,但是这个shader似乎只适用于球状物,对于非球状物就不是很友好。效果如图1、图2所示。

图1 用shader实现的光晕效果

图2 光晕shader对非球状物体很不友好

今天发现unity中的光源居然自带halo效果(版本是2019.1.4f1),在inspector面板勾选Draw Halo即可,用它就可以来模拟光晕,效果还不错。如图3所示。


图3 用Draw Halo来实现光晕效果

搭配standard shader中的emission,感觉贼好用。(如图4的不明物体所示)


图4 Draw Halo和Emission配合使用的某不明物体

之前用的那个shader的实现原理似乎只是将纹理沿着模型方向伸展,然后再用一个类似于高光反射模型计算一下,得到的光晕并不是真正的光,所以暂时无法实现光照之间的交互(如阴影、反光等等)。这个halo就不一样了,由于它是跟光源捆绑在一起的,所以一般光源能实现的光照交互它基本上都有!如图5所示的反射效果。


图5 看左边球体上的红色反光!

当然这个halo也不是没有缺点,比如说在模拟非球形的光晕时还是略僵硬。如图6所示。


图6 用Draw Halo模拟非球状物体的光晕

图6中cube的scale分别是1、1、1,point light的range是2,必须要把point light的range拉得很大才会稍微好一点,比如说把它改为8。如图7所示。


图7 将point light的range增加到8后的光晕效果(这光晕也太大了。。。)

以及我在思考,如果想给长条状物体加上一层光晕该怎么办。
虽然这种歪门邪道有这样那样的不足,但是,总之还算是给光晕特效的实现提供了一种除shader以外的新思路吧。

unity光源自带的Halo效果相关推荐

  1. UNITY 优化之带Animator的Go.SetActive耗时问题,在手机上,这个问题似乎并不存在,因为优化了后手机上运行帧率并未明显提升...

    UNITY 优化之带Animator的Go.SetActive耗时问题,在手机上,这个问题似乎并不存在,因为优化了后手机上运行帧率并未明显提升 UNITY 优化之带Animator的Go.SetAct ...

  2. Unity之SkinMeshRenderer带骨骼的人体模型换装

    Unity之SkinMeshRenderer带骨骼的人体模型换装 SkinMeshRenderer系统 条件 换装解决方案 第一种解决方案 第二种解决方案 方案选择 代码 效果 参考链接 SkinMe ...

  3. unity 陀螺仪 物体旋转和移动效果

    unity 陀螺仪 物体旋转和移动效果 直接上码 带注释 public class SDKGyroController : MonoBehaviour {//陀螺仪是否存在class GyroGame ...

  4. Unity的NGUI插件篇——入场效果

    Unity的NGUI插件篇--入场效果 入场效果 入场效果需要借助于NGUI提供的TweenPosition类来完成,为了说明此类的使用方法,本节将使会讲解两个示例.本文选自  大学霸 <NGU ...

  5. html纵向滚动特效,带视觉差效果的垂直全屏整页滚动特效

    这是一款效果非常炫酷的带视觉差效果的垂直全屏整页滚动特效.该特效使用jQuery和CSS3完成,用户可以通过滚动鼠标来一次垂直切换一个页面,在页面切换的时候还带有一些视觉差特效. 使用方法 HTML结 ...

  6. jQuery 设计和自定义一个带展开动画效果的导航栏

    设计和自定义一个带展开动画效果的导航栏,尝试写了一个demo,加上设计和调试差不多写了一天吧. 这里就来讲讲如何从设计->写布局->写样式->写JS代码 完成一个完全自己设计的导航栏 ...

  7. OpenCV-绘制奥运五环(带套接效果)

    作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 绘制逻辑 奥运五环由5个同心圆套接组成,有蓝.黄.黑.绿.红5种颜色.环从左到右互相套接,上面是 ...

  8. Unity Shader 之 简单 护盾Shield 效果的实现

    Unity Shader 之 简单 护盾Shield 效果的实现 目录 Unity Shader 之 简单 护盾Shield 效果的实现 一.简单介绍 二.实现原理

  9. 【Unity】 结合DoTween制作抛物线效果

    [Unity] 结合DoTween制作抛物线效果 概要 public partial class EMath {public static Vector3 Parabola(Vector3 start ...

  10. Unity 之 ShaderGraph 实现旋涡(传送门)效果入门级教程

    Unity 之 ShaderGraph 实现旋涡[传送门]效果入门级教程 一,最终效果展示 二,创建PBRGraph 三,实现原理介绍 四,完整效果实现 五,应用到场景中 若你的工程还没有进行基础配置 ...

最新文章

  1. java 输入流可以合并吗_HOW2J Java 文件输入输出流,合并与拆分
  2. 跨域的原因以及解决方案
  3. 第十四周项目一-排序函数模版
  4. 子网划分,9张表格搞定
  5. ThreadLocal两个简单示例
  6. c++ overide
  7. jq中查找上级_【节能学院】电能管理系统在福州三岐小学项目中的设计及应用...
  8. html调用父页面的函数,javascript – 如何从子窗口jquery调用父窗口函数?
  9. mac home目录创建文件夹,修改权限
  10. 【ElasticSearch】Es 源码之 LifecycleComponent 源码解读
  11. 后面冒号_Python 数组中的冒号使用
  12. Digilent提供的Pmod AD1驱动程序
  13. hibernate、ibatis、freyja的价值
  14. 阿里云EMAS移动测试|快速掌握移动端兼容性测试技巧
  15. 成长了,记录一下,增值税发票识别写入excel文件里
  16. 里氏代换原则 (Liskov Substitution Principle, LSP)
  17. ArcGIS版本高级应用 数据归档(历史归档 存档数据)
  18. 升级你的 Flutter 版本
  19. ThingsBoard中的关系Relation
  20. 宝宝生活点滴(2009.12)

热门文章

  1. openwrt 南京电信 PPPOE IPv6 dhcpv6 client设置方法
  2. PHPWord通过docx模板替换标签,最终生成pdf文件
  3. mysql怎么跨库查询_在MySQL中怎样进行跨库查询?
  4. 有效符号 isValid python
  5. 逻辑学中的思维规律:同一律,不矛盾律,排中律,充足理由律
  6. linux convert命令把gif转jpg
  7. 【期刊会议】机器学习深度学习 + 计算机视觉(To be continued..)
  8. Ps学习(快速选择工具和魔棒的使用)
  9. 问卷调查设计以及敏感性问题调查
  10. 前端|如何制作调查问卷