作者:mggwvga_84049035 | 来源:互联网 | 2023-10-09 21:04
1.勾边效果一定要postprocess来实现的话,那么只能把你需要勾边的半透明物体在forwardpass最后再画一遍,输出法线到gbuffer,输出深度到depthbuffe
1. 勾边效果一定要post process来实现的话,那么只能把你需要勾边的半透明物体在 forward pass 最后再画一遍,输出法线到 gbuffer,输出深度到 depth bufferue4水设置。UE4改动这个可能比较困难。另外由于修改了深度,也会影响到同为 post process 的 depth of field 的表现。
2. 或者采用 inversed hull 的方法,把半透明物体渲染两遍ue4水设置。不过这么做也比较麻烦,半透的部分无法通过 alpha blend 来实现,需要用类似于折射的方法来作:
(1)第一遍用 cull frontue4水设置,写深度,开 depth test,关闭 alpha blend,物体渲染为你要勾边的颜色,体积放大一点;
(2)第二遍用 cull back,写深度,开 depth test,关闭 alpha blend,物体正常渲染,需要体现半透的部分通过采样 scene texture 来手动实现ue4水设置。