强烈建议官方出个卡通渲染模式,
我最近在找卡通渲染的相关资料,
我现在所知道的ue4上面大体可以分三种类型的卡通模式,
1,用post process,这个的资料算是比较多,官方也有出过教程,有很多人都是用的这种,但是效果只能说是还能接受,而且我还遇到粒子系统在这模式下显示不全,水面材质不显示,雾也不显示,反正就是各种问题。
2,直接做卡通材质,原理上就是用法线和主灯光的夹角来判断是否是阴影,缺点是其他物体投射的阴影不会显示,而且还要找另外的方法处理描边。
3,直接改引擎的源码,加个卡通模式,这个看上去效果好很多,而且这个卡通模式只是材质的一种不会导致其他物体的显示问题,但依然没有描边,资料很少,我只找到两个链接,https://blog.felixkate.net/2016/05/22/adding-a-custom-shading-model-1/,这个他说的代码位置都是用行数说的,因为版本比较久远了,引擎的代码数量早变了,所以我压根找不到要在哪插入代码。
另外一个是一位大神看了上面这个的教程后修改了在发出来的https://zhuanlan.zhihu.com/p/63133742,虽然能照着做了,但我做出来还是感觉有点诡异。
这个的需求应该还是很高的,最具代表性的应该就是罪恶装备了,我在找资料的过程中也看到很多人在找这方面的,
所以强烈建议官方出卡通模式,最好还能解决下描边的问题。
另外,关于描边这个,
用post process处理不好会影响其他物体,很麻烦。
除了post process,还有一种比较经典的方式做描边的是复制一份模型,膨胀,只渲染背面,这个也是unity的描边的做法,而这个方法ue4做不了,好像说是ue4不支持多pass,shader我也只是一知半解,所以具体该怎么处理我也不懂。
然后,其实后面说的那种方法其实用人这样实现了,直接复制一个模型,然后和原本的模型重合,然后用一个膨胀,渲染背面的材质,简单粗暴,但是原理上其实就是这么一回事,静态模型这个做没问题,但是骨骼模型不知道怎么搞好,毕竟会动,如果直接放两个模型的话,动画的同步也是个问题。或者可以直接复制顶点?感觉性能消耗会很严重啊。
如果有人知道怎么做这种描边麻烦告知下。