Hello,大家周末好,由于小六动画刚刚成立一周年,最近一直在忙公司发展的事(为自己的懒惰找借口=-=)。小六课堂很长时间迟迟没有更新在这里给大家说声抱歉。从今天起给自己制定一个小小的目标,一周至少更新三篇技术贴,也请各位监督。
OK,废话不多说咱们进入正题。今天为大家分享的技术点也是一个我从业这么长时间遇到的纹理问题,最近看了一个老外的分享解决了,在这里就分享给大家。大家在渲染贴图的时候一定遇到过这样的问题,如果渲染一个球体,它的上下两个极点会出现纹理收缩在一起的情况,如图:
我们知道,这是由于模型表面的UV排布导致的,如图:
那么很多渲染的老法师一定会说,可以调整一下投射方式或者把球体的类型改成二十面体,好我们看一下:
貌似很完美,如果我们拉进看呢:
你会发现一个非常硬的接缝,那么我们今天的主题就是解决这个接缝!
在这里我给大家推荐一个非常牛逼但是又不经常用的节点,triplanar(在mapping映射分组里)
对就是这个,这个节点的原理就简单,就是把不一样的贴图从上下左右前后六个方向把贴图投射到模型表面,见图:
如果你只想贴一种纹理在模型表面可以这样做:
1.在triplaner节点上链接一个纹理贴图,在一个X+节点上链接即可
2.在triplaner节点的属性栏里面,勾选single texture,此时,一个贴图就会被复制到六个面
3.非常重要,在贴图上连一个投射节点,投射模式改为triplanar,否则没有效果
4.在triplaner节点的属性栏里面,调整blend angel参数,这次可以理解为接缝处的羽化值
5.如果想调整贴图的缩放,可以在在triplaner节点的属性栏里面,点击blend cube transform,增加一个变换节点,调整纹理的缩放。coordinate space 设置为object对象模式,否则纹理是无法固定在模型表面的。
如果大家懒得调整UV对UV,我觉得这种贴材质的方式确实是一种简单粗暴的方式。
okey,今天的分享就到这里,希望大家有所收获。我们团队的口号是每天进步一点点,希望业界志同道合的朋友也一同加入到小六动画的大家庭。我们下期再见!