Unity3D大都用terrain搭建场景,其中包括怎样修改地面,有层级的变化,高低不平的地面。
Poly brush
如何使用poly brush来达到做成low poly风格的terrain效果:
首先安装package:Window->package Manager如下搜索
下载完成后需要导入第二个Samples(我们是用的是URP)
安装完之后上分会出现如下:
点击即可进入Polybrush
第一个的功能:就像terrain一样它可以调整地面的高度高矮。
第二个:柔化。
第三个:将我当前的物体刷上不同的颜色,非常方便我们在做prototype的时候可以将不同的区域规划好,这样的话我们可以在不同的区域去搭建我使用的美术素材。
第四个:将我们的预制体刷到我的场景当中。
笔刷功能:
我们可以改变地形,如果要向下改变的话可以按住键盘上的control键然后再进行点按。
可以选择外圈的大小以及它的强度,同时也可以使用快捷键,比如说你可以按住Shift键来滚动就调整内角,Ctrl键去滚动调整外圈
使用时鼠标移动到不同顶点的时候圆盘发生了角度的变化,原因是因为默认选择的角度是它的normal map(顶点法线方向,通常用于加强侧面山区效果)也可以选择默认是Y轴(只希望上下调整)或X轴。
羽化功能:
可以将一些比较坚硬的定点把它柔化一些,就是磨平一点。同样可以调整外圈内圈和强度
刷颜色功能:
初始时点击发现它并没有任何效果,原因就是因为我当前选中的物体它的meterial材质并不是我们刚才导入进来的poly brush的材质,所以我们可以使用Poly brush自带的shader graph来创建材质,最方便快捷的方式就是选中它的shader graph,点击鼠标右键如下操作:
随后便可以显示出刷的颜色,如果想全部为统一颜色:选中颜色后点击flood即可
刷入物体:
初始状态下可以看到现在是空的。可以找到之前的素材包里面的prefab,拖拽进入Current Palette
若此时想刷上数,就可以点击想要刷的树,这时候树就到达了Brush Loadout。
随后点击地图就可以随机在这一篇区域快速刷上去
可以通过改变Brush Loadout下物体横线的位置来选择它的出现概率。
如果想删除刚才添加某一物体,只需要按住Control键去点击那个物体即可
这样刷有一个好处就是“Hit Surface is Parent”。这样子资源就不会太乱,我们可以发现其物品全归于了Ground下,所有物品成为了它的子集。
便于我们管理场景,使其看起来不那么乱。
同时你也可以调整物品的密度:
要注意使用Poly brush的时候选中任意操作窗口都会使得坐标轴缺失,若要调整物品需要点击窗口还原后再选中场景物体。
如何将场景变大:
方法1:ground 本身它的 Size 来调整设置(Scale)
但是无论如何调整,地图虽然变大,但是它本身的顶点数并没有增多,也就是说我想操作地形的时候他只有这一个点是有效果的,他不能非常细化的达到低模精度的这种效果,所以这个时候我们就要来创建属于于自己的平台,这个平台并不是指我们平时在hierarchy窗口创建的3D物体的这个plane。(方法二)
这个Plane同样就算你调整非常的大然后你用Poly brush去刷它的时候你会发现它的顶点数目仍然非常的少。
所以我们需要使用一个非常强大的插件:Probuilder.
Probuilder:
安装:Window->package manner,搜索Probuilder,安装即可。
记得添加Samper
否则在我们刷颜色或者做一些调整的时候不会有针对性功能的变化,你创建的所有的pro builder的物体都将是灰色的 而不是pro builder原有的格子型的材质球。
添加完后打开:
将会是上图文字形式的样子,你也可以点击右侧的三个点选择使用icon的方式显示
按住Shift键将鼠标停留在图片上将会显示每一个图标的具体功能,如果有齿轮这样的图标的话,我们点击齿轮或者按住option和alt键来点击的话会有进一步的设置。
如下:
创建Plane即可
随后我们可以用Polybrush进行调整
我们发现,调整时格子里面的顶点是以方块的形式存在的,每一个正方形的方块他并不符合我们的Low poly风格(以三角为单位)所以我们需要继续更改设置,将整个物体改为切割出来三角形,我们先取消Poly brush上面的按钮,回到hierachy窗口中选择好我们当前的平板,然后再pro builder的窗口当中我们可以看到一个折纸的图标,点击即可,随后我们再去刷的时候细节就多起来了
现在场景材质默认的都是白色,如果我想要让它有其他的材质,可以选择直接在我的project窗口当中去创建材质。同样在Asset中创建一个materials文件夹来管理,在里面我们可以创建meterials如下:
起名ground,然后将此材质球拖拽到我的plane上,接下来你就可以在Inspector里面任意操作改变。
然后再配合Polybrush刷上物体即可完成场景绘制构造。