【小黑特效技巧番外篇】Unity利用分层渲染和Bloom做描边(细节补充)
HI,大家好久不见我又来。最近看到有人提出之前的那个换装效果(截图)。这个是之前出的一个教程,其它问题没什么,好像那个描边的效果问题很多。有兴趣的话,可以看看。提要:
首先这个技巧不适合做项目,只是我自己研究出来,做做其它效果的。还有就是这个方法比较麻烦,一般情况下可以试试shader+辉光。最后也是为了解答看过教程的同学疑问。
效果需求:
需要Bloom辉光,需要2个摄像机(做分层渲染)。
重点提问:
为什么需要Bloom?
加辉光是为了光晕溢出的泛光,这个泛光不会因分层渲染而被遮挡。
为什么需要2个摄像机?
2个摄像机是为了阻挡光晕贴图,而贴图的泛光是阻挡不了。一个摄像机渲染场景阻挡贴图光晕,另一个摄像机是为了渲染。(一个渲染场景模型,一个渲染是渲染特效)。
下面的截图可以让你更加直观。
图1:摄像机数量1个,没开Bloom。摄像机01(不渲染场景)
图2:摄像机数量1,打开Bloom。摄像机01(不渲染场景)
图3:摄像机数量2,打开Bloom,摄像机01(渲染角色模型和特效),摄像机02渲染场景(层级高于01)
图4:图3的基础上关掉Bloom,没有泛光后,被阻挡的光晕贴图没有光感溢出,所以看不到描边。
下面是教程正文:
第一步摄像机:首先我们新建2个摄像机01和02。01参数截图:01,我们要一个Bloom,Layer默认,摄像机Depth(摄像机渲染深度,类似层级顺序),设置负数(比摄像机02数值小)。在Layer上新建一层然后选择不渲染该层级,在Culling mask上去掉勾,这边我需要用到摄像机02去渲染该层级。
新建摄像机02:02。我们在Clear Flags上选择Don't Clear。Culling mask这边单独渲染新建层级,摄像机Depth高于数值高于摄像机01。
Don't clear的理解:模型深度会正常计算出来,而粒子shader没有深度这给概念,所以会被前面的场景层挡住,然后角色又是正常显示,所以粒子可以在模型里面看到。再简单一点,就是2个模型重叠部分会显示粒子,模型shader有深度可以计算出来,粒子shader没有深度不能被计算。
第二步场景:需要大范围框架,做一个类似挡板的效果,主要是挡住渲染出来的特效。这个也是不可缺少的一部分。层级改为新建的层级。
第三步角色模型(或其他模型):层级默认就可以了,跟摄像机01一个层级。
第四步特效:跟角色一个层级。
1特效只显示在角色身上层级默认。
2特效显示在周身层级改新建层级,让摄像机02渲染。如果描边效果不好,需要手动去挪动位置。
下面是几个效果。
方法都是一样的,蓝色是从上到下的一个长条光晕的移动(从上到下,把光晕换一个长条贴图就可以,金色是光晕粒子变大变小。
效果对应帖子:【小黑0104特效】机甲的各种描边与扫描效果
【小黑特效教程】公开课_美少女变身
完。
感谢无私分享 感谢无私分享!
感谢分享 谢谢楼主分享 学习了啊 感谢大佬分享 感谢楼主分享 感谢大佬分享 谢谢小黑老师,差不多弄出来了,好像是因为bloom里有个值没弄好,还有人物的层级跟glow没调整到位,万分感谢
页:
[1]
2