unity超级马里奥2d游戏开发-03瓦片地图场景搭建
大家好,我是小兵,今天给大家带来Untiy开发超级马里奥游戏的第3课,瓦片地图搭建,如果你想查看完整的教程,请访问我的个人博客geekape.net。
前两节课都没涉及具体的游戏制作,算是一个开胃菜,但是从本节课开始,就会有一定的难度,并不适合小白看,需要有编码经验,最好是unity开发经验,当然有兴趣的还是可以尝试看看。
由于本课程不是基础课,不会讲的很细,你需要先了解Unity的基础包括安装,网上有很多视频或文章比我写的详细多了,在这里推荐B站UP主麦克的Unity基础入门教程。
最主要的目的还是给对游戏开发感兴趣,刚入门Unity的小伙伴看,也给自己学习Unity2d游戏开发做个总结。
前期准备
- 假设你已经安装好了Unity,并会基础的操作。
- 本课程会使用到
2D Timemap Editor
和2D Sprite
两个内置包,你可以通过点击【window]→【Package Mange】→【Unity Registry】查找安装。 - 还使用到了一个第三方插件包
[TileMap Extras](https://github.com/Unity-Technologies/2d-extras/)
,这个包的功能主要是增强瓦片地图。
游戏分层的思考
任何游戏的制作都是需要分层的,举个例子来说,和平精英中地图中的地面都是一个单独的层,像道具车子,枪械也在一个单独层,因为它们一个层是静态的,一个层是可交互的。
在超级马里奥这个游戏中,我们对游戏的分层如下:
- 地面层
- 静态层
- 元素层
- 单一层
- UI层
开发步骤
雪碧图切割
首先在Unity中,每张图片 Texture Type默认都是 Default,这种模式是无法使用的,
- 更改图片 Texture Type 为 Sprite(2D and UI)
- Sprite Mode默认是Single,但是由于我们的图片是雪碧图,是有很多张的,所以要修改为 Multiple
- Pixels Per Unit是每个像素在游戏中的大小,一般都修改为16,到时看瓦片地图的方格大小
设置好之后,我们点击 Sprite Editor开始把雪碧图切割为多张。
一般来说,png图片都是使用自动切割,Unity引擎会根据每块区域不间断的点切割,完成后点击右上角的 Apply。
点开这个,就可以看到这张雪碧图下的所有分割的图片了。
搭建地面层
- 我们首先在 Hierarchy 窗口右键创建一个方形的地图
- 然后把关卡地图图片透明度调整一下,并拖动到 Hierarchy 窗口
- 点击顶部菜单 【window】→ 【2D】→【Tile Palette】打开瓦片编辑器,首先我创建了一个名为 New Palette的调色板,并把地图中需要的瓦片拖动到里面。
- 选中地面瓦片,选择区域绘制瓦片工具,完成地面的绘制。
搭建静态层
天上的云朵,地上的草木都是静态的,并且重复性多的,就可以新建一个瓦片地图,并按上面的步骤逐一绘制完成。
搭建元素层
在场景中,还有一些元素是要与角色进行交互的,如怪物,金币砖块,水管等,我们再在 Hierarchy 窗口右键创建一个方形的地图。
这个时候我们就要用到那个第三方扩展包了,使用瓦片来批量生成Prefab。
- 首先在 Project 窗口右键创建一个
Prefab Brush
。
- 并把对应的Prefab拖动到这里来,这里把一个jinbi 的Prefab对应起来了,同样怪物,水管也这样操作。
- 在 Tile Palette窗口就可以看到新建的这些Prefab的瓦片了。
- 选中它们依次绘制砖块,金币,水管,怪物
拖拽单一层
接着我们把角色,旗杆和城堡的图片拖动到 Hierarchy 窗口,完成整个地图的搭建。
好了,本篇文章到此结束,讲的不是很细,有兴趣可以看后期视频的讲解,文章的话流程不是太好表达出来,谢谢你的阅读,我们下期见。
unity超级马里奥2d游戏开发-03瓦片地图场景搭建相关推荐
- unity超级马里奥2d游戏开发课程-01课程介绍
大家好,我是小兵,今天给大家带来Unity开发超级马里奥2d游戏的第1课,课程介绍,你可以在我的个人博客geekape.net上找到完整的课程. 我之前主要是做前端开发工作的,并不是做游戏开发的,但由 ...
- Unity 4.x 2D游戏开发基础教程大学霸第一更
Unity 4.x 2D游戏开发基础教程 大学霸 第1章 Unity及其组成的介绍 本书主要讲解的是,如何使用Unity开发2D游戏.但在开始讲解之前,最好先熟悉一下Unity这个工具.本章会首先介 ...
- Unity 从零开始的2D游戏开发 —— 碰撞检测 和 用射线实现地面检测
本文一部分为半年前所写,时间间隔较大,若有逻辑上的错误敬请见谅. 碰撞检测是2D游戏开发里经常要用到的东西,当我们做个游戏demo的时候,碰撞检测基本上无处不在,利用碰撞检测可以实现一些比较基础功能, ...
- (转自Unity官方)2D游戏开发套件指南
2D游戏开发套件指南(上):https://mp.weixin.qq.com/s?__biz=MzUxOTAwNzA0MQ==&mid=2247484383&idx=1&sn= ...
- Unity 4.x 2D游戏开发基础教程
淘宝网店购买地址:http://item.taobao.com/item.htm?spm=686.1000925.1000774.13.0Il2aP&id=39546154468 试读文档下载 ...
- Unity 从零开始的2D游戏开发 —— 角色移动脚本
角色移动脚本是一个游戏最基础的脚本,通常也是改动最多的脚本,因此在后期会变得异常臃肿,不过这不是我们讨论的问题,本文主要说明角色移动脚本的设计和一些区别. 1.通过控制角色的Transform来移动角 ...
- Unity 从零开始的2D游戏开发 —— [Animator] 使用动画状态机制作简单动画
动画是一个2D游戏里面必不可少的一部分,使用动画可以实现很多意想不到的功能,除了常规的人物动画,还可以实现一些周期性的运动.接下来会尝试实现一个非帧动画,一个帧动画. 一.非帧动画:通过改变位置或拉伸 ...
- SDL游戏开发之三-瓦片地图
一.瓦片地图 1)瓦片地图简介 瓦片地图(Tiled Map),又称为瓷砖地图,是在游戏开发中经常使用到的技术,它是由少量的尺寸相同的.小的瓦片图片拼接而成的很大的地图.相对于使用一张张图片来绘制地图 ...
- Unity 2D游戏开发教程之摄像头追踪功能
Unity 2D游戏开发教程之摄像头追踪功能 上一章,我们创建了一个简单的2D游戏.此游戏中的精灵有3个状态:idle.left和right.这看起来确实很酷!但是仅有的3个状态却限制了精灵的能力,以 ...
最新文章
- 万能系统卸载器免root_Linux umount命令:卸载文件系统
- arcgis api for flex 开发入门(五)查询
- 进程环境之环境表【转】
- javascript开发中的封装模式(转)
- opencv图像分析与处理(13)- 彩色图像处理基础:彩色模型与伪彩色图像处理
- 为.net开发者提供的一份关于存储过程的评论(转载)
- java创作2019-7-19日报管理系统
- c语言必背100代码,初学者代码大全(c语言必背100代码)
- H3C Comware的作用
- linux桌面图标大小,ubuntu17.10修改桌面图标大小的方法
- bp神经网络训练过程matlab,bp神经网络训练时间
- 数据可视化之热力图相关系数图(原理+Python代码)
- 计算机解译地学应用效果,2014年中国地质大学(武汉)0816测绘科学与技术考研大纲...
- 实验吧——天网管理系统
- A3Mall 电商平台——测试计划评审
- Python读取和处理mf4
- hive学习笔记-数据操作
- GL音乐播放器1.0.0版-- 总结帖
- 杏子语录(2019年10月)
- 0基础小学生做的网站