[unity2D]叠层设置

为什么需要叠层:在瓦片地图中希望草出现在人物后面,如果直接进行绘制会看到草会挡住人物,那么就需要使用叠层将草调整到人物后方(所以叠层在unity 2D游戏中很重要)

首先选中人物,在inspector窗口找到Spriter render 组件(作用把图片渲染到画面中,渲染什么图片显示什么),找到sorting layer,默认只有一个default layer,可以创建多个layer来进行叠层的排序,在同一个叠层中可以调整order即顺序。

举例:现在人物处于deafult图层的第0级,Tilemap也是deafult 0级(且地图后创建),同样数值在运行游戏时是随机进行遮挡,而且后面创建的物体会遮挡之前创建的物体,则草会遮挡人物。假设将地图设置为deafult的order为-1,现在人物就不会被草遮挡住。

每次设置数值会比较累,简单的方法就是在添加不同的sorting layer图层,把不同的物体或地图指定到固定的图层上。点击add sorting layer,在新的页面点击+增添新的图层。这里以设置三个为例

添加完后返回到角色物体insprctor界面,将人物放置在middle一层,此实即使order相同人物也会出现在草的前面。在unity layer图层中,下方的物体会遮挡上面的物体,所以Front遮挡Middle遮挡Back遮挡default。

若编辑错了再次点击add sorting layer进入页面,右键按住前面的两条杠来进行顺序的拖拽调整顺序。

关于地图想要有更详尽的设置,比如将将地图在middle层上面的草地在后面,先将草地从场景中擦掉,点击Tile Palette,使用橡皮擦除草地(快捷方法,点击矩形,按住shift连选多个方块,松开则擦除)

如何将草地分层:在Grid再次创建Tilemap重命名为Back,原来的tilemap重命名为Platform。根据图层需要设置多个Back,Front。将Back123的layer图层全部选择为Back,Front123layer图层全部选择为为Front,通过order数字来区分不同Back以及Front顺序,数字大的在前面,小的在后面。

将草地绘制在Back3(距离地面最近),在Scen右下角Tilemap Focus on选择Tilemap(根据tileplattes选择当前激活绘制的地图来在场景中显示出来,这样就知道绘制的是哪一层),比如选择为platform,在Back3绘制完草地最后在Tilemap Focus on选择None.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值