Shader Graph: 能量护盾

实现思路

本篇文章参考学习了b站up主的视频:小沈的奇妙冒险

通过shader graph 实现能量护盾效果,其实现思路为:通过shader graph 中的 patter 在护盾mesh 上均匀铺上圆点,然后通过 simple noise 为圆点图案添加渐变效果,然后通过 gradient noise 为护盾添加流动光效果,以及通过 uv 的极坐标实现中间透明、四周不透明的效果,最后通过一张加工过的 uv 贴图实现护盾边缘发光效果。

效果预览

Shader Graph 详细实现

平铺圆点

首先要引入一个 Unity URP 内置文件夹:Window -> Package Manager

在 Assets -> Samples -> Shader Graph -> (版本号) -> Dots 中是一个产生圆点的 Shader Graph 子图,将其拖入或直接空格键输入Dots 获取。

然后与 Simple Noise 制作出带有圆点与渐变的效果:

流动效果

随后将 Flow 与 Dot Patter 输出结果相加。

Inner Mask

极坐标获取内部图案的遮罩,使中间到四周逐渐显现。

Border Mask

这是根据 Shield Mesh 的 uv 对最边缘的地方描边,获取一个在边缘 uv 处是 1 的遮罩。

整合

最后在场景中右键 -> Volume -> Global Volume 然后勾选:Bloom 中的 Threshold、Intensity、Scatter、Tint

然后设置选项的数值获取合适的 Bloom。

相关推荐
♡すぎ♡2 天前
镜面 IBL 预过滤贴图的计算
算法·计算机图形学·贴图·pbr
♡すぎ♡4 天前
二维 uv 与单位球面坐标的相互转化公式
计算机图形学·uv
♡すぎ♡11 天前
ShaderLab:PBR+IBL(ShaderToy Translation)
算法·计算机图形学·着色器·pbr·ibl
♡すぎ♡13 天前
现代实时渲染管线
计算机图形学·opengl·着色器·渲染管线
♡すぎ♡1 个月前
ShaderLab:可互动水面(基于RenderTexture,实时生成动态扰动)
计算机图形学·贴图·opengl·着色器
♡すぎ♡1 个月前
ShaderLab:海面——顶点变换,程序化生成无需贴图
计算机图形学·opengl·着色器
♡すぎ♡2 个月前
ShaderLab:线条几何体旋转
unity·计算机图形学·着色器·shaderlab
做cv的小昊2 个月前
结合代码读3DGS论文(12)——NeurIPS 2024 Spotlight 3DGS经典Backbone工作3DGS-MCMC论文及代码解读
论文阅读·计算机视觉·3d·图形渲染·游戏开发·计算机图形学·3dgs