【程序化天空盒】过程记录03:镜头光晕 旋转的动态星空

本来说不再记录了,发现实现镜头光晕和星空的时候是有很多需要注意的点的,有必要记录一下。

镜头光晕

URP系列教程-手把手教你在URP中实现镜头光晕效果 | Unity 中文课堂 (u3d.cn)

但是URP下没办法固定管线的按图层遮挡的功能。这里我不知道怎么解决,,,索性项目里只放了那几个离镜头很远的圈圈,其他的我都关掉了,开了的话会很奇怪,会挡住我的云:

【程序化天空盒】过程记录03:镜头光晕 旋转的动态星空_第1张图片

星空

涉及到动态的东西,我发现ShaderGraph非常直观!!

尝试了一下ShaderGraph,真的更能帮助理解lerp、smoothstep、step、各种采样的效果,特别是各种noise扰动。星空部分我想做一个漩涡样子,主要是要用下图中的这个Twirl节点去扰动我们的采样坐标,连一连大概是下面这样: (这个方法参考自【Unity教程】2D星空星星闪烁特效制作【中文解说】)

【程序化天空盒】过程记录03:镜头光晕 旋转的动态星空_第2张图片

但是我们的天空盒是shader形式的,所以就需要在shader里加上Twirl这个节点的代码,代码来自Twirl 节点 | Shader Graph | 10.5.0:

【程序化天空盒】过程记录03:镜头光晕 旋转的动态星空_第3张图片

然后在天空盒shader中:

【程序化天空盒】过程记录03:镜头光晕 旋转的动态星空_第4张图片

去采样我拿到的一张Voronoi图的b通道就行,当然要是像上面Twirl节点那样代码搞出来也是可以的。关于动态星空的部分这里就做完了:

【程序化天空盒】过程记录03:镜头光晕 旋转的动态星空_第5张图片

写都写了,挂个总结整个天空盒的视频链接吧:【技术美术练习作品】Unity 动态程序化天空盒

你可能感兴趣的:(作品集学习记录,unity,游戏引擎)