之前没有搞清楚Cocos Creator 3.0的PBR资产工作流,导入的材质始终调不对,今天花一天时间彻底研究了一下。
最后看到builtin-standard.effect中这段shader代码,顿时懂了,原来是要把ao, metallic, roughness三张帖图合并到一张帖图的RGB三个通道里,合成一张PBR帖图。
Cocos Creator 3.0这样做可能有自己的理由,但对美术不是非常友好,毕竟还有一个合成步骤,不是很好分别调试AO,Metallic和Roughness。
于是我自己写了一个程序将三张帖图合并为一个帖图,也算是可以凑合这个工作流,但实测效果不是很好,具体不确定是什么原因,可能是单通道的精度问题,材质的过渡非常突然,没有渐变效果。
与是只有上最后一招,直接改effect文件,复制粘贴builtin-standard.effect文件为builtin-standard-pbr.effect,主要修改如下:
- 去掉PBR帖图
- 分离MetallicRoughness双通道帖图为Metallic,Roughness两张帖图
最终得到的效果
与Blender中效果对比基本很接近了
颜色上的差别是因为Blender有一个hdr环境帖图
这里分享给大家,如果遇到相同的坑,或许这是一个解决办法!