Unity在2018.1版本正式推出了ProBuilder快速建模套件。ProBuilder的前生是Unity资源商店中的一款热门插件帮助开发者实现在Unity引擎中直接进行建模以快速生成关卡用于游戏玩法测试。本文由Unity平台部技术总监杨栋为大家讲解如何使用ProBuilder快速关卡建模。

ProBuilder套件介绍
ProBuilder套件包括以下三个部分:
ProBuilder:用于直接在Unity的Scene窗口中进行建模。 ProGrid: 用于在建模的过程中进行精确的网格吸附操作,确保所建模型拥有正确的尺寸大小。 PolyBrush (Beta): 可被用于对模型网格进行雕刻操作,工作原理类似于ZBrush和Mudbox,甚至连很多快捷键都是相同的。


获取资源
你可以访问Unity资源商店进行下载。
ProBuilder:https://assetstore.unity.com/pac ... g/probuilder-111418ProGrid:https://assetstore.unity.com/packages/3d/progrids-111425PolyBrush (Beta):https://assetstore.unity.com/packages/3d/polybrush-beta-111427


ProBuilder与ProGrid也可以使用Unity 2018.1版本中的Package Manager下载,你可以访问Unity的顶部菜单Window > Package Manager中找到,如下图所示。

024702cqvzyx1xm0wx1yyv.png

与传统关卡建模区别
传统关卡建模
传统的关卡建模必须在第三方软件比如Maya或者Blender这样的工具里面完成,然后以FBX文件格式导入Unity中。

024702vua8300ai22qi2q0.png

优点
可以充分使用第三方建模工具的强大建模能力,生成高品质模型。 可以对角色进行骨骼绑定和蒙皮刷权重。 制作角色动画。


缺点
需要依赖专业美术人员的支持。 因为需要导出3D软件然后导入Unity中才能使用,会导致迭代时间加长。


ProBuilde关卡建模
将ProBuilder工具集应用到此流程中以后,可以直接在Unity中完成快速关卡建模的工作。

024702z4vb84gesb47zg07.png

优点
直接在Unity中就可以完成初级甚至最终建模工作。 因为ProBuilder工具集是基于Unity编辑器API开发的,所以操作习惯和Unity完全一致,学习曲线很低,拥有基础建模知识的开发者可以很快学会驾驭相关工具,快速生成关卡用于游戏玩法测试。 ProBuilder拥有完整的UV Unwrapping和纹理贴图功能,开发者甚至可以直接生成游戏关卡中所需的最终模型。


缺点
只能进行多边形Polygon建模,目前还没有曲面建模工具。 无法对模型进行骨骼绑定和蒙皮刷权重。 无法做角色动画。


ProBuilder功能介绍
为了具体演示ProBuilder丰富的Polygon建模功能,我们首先从DeviantArt网站上下载了一张概念图,在Unity中用ProBuilder搭建了一个白模关卡,如下图所示。

024703dv2rca82xdxbru5a.jpg
概念设计图

024707yug72grd7nrgae14.png
在Unity中使用ProBuilder创建的白模关卡

ProBuilder,ProGrid和PolyBrush的功能众多,一篇文章不足以直观地教会大家所有的功能。所以本文会重点介绍上述场景的是如何使用ProBuilder和ProGrid搭建出来的。我们分成了5个步骤来完成上述的场景。

在开始建模之前,请确保已经完成ProBuilder,ProGrid的安装。如果你不需要使用雕刻功能,PolyBrush可以不安装。但是强烈建议与ProBuilder一起安装ProGrid。因为建模过程中我们要确保生成的模型大小贴近现实世界的尺寸。Unity的1个单位是代表了现实世界中的1米,ProGrid的默认吸附网格单位也是1米,非常利于计算物体的尺寸。安装完以后按照下图打开ProBuilder和ProGrid的UI。

024707dy4gsq4zhmgicls0.png
打开ProBuilder窗口

024708qvrr3bouubdpcy1q.png
打开ProGrid窗口

第一步:搭建白模
这个步骤中,我们所要做的是使用ProBuilder的建模工具为整个场景搭建基础。

024713fz2ac9i71i96c9g1.png

我们所用的工具如下:
New Shape工具:用于生成最基本的Cube和楼梯网格。直接点击New Shape菜单,或者Alt/Option+点击New Shape菜单会出现程序化生成网格的Shape Tool窗口,在此窗口可以选择不同形状的预制的程序化网格形状。

024714lhqdh8lh4id8xqhr.png
生成Cube

024714ocgblm4wsg2g2w0l.png
生成楼梯Stair

025206ffgnxq8qgqgqfomd.png
预制的程序化网格形状

New Poly Shape工具:用于生成不规则形状,可以直接在Scene中画出想要的形状,拉伸就可以做出网格。
025213lzlgeksvav730lvt.png

上图中大家可以看到,我们为关卡添加了卫星天线,城楼,建筑物之间的木板桥,以及更多的房屋细节。
在Scene窗口顶部“模式选择”区,可以选择Object,Vertex,Edge或者Face四种模式。 选择其中的一种模式,左侧“模式操作工具组”的菜单会随之变化,而且会自动灰掉当前条件下无法使用的菜单,防止误操作。 Scene窗口的左上角是“ProGrid界面”,用于控制网格的大小,开关状态,以及网格吸附的方向,你可以选择X,Y或者Z轴,或者选择3D也就是三个方向同时选择。 另一个常用的操作是“按住Shift键+拖动移动控件”,可以快速拉伸出一个新的面。


025215s666gp6tg9o11691.png

第三步:使用Vertex Color做模型分类
当完成部分/大部分模型以后,我们可以使用Vertex Colors功能为场景中的模型进行分组。也可以避免整个场景都是白色,看着眼花。

025218hfgkxn7oo0xo2ht0.png

Vertex Colors功能非常简单易用,如下图所示,打开菜单,选择用哪个界面(Palette或者Painter)来做颜色的挑选。

025221o0666662286i6nfi.png

然后选择需要上色的模型,选择进入Object,Vertex,Edge或者Face模式,点击Apply按钮即可应用当前选择的颜色。

025225r42y4ohzi8o8d92j.png

第四步:添加碰撞体
建完整个关卡的模型以后,我们可以为其添加隐形的Collider或者Trigger,用于物理碰撞检测之用。

025229hslkhay33lnzk56k.png

在ProBuilder中创建隐形的Collider或者Trigger非常的简单和直观。如下图所示,你可以在场景中用ProBuilder工具生成简单的Cube,然后在Object模式下使用Set Trigger或者Set Collider直接将其转换成图中的绿色半透明碰撞体(运行时这些绿色的碰撞体不会出现在画面中)。

025234zxxtqrfa5raqqay5.png

第五步:使用Boolean操作完成门洞切割添加细节

025235ldodd5kkvo88cvmv.png
Boolean切割操作前

025600n2zf994pd3z2t53h.png
Boolean切割操作后

025601aboifo92qplthlfq.png
Boolean操作菜单

025606c0bvboovo2gfgg88.png
打开Boolean操作窗口以后,左边拖入“被切割物体”,右边拖入用于切割的物体,比如图中的白色方块,用于在斜坡上切出一个门洞。然后选择Operation为Subtraction,点击Apply即可完成Boolean切割操作。

虽然目前此功能还被标记为Experimental,但是只要网格模型的面片数很高,比如几十万个面,正常使用是没有问题的。当然,我们也非常希望广大用户在不同的情况下使用此工具,给我们提供反馈。

Boolean操作完成以后,原有的两个物体并不会消失,ProBuilder会生成一个新的带门洞的斜坡模型。原有的模型还可以被用于其他切割操作,或者用于地方。

额外功能
普通模型网格转换成ProBuilder可编辑网格
未转换成ProBuilder可编辑之前的模型(任何导入Unity中的网格都可以)。
025608j69pae93dibwlowf.png

转换成ProBuilder可编辑模型以后,ProBuilder相关编辑菜单显示了出来,可以进行全部的ProBuilder操作。
025610z60gf1h5lk3zna66.png

使用Unity FBX Exporter与3D软件进行资产迭代
在Unity中使用ProBuilder完成白模建模以后,可以将所有场景中的物体一起通过Unity FBX Exporter导入Maya/3dsmax这样的3D建模软件中,可以让美术人员作为参考把最终版本的精细模型完成。

当然,因为ProBuilder生成的纯粹的模型网格,你也可以使用ProBuilder菜单中的Export按钮将整个网格用obj,stl,ply等文件格式进行导出。

小结
ProBuilder套件的功能非常丰富,Unity官方技术团队会安排后续直播课程详细讲解如何使用这些工具,尽请关注!更多Unity技术相关内容请访问Unity官方中文论坛(Unitychina.cn) !
ProBuilder, Unity锐亚教育

锐亚教育 锐亚科技 unity unity教程