找回密码
 立即注册

Unity Shader 能量罩效果

| 2022-2-27 22:24 阅读 239 评论 3

此次用能量罩继续Shader结果的练习。

分析能量罩的结构:

  1. 能量罩球体边沿高光
  2. 和物体订交的边沿高光
  3. 能量罩的纹理

能量罩球体边沿高光

能量罩自己实在应当是个半通明光球,但为了可以展现内部的脚色大概物体,正对摄像机的部分要变全通明让内部被清楚的看到,间接用RIM边沿光衬着便可以。由因而通明的,所以要两面都衬着,将视向量和法线的点积成果取绝对值来保证后背的正确衬着。

Tags{ "RenderType"="Transparent" "Queue" = "Transparent" "IgnoreProjector" = "True"}
Blend One One
ZWrite Off
Cull Off

fixed4 frag(...) : SV_Target
{
...
half rim = pow(1 - abs(dot(normalDir,viewDir)) , _RimNum);
...
}

和物体订交的边沿高光

在游戏中看到的能量罩可以发现,在和空中、物体订交的部分也是会高亮显现的,也算是能量罩的边沿。所以需要正确获得订交的信息,可以经过当前片元能量罩的深度和场景中的深度做对照,假如两个深度是相称,那末就说明能量罩和物体是订交的。

主相机的深度图可以获得场景中的深度信息。可是能量罩由因而通明衬着,没有影子的部分,所以也就没有ShadowCaster的Pass,也就不会出现在主相机的深度图中。可是经过Clip空间获得到能量罩当前片元的深度值,利用ComputeScreenPos函数可以将Clip空间的坐标转换为屏幕坐标,函数内对xy份量做了转换处置,zw份量间接利用了原值。Clip空间的z份量是从-Near到Far的,而深度图中的LinearEyeDepth后的范围是Near到Far,所以经过COMPUTE_EYEDEPTH函数将深度转化到Near到Far。




Unity ComputeScreenPos函数源码

那末我已经经过相机深度图获得到了场景深度信息,Clip空间z份量获得到了能量球的深度信息,接着经过比力计较获得订交的信息。

float diff = pow(1-saturate((sceneZ - partZ)), _EdgePow);

像RIM一样,经过_EdgePow来控制定交高亮的范围。




能量罩一个一个Cube订交

能量罩的纹理

间接给一个纹理贴图便可以展现出想要的纹理结果,假如加上一个时候偏移便可以做出动画的结果。

fixed4 frag(...) : SV_Target
{
fixed4 col = fixed4(0,0,0,0);
...
fixed main = tex2D(_MainTex, i.uv + _Time.y * 0.02).r;
fixed4 mainColor = _TintColor * pow(1 - main, 3);
...
col = lerp(col, _TintColor, diff);
col = lerp(col, mainColor, rim);
}

我的主纹理是一张噪波图,所以只取了一个通道并做了处置。





根基的结果都完成了,可是看着有点昏暗,能量罩显得有点能量不敷,所以做个简单的处置。

col = lerp(col, mainColor, rim) * 4;

这样看起来就好多了,可是还是感受少了点什么,作为一个带能量的发光球体有点Bloom的结果会更好一点。



能量罩的展开

能量罩开启实在就是一个定向消融结果,还是利用了我之前的消融结果文章里的方式。

然后便可以从各个偏历来实现能量罩的开启和封闭:


下一步会尝试加上能量罩被击中后的能量波纹结果,做完以后再做文章的更新。

参考:

  • 游客 2022-2-27 22:25
    想问下定点消融的时候交界处边缘怎么处理才能那么亮
  • 游客 2022-2-27 22:24
    有源码吗?
  • 游客 2022-2-27 22:24
文章点评
2022-02-27 21:49
学习成长 身边的微分方程(7):一文读懂薛定谔方程
本文为“身边的微分方程”系列第7篇。难度提示:★★★★★若想了解本系列及本专栏其 <详情>
2022-02-27 22:24
学习成长 波尔氢原子模型基础知识
波尔氢原子模型基础知识上一期,跟小伙伴们讲解了光电效应,没想到效果很理想,小伙伴 <详情>
2022-02-27 22:26
学习成长 人体七大脉轮对应频率及其能量
|减 压 实 验 室 公 众 号|分享提升幸福感的一切人体7大脉轮对应频率:1、海底轮:3 <详情>
2022-02-28 10:37
学习成长 群星中能量币与现实资源对应关系的计算
一、通过戴森球估计一个能量币到底对应多少能量最近几天一直在玩群星,玩着玩着突然想 <详情>
2022-02-28 11:01
学习成长 暗能量到底是什么能量?
上期在暗物质到底是什么?里,我们知道了宇宙最大一股势力——暗势力之一「暗物质」, <详情>
2022-02-28 11:03
学习成长 大物学习笔记(七)——波的能量
目录:(若无说明,这里研究的都是平面简谐纵波在直棒中传播,也就是大物考试内容。其 <详情>
2022-02-28 11:13
学习成长 干货!人生就是追求更高能量等级 (测你的能量是多少)
{本篇文章较长 如静心看完将会对你获益深远!!}人生就是追求更高能量等级意识的能量 <详情>
2022-03-02 08:30
学习成长 一个伟大的秘密:原来命运由自己的能量决定
一个伟大的秘密:原来人生的成败都由自己的生命能量决定生命能量级别决定命运!决定人 <详情>
2022-03-02 08:31
学习成长 你知道自己的能量层级吗?
人真的分三六九等吗?美国著名心理学家大卫·霍金斯花了30多年的时间,研究证实了人们 <详情>
2022-03-02 08:31
学习成长 能量信号和功率信号的分别
首先要明确一点,这两种信号概念是建立在无穷大的时间积分的基础上的。一.能量与功率 <详情>
2022-03-02 08:37
学习成长 能量棒,乱吃要出事的
本文由[企鹅吃喝指南]与运动App 联合策划特别感谢Keep专业营养师提供意见从早期的 <详情>
2022-03-02 09:14
学习成长 到底谁在滋养你的能量,谁又在消耗你的能量?
在你身边可能会有两种人:一种让你觉得很舒服、很滋养,另一种让你觉得消耗、很疲惫。 <详情>
2022-03-30 15:49
学习成长 暗物质和暗能量如果被证实不存在呢?那引力理论就是错的?
苹果为什么会落地,这个看似极其简单的问题,其实涉及哲学的实在论。如果一个小朋友问 <详情>
2022-04-02 10:54
学习成长 调气,是中医治病的关键所在,气有哪些作用?气又是如何运动的?
昨天,我们已经知道,气是无形的能量。今天,我们要继续探讨3个问题:气有哪些作用? <详情>
2022-04-02 15:49
学习成长 万物心生,2022新年冥想能量文(珍藏版)
减法道:人生不是一场物质的盛宴,而是一场精神的修炼一切结束,皆为序章。停止内耗, <详情>
2022-04-02 17:34
学习成长 充满正能量的励志文案图片,早上好,去拼搏
别人可以替你开车,但不能替你走路;可以替你做事,但不能替你感受。人生的路要靠自己 <详情>
2022-04-07 07:53
学习成长 每个人的内心都蕴藏着巨大的潜能,越是内求,能量就越大
向内觉察回归本源王阳明说:“人生价值只能在心里求,才能找回那个强大的自己。到心外 <详情>
2022-04-17 20:59
学习成长 截至2022年,物理学难以突破,天空中的乌云还有62种,纯理论28种
1900年,英国物理学家威廉?汤姆生发表了题为“在热和光动力理论上空的19世纪乌云”的 <详情>
2022-04-18 13:32
学习成长 内心强大心法:如何拥有无限的能量,请在内心根植三种积极的习惯
文/唐若唐若心学原创作品,违者必究在生活中,如何拥有无限强大的能量,或许你需要明 <详情>
2022-03-01 20:42
学习成长 正能量早晨图片语录抖音微信文案,脚步向前,境界向上
不管前方的路有多苦,只要走的方向正确,不管多么崎岖不平,都比站在原地更接近幸福。 <详情>

热门文章