Shader 实现鬼魂效果

  • 前言

前言

我们在游戏中经常会角色碰到角色的情况,大多数游戏中角色和角色重叠的时候会显示一个虚幻的鬼影而不是完全遮挡,那么这个鬼影效果怎么实现呢?接下来我们就实现这样的一个效果。
我在这里使用的是Unity2019的轻量级渲染管线(LWBP),我在Unity2019轻量级渲染管线的配置文件(LightweightRenderPipelineAsset)创建了一个前向渲染器指定给特定角色的渲染方式。如图所示

然后给我们需要这种shader效果的角色设置layer,然后这部分layer取消使用默认的渲染方式(也就是取消勾选)。

然后指定属于角色那一部分的ayer的物体使用characterbehind这一部分的shader。

总而言之,当我们为角色设置了独立渲染器,角色就用该渲染器对应的材质进行着色渲染了。

具体实现步骤

1.首先加一个颜色节点
2.然后创建一个Dither抖动节点
3.然后调参就初步实现了一个剪影效果
4.然后我们加上一个菲涅尔效果(边缘发光)这样能够展现一个立体感
5.然后使用一个颜色乘法,最后输出到颜色通道就可以实现效果了。

完成这样字的一个shader效果后有一个新的问题,我们怎么设置这些角色在遮挡的时候显示相应的shader效果呢?
具体步骤如下:
1.首先设置我们的这个材质渲染时受什么因素影响的。

这里的原理是是会进行深度测试,然后进行遮挡剔除。

Unity Shader 实现鬼魂效果相关推荐

  1. Unity Shader 窗前雨滴效果衍生(表面水滴附着)

    Unity Shader 窗前雨滴效果衍生(表面水滴附着) 霓虹中国视频截图 现实中的水珠附着效果 实现思路 1.首先创建一个Cube来作为实现效果的物体 2.创建一个Shader开始着色器的编写 实 ...

  2. Unity Shader·屏幕破碎效果

    Unity Shader·屏幕破碎效果 前言 最近在做一个新的MMD(用Unity来实现),其中用到了一些好看的渲染技术在这里分享一下. 视频链接 https://www.bilibili.com/v ...

  3. Unity Shader 之 透明效果

    本文引用 Unity Shader入门精要 开启透明混合后,一个物体被渲染到屏幕上时,每个片元除了颜色值和深度值外,还有--透明度.透明度为1,则完全不透明,透明度为0,则完全不会显示. 在Unity ...

  4. Unity Shader - 翻书效果

    今天实现一个简单的翻书的效果,话不多说,先上一张效果图: 这里就随便用的一张纹理了,我们还是称为"翻木板"吧,哈哈. 实现过程: 其实这个效果实现起来还是挺简单的,大概思路其实就是 ...

  5. unity shader 抖音效果

    最近开始学习了unity shader,所以想要做一些简单的效果,来巩固一下知识.我第一个想做的就是做一些类似于抖音的效果.(PS:最近学习了markdown,所以就用markdown开始写博客了 ) ...

  6. Unity Shader 屏幕后效果——高斯模糊

    高斯模糊是图像模糊处理中非常经典和常见的一种算法,也是Bloom屏幕效果的基础. 实现高斯模糊同样用到了卷积的概念,关于卷积的概念和原理详见我的另一篇博客: https://www.cnblogs.c ...

  7. Unity Shader 屏幕后效果——Bloom外发光

    Bloom的原理很简单,主要是提取渲染图像中的亮部区域,并对亮部区域进行模糊处理,再与原始图像混合而成. 一般对亮部进行模糊处理的部分采用高斯模糊,关于高斯模糊,详见之前的另一篇博客: https:/ ...

  8. Unity Shader 实现磨皮效果

    最近在做一些UI使用的shader,大部分是对UV进行一些操作,今天看需求文档时发现美术同学的要求里有一项是类似磨皮的效果,本来我也比较好奇这些美颜效果都是怎么做的,所以就趁此机会实验一下.查了一大堆 ...

  9. Unity Shader 2D水流效果

    水流的模拟主要运用了顶点变换和纹理动画的结合: 顶点变换中,利用正弦函数模拟河流的大致形态,例如波长,振幅等. 纹理动画中,将纹理坐标朝某一方向持续滚动以形成流动的效果. 脚本如下: 1 Shader ...

最新文章

  1. 不敢相信,原来大厂是这样找到精准人才的!
  2. 第十九章 19 利用私有继承来实现代码重用
  3. Packt.Java.9.High.Performance.2017.11
  4. Docker Overlay 介绍
  5. 情人节特效.羞答答的玫瑰静悄悄的开效果....
  6. SAP CRM product settype read from database table
  7. php常用linux命令httpd,Linux常用的100个命令
  8. 10个常见的缓存使用误区
  9. 2019-2020年中国小吃产业发展报告
  10. 解决 git pull/push 每次都要输入用户名密码的问题
  11. 第一篇:容易遗忘的“枚举”
  12. 6月14日Linux设备驱动开发免费讲座PPT
  13. server使用abp中调用存储过程 sql_ABP中连接已有数据库执行Sql或存储过程
  14. 原生js发送ajax请求
  15. INSPINIA ADMIN 开发框架
  16. 前端和后端开发人员比例_前端和后端开发人员应该结交朋友
  17. map取固定key_Map获取key值
  18. 电瓶车罚款不交后果如何
  19. chmod -R xxx 3位数字权限对照表
  20. time秒和年月日时分秒的转化

热门文章

  1. java感谢地说说_感谢一个人陪伴的说说
  2. Win10电脑没有声音 启动window audio错误代码0x80070005 音频服务未响应 怎么办
  3. 大马华裔女子遭“警员”电信诈骗 汇款后发现上当
  4. 如何用纯 CSS 创作一个金属光泽 3D 按钮特效
  5. 宝宝一上托班就生病,是托育中心的问题吗?
  6. 100 道 Linux 常见面试题
  7. Netcat安装与使用(nc)
  8. After Effects Guru: Integrating Type into Video Volume 2 After Effects 大师教程之如何集成文字到视频中(卷2) Lynda课程中
  9. 软件配置:下载比特彗星1.66解锁版
  10. python 斐波那契数列 yield_Python之yield详解