实现效果
控制PBR Master的AlphaClipThreshold参数和Emission参数实现边界发光和“裁剪”,裁剪的边沿用噪声图控制避免边沿过于平滑。
Shader Graph
用到的函数节点加起来只有十个左右,十分简易。
主要是用SmoothStep做一个高光的边界,与噪声图做混合后应用到Emission上,再用Step来控制AlphaClipThreshold,得到类似溶解的效果。
局限
溶解的细节程度与模型的顶点数正相关,我用的low poly风格模型,所以可以看到溶解的细节并没有Shader Graph预览的时候那么丰富。
还有对于low poly的模型,导入的时候要生成LightmapUVs,并且在Shader Graph中,噪声取样的时候用UV1。若用模型本身的UV0,可以看到噪声完全不起效。
在烘焙的时候也是如此,导入模型的时候要生成LightmapUVs,否则打到模型上的光烘焙出来是错的。