unity物体边缘发光shader_Unity的shader学习:实现物体边缘高亮

本文介绍了如何在Unity中使用Shader实现物体边缘高亮效果,详细解析了Rim Lighting原理,并提供了代码示例。通过理解viewDir与法线的点积以及pow函数的应用,实现了从中心到边缘的颜色过渡,从而达到边缘发光的视觉效果。
摘要由CSDN通过智能技术生成

游戏里常出现的一种需求,就是鼠标触碰到角色或物体时高亮。正在学习unity的shader,看官方的shader示例,其中有一个就是Rim Lighting,但是官方示例那个模型并没有把这个效果凸显出来,然后查了下Rim Lighting,看到了这个例子,才明白是物体边缘高亮的效果,联想到玩的游戏,瞬间明白了。

这也算是个挺有用的效果,所以细心研究了下,而且发现官方示例和上面这个博客都没有提到为什么这么写就可以实现边缘高亮的效果,故记录+分享下。

前提

shader一开始的概念是从猫都能学会的Unity3D Shader入门指南(一)学习的,写的挺好,对shader有了基本的认识。而且没想到学unity竟然再次看到了王巍的博客。

shader的使用

通过新建一个材质(Metarial),把它的shader里修改为自己新建的shader就可以了。然后把这个材质使用到需要效果的物体上去,在render组件里把材质替换就好了。

边缘高亮效果

先来个效果图

23fb2f6fcfa0?from=singlemessage

WDWD~~~M`020R$4ORS2OHW1.png

再上代码:

Shader "Custom/RimLighting" {

Properties {

_MainColor ("MainColor", Color) = (1.0, 1.0, 1.0, 1.0)

_M

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值