大家好,我是小兵,今天给大家带来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. unity超级马里奥2d游戏开发课程-01课程介绍

    大家好,我是小兵,今天给大家带来Unity开发超级马里奥2d游戏的第1课,课程介绍,你可以在我的个人博客geekape.net上找到完整的课程. 我之前主要是做前端开发工作的,并不是做游戏开发的,但由 ...

  2. Unity 4.x 2D游戏开发基础教程大学霸第一更

    Unity 4.x 2D游戏开发基础教程 大学霸 第1章  Unity及其组成的介绍 本书主要讲解的是,如何使用Unity开发2D游戏.但在开始讲解之前,最好先熟悉一下Unity这个工具.本章会首先介 ...

  3. Unity 从零开始的2D游戏开发 —— 碰撞检测 和 用射线实现地面检测

    本文一部分为半年前所写,时间间隔较大,若有逻辑上的错误敬请见谅. 碰撞检测是2D游戏开发里经常要用到的东西,当我们做个游戏demo的时候,碰撞检测基本上无处不在,利用碰撞检测可以实现一些比较基础功能, ...

  4. (转自Unity官方)2D游戏开发套件指南

    2D游戏开发套件指南(上):https://mp.weixin.qq.com/s?__biz=MzUxOTAwNzA0MQ==&mid=2247484383&idx=1&sn= ...

  5. Unity 4.x 2D游戏开发基础教程

    淘宝网店购买地址:http://item.taobao.com/item.htm?spm=686.1000925.1000774.13.0Il2aP&id=39546154468 试读文档下载 ...

  6. Unity 从零开始的2D游戏开发 —— 角色移动脚本

    角色移动脚本是一个游戏最基础的脚本,通常也是改动最多的脚本,因此在后期会变得异常臃肿,不过这不是我们讨论的问题,本文主要说明角色移动脚本的设计和一些区别. 1.通过控制角色的Transform来移动角 ...

  7. Unity 从零开始的2D游戏开发 —— [Animator] 使用动画状态机制作简单动画

    动画是一个2D游戏里面必不可少的一部分,使用动画可以实现很多意想不到的功能,除了常规的人物动画,还可以实现一些周期性的运动.接下来会尝试实现一个非帧动画,一个帧动画. 一.非帧动画:通过改变位置或拉伸 ...

  8. SDL游戏开发之三-瓦片地图

    一.瓦片地图 1)瓦片地图简介 瓦片地图(Tiled Map),又称为瓷砖地图,是在游戏开发中经常使用到的技术,它是由少量的尺寸相同的.小的瓦片图片拼接而成的很大的地图.相对于使用一张张图片来绘制地图 ...

  9. Unity 2D游戏开发教程之摄像头追踪功能

    Unity 2D游戏开发教程之摄像头追踪功能 上一章,我们创建了一个简单的2D游戏.此游戏中的精灵有3个状态:idle.left和right.这看起来确实很酷!但是仅有的3个状态却限制了精灵的能力,以 ...

最新文章

  1. 万能系统卸载器免root_Linux umount命令:卸载文件系统
  2. arcgis api for flex 开发入门(五)查询
  3. 进程环境之环境表【转】
  4. javascript开发中的封装模式(转)
  5. opencv图像分析与处理(13)- 彩色图像处理基础:彩色模型与伪彩色图像处理
  6. 为.net开发者提供的一份关于存储过程的评论(转载)
  7. java创作2019-7-19日报管理系统
  8. c语言必背100代码,初学者代码大全(c语言必背100代码)
  9. H3C Comware的作用
  10. linux桌面图标大小,ubuntu17.10修改桌面图标大小的方法
  11. bp神经网络训练过程matlab,bp神经网络训练时间
  12. 数据可视化之热力图相关系数图(原理+Python代码)
  13. 计算机解译地学应用效果,2014年中国地质大学(武汉)0816测绘科学与技术考研大纲...
  14. 实验吧——天网管理系统
  15. A3Mall 电商平台——测试计划评审
  16. Python读取和处理mf4
  17. hive学习笔记-数据操作
  18. GL音乐播放器1.0.0版-- 总结帖
  19. 杏子语录(2019年10月)
  20. 0基础小学生做的网站

热门文章

  1. 首次分享最新国际网址导航系统源码
  2. 活动 | 飞桨全国高校深度学习师资培训班免费报名
  3. [转帖]我的2006
  4. AutoCAD常用快捷键
  5. MapReduce常见算法_李孟_新浪博客
  6. 详细线上问题跟进流程
  7. 杰理发射器用于做对讲机【篇】
  8. Linux之crontab -e定时任务
  9. 经典推箱子游戏无敌版
  10. github上优秀的第三方开元库整理