unity超级马里奥2d游戏开发-03瓦片地图场景搭建

大家好,我是小兵,今天给大家带来Untiy开发超级马里奥游戏的第3课,瓦片地图搭建,如果你想查看完整的教程,请访问我的个人博客geekape.net。

前两节课都没涉及具体的游戏制作,算是一个开胃菜,但是从本节课开始,就会有一定的难度,并不适合小白看,需要有编码经验,最好是unity开发经验,当然有兴趣的还是可以尝试看看。

由于本课程不是基础课,不会讲的很细,你需要先了解Unity的基础包括安装,网上有很多视频或文章比我写的详细多了,在这里推荐B站UP主麦克的Unity基础入门教程。

最主要的目的还是给对游戏开发感兴趣,刚入门Unity的小伙伴看,也给自己学习Unity2d游戏开发做个总结。

前期准备

  • 假设你已经安装好了Unity,并会基础的操作。
  • 本课程会使用到 2D Timemap Editor2D Sprite 两个内置包,你可以通过点击【window]→【Package Mange】→【Unity Registry】查找安装。
  • 还使用到了一个第三方插件包 [TileMap Extras](https://github.com/Unity-Technologies/2d-extras/) ,这个包的功能主要是增强瓦片地图。

游戏分层的思考

任何游戏的制作都是需要分层的,举个例子来说,和平精英中地图中的地面都是一个单独的层,像道具车子,枪械也在一个单独层,因为它们一个层是静态的,一个层是可交互的。

在超级马里奥这个游戏中,我们对游戏的分层如下:

  • 地面层
  • 静态层
  • 元素层
  • 单一层
  • UI层

开发步骤

雪碧图切割

首先在Unity中,每张图片 Texture Type默认都是 Default,这种模式是无法使用的,

  1. 更改图片 Texture Type 为 Sprite(2D and UI)
  2. Sprite Mode默认是Single,但是由于我们的图片是雪碧图,是有很多张的,所以要修改为 Multiple
  3. Pixels Per Unit是每个像素在游戏中的大小,一般都修改为16,到时看瓦片地图的方格大小

设置好之后,我们点击 Sprite Editor开始把雪碧图切割为多张。

一般来说,png图片都是使用自动切割,Unity引擎会根据每块区域不间断的点切割,完成后点击右上角的 Apply。

点开这个,就可以看到这张雪碧图下的所有分割的图片了。

搭建地面层

  1. 我们首先在 Hierarchy 窗口右键创建一个方形的地图

  1. 然后把关卡地图图片透明度调整一下,并拖动到 Hierarchy 窗口

  1. 点击顶部菜单 【window】→ 【2D】→【Tile Palette】打开瓦片编辑器,首先我创建了一个名为 New Palette的调色板,并把地图中需要的瓦片拖动到里面。

  1. 选中地面瓦片,选择区域绘制瓦片工具,完成地面的绘制。

搭建静态层

天上的云朵,地上的草木都是静态的,并且重复性多的,就可以新建一个瓦片地图,并按上面的步骤逐一绘制完成。

搭建元素层

在场景中,还有一些元素是要与角色进行交互的,如怪物,金币砖块,水管等,我们再在 Hierarchy 窗口右键创建一个方形的地图。

这个时候我们就要用到那个第三方扩展包了,使用瓦片来批量生成Prefab。

  1. 首先在 Project 窗口右键创建一个 Prefab Brush

  1. 并把对应的Prefab拖动到这里来,这里把一个jinbi 的Prefab对应起来了,同样怪物,水管也这样操作。

  1. 在 Tile Palette窗口就可以看到新建的这些Prefab的瓦片了。

  1. 选中它们依次绘制砖块,金币,水管,怪物

拖拽单一层

接着我们把角色,旗杆和城堡的图片拖动到 Hierarchy 窗口,完成整个地图的搭建。

好了,本篇文章到此结束,讲的不是很细,有兴趣可以看后期视频的讲解,文章的话流程不是太好表达出来,谢谢你的阅读,我们下期见。

本文系作者 @ 原创发布在 极客猿小兵的博客。未经许可,禁止转载。


极客猿小兵 » unity超级马里奥2d游戏开发-03瓦片地图场景搭建

1 评论

  1. 关卡图片原本是清楚的,拖到hierarchy中就不清楚了啊
    而且怎么把关卡图片和tilemap对应起来啊

回复 has_7 取消回复