Blender导出模型规范检查

为什么要规范化导出模型?
因为我们将有问题的模型从blender导出后导入到一些游戏引擎比如Unity、虚幻或者是3D查看器又或者是材质贴图软件Substance Painter等等3D软件就会出现种种出乎意料的问题,比如:导入Substance Painter里出现某些模型的面丢失,然后翻转视角却能够显示;引擎在最后编译的时候控制台上提示因为某些模型有问题而导致无法运行等等:或者是在引擎集中导入多个模型时,在实现一些基本的旋转时,旋转的中心不正确等等的令人疑惑的情况。这些其实都是我们所导出的模型不规范导致的,所以我们要尽最大努力去解决这些问题。

下面是一个我从各路搜集+个人经验总结的检查流程,如有不足之处希望大家多多指正。

1.多边面检查

多边面检查其实是在展UV阶段就应该实施,多边面会出现的UV问题:UV面相互折叠,扭曲。
规则:任意一个面的边数不能>4 (三角面或者四边面之外的面都不能出现)
解决办法:选择模型——进入编辑模式——选择面层级——取消选择(键盘按两下A)——左上角“选择”——“按特征选”——“按边数选面"(Faces by Sides)——左下角弹出框内,顶点数:4——类型:大于。 然后你就可以补面了。
这样能迅速找出模型内所有的超过4边的面在这里插入图片描述扫斜线的补边方法得到的面数最少,效果最好

2.重合点、重面与游离点检查

游离点在导入雕刻模型制作拓扑的时候就比较常见,注意观察即可。而假如你在Blender2.9版本内没有设置自动合并功能或者自动合并的精度太高(值太小)就会产生一些没有焊接的重合点。
解决办法:选择模型——进入编辑模式——选择点层级——全选(A)——右键——合并顶点——按距离(by distance)。 右下角会显示总共有多少个重合点被合并。
对于重合面,只要法向没有问题,但是导出到别的软件却消失或者是上的贴图出现了出乎意料的问题,那么一般就是两个相同的面或者是模型重合在一起了,需要删掉一个。

3.法线朝向检查

做好的模型在导入Unity或者Substance Painter等等3D软件内有面的缺失,这个就是面法线反向所导致的。
在这里插入图片描述只要面法向呈蓝色,那么法线就是朝外的,正常。红色是朝内的,不正常,翻转法线就可以了。
或者使用法向按钮显示朝向

4.锐边,UV缝合边检查

有些都会漏掉有些锐边会被漏掉,及时补上。还有缝合边的一些面在UV编辑器的问题记得观察。

5.摆位和大小以及名称要标准

特别是导入到游戏引擎里的时候,可别小瞧摆位,因为摆得不正确,因为我们要在Unity的transform那一栏角度要旋转,到时候控制移动的时候会出现问题。所以你需要把正前向标准朝前。在Blender里面键盘按下“~”然后选择前视图,正前方朝前,面向你的观众。
其次是大小的调整,Unity里面是按照米来做单位的,所以最好每一个要导出的FBX导出前调整好体积大小,尽量为1米吧。
多美的小飞机啊将物体的重心底部放置到世界原点保持好的摆位习惯。
尺子测量差不多有5米尽量把长宽高都调整到1米内。
按下键盘N,可以显示出物体的基本单位参数

各个物件的名称也要规范化要保持好名称规范的好习惯,材质的名称等等。调整好这些,模型导入到Unity时才不麻烦技术人员为你掉头发。

6.各个物件的原点要标清楚(全部变换)

这个更加重要,一定要明白做完模型以后导出前所以的物件Ctrl+A——全部变换(全部变换的功能就是让XYZ位置以及各个方向的旋转角度归零。),这个很重要,例如在Blender里放大的时候发现物体不均匀的放大,或者是倒角出现奇奇怪怪的非正常现象,那么这肯定就是没有全部变换导致的,但在全部变换之前要好好考虑一下,先把模型调整好再进行全部变换。因为变换以后他的原点是会回到世界原点的。你的模型旋转会受到影响。举个例:
螺旋桨不绕着Y轴旋转了??这就是原点位置不对的原因造成的,特别是这个螺旋桨,导出的时候最好单独导出,因为我们要在引擎里给他加旋转脚本,而且导出螺旋桨时要好好调整它真正的原点位置,因为这个原点位置就是Unity中的物体中心。所以各个部件的原点一定要好好调整,如果不确定哪一个部件到时候要写旋转的脚本,那么尽量分开导出。

一定要记得在导出之前做一次全部变换哦!有没有发现,我在上图中先把螺旋桨和扰流板这些个到时候会移动的部件按“H”键隐藏起来,不让它的原点改变,其他不变的物体就一起放在一个原点。但是其实不是所有的物体都要调整原点到世界中心的,这个按需分配。其实如果到时候要制作触发飞机爆炸等等的旋转脚本,那么在爆炸时有些物件的旋转飞出,它所旋绕的中心就是自己的重心,所以请深思熟虑再做选择。也可以“全部变换”后把物体原点回到几何中心:选择模型——右键——“设置原点”——“原点—>几何中心”。(这个方法我比较推荐)。

7.导出设置

如果没有动画就不要勾选烘焙动画哦
先点击你需要导出的模型,然后按照上面的模板来进行导出,记得没有动画的话就取消勾选烘焙动画。

最后,不要小看这些导出的细节,这些小小的习惯如果做得不到位,那么我们在导入Unity时就会出现很多很多奇奇怪怪的错误,错误会被不断地放大。希望大家在导出前可以看一下我写的上文,我也会不停地更新和完善这篇Blender to Unity的模板文章,让大家在模型对接时尽量少甚至不让它出现令人头疼的错误,这对美术与技术对接很重要。 如有不足之处,希望大家多多指正!