2D游戏神器-RuleTile
Tilemap
个人博客原文
Tilemap是一种地图编辑方式,使用Tilemap可以让我们就像搭积木一样快速搭建地图。
许多2D游戏都是使用的这样的方式构建地图,例如: 泰拉瑞亚,蔚蓝,甚至是饥荒
Unity在2017版本引入Tilemap组件,并在随后的几年版本里逐渐完善。
RuleTile
但是我们今天要讲的不是Tilemap,而是Tilemap的进阶工具-RuleTile。
在使用Tilemap搭建地图时,我们会发现这样还是太低效了,我们的2D地图是有特定规则的,例如地表的瓦片和地底的瓦片不同,中间的瓦片和两边的瓦片不同。
有没有办法,让计算机帮我们计算这些规则,而我们只需要勾勒出地图轮廓呢。
还真有,不过需要我们下载Unity的2D扩展包,里面包含了RuleTile。
安装2d-extras
2d-extras GitHub地址
有两种下载方式
- 下载压缩包并解压到Unity项目Assets文件夹中。
- 下载仓库并添加到Unity的包管理器。 -具体方式见2d-extras的README
添加到项目里面之后,我们会发现在Creat最上面有一个2D选项,我们可以在那里选择创建各种瓦片或者笔刷。
使用RuleTile
开始搭地图,一张相对完整的Tilemap需要7种基础瓦片。
7种瓦片经过旋转和组合就可以构成一个2D游戏地图了。
接下来开始创建2D地图
- 建空项目
- 添加2d-extras
- 添加Tilemap到场景
- 添加7种基础瓦片图片
- 创建一个RuleTile并设定显示规则
- 创建画板,添加刚刚的RuleTile
- 画地图
RuleTile设置
瓦片规则的设置特别简单,就是设置那个九宫格。
绿箭头代表有格子,红叉代表没有格子。我们根据每种瓦片的显示一条条设置就行。
九宫格中间可以设置旋转,这样我们就不用自己设置旋转之后的规则了。
例如:
第一条规则,当该瓦片上边和左边没有瓦片,且下边和右边有瓦片时,显示右侧精灵图。
如果旋转该瓦片之后也符合规则,则旋转精灵图并显示。
再比如:
第三条规则,如果四边都没有瓦片,就显示该精灵图。并且没有设置旋转。
最终效果如下
项目地址
Unity版本: 2019.2.17f1
项目GitHub地址
后言
Tilemap 不仅可以把2D图片当成瓦片,一样支持3D物体甚至是动画。
我们可以把一些效果做成预制体,然后当成瓦片刷上去,还是有很大的发挥空间的。
参考
- Unity官方文档
- Unity中使用Tilemap快速创建2D游戏世界
2D游戏神器-RuleTile相关推荐
- 浅谈2D游戏设计模式--游戏剧情设计(1)
博主不才,人生有2大爱好,写程序和玩游戏,本人玩的又是一款2D的在旁人看来弱智的网络游戏. 这款游戏在中国的名称叫做冒险岛,不知道园子里有没有人玩过. 我打算有空的话,就把我玩游戏中的心得和程序结合起 ...
- Unity 2D游戏开发教程之摄像头追踪功能
Unity 2D游戏开发教程之摄像头追踪功能 上一章,我们创建了一个简单的2D游戏.此游戏中的精灵有3个状态:idle.left和right.这看起来确实很酷!但是仅有的3个状态却限制了精灵的能力,以 ...
- 微信小游戏开发教程-2D游戏原理讲解
微信小游戏开发教程-2D游戏原理讲解 原理 为了更加形象的描述,这里先上一张图: 背景 a. 首先,我们看到背景好像是一张无限长的图片在向下移动.实际则不然,这是一张顶部和底部刚好重叠的图片.这是一种 ...
- Unity 2D游戏开发教程之游戏中精灵的跳跃状态
Unity 2D游戏开发教程之游戏中精灵的跳跃状态 精灵的跳跃状态 为了让游戏中的精灵有更大的活动范围,上一节为游戏场景添加了多个地面,于是精灵可以从高的地面移动到低的地面处,如图2-14所示.但是却 ...
- Unity 2D游戏开发教程之为游戏场景添加多个地面
Unity 2D游戏开发教程之为游戏场景添加多个地面 为游戏场景添加多个地面 显然,只有一个地面的游戏场景太小了,根本不够精灵四处活动的.那么,本节就来介绍一种简单的方法,可以为游戏场景添加多个地面. ...
- Unity 2D游戏开发教程之精灵的死亡和重生
Unity 2D游戏开发教程之精灵的死亡和重生 精灵的死亡和重生 目前为止,游戏项目里的精灵只有Idle和Walking这两种状态.也就是说,无论精灵在游戏里做什么,它都不会进入其它的状态,如死亡.于 ...
- Unity 2D游戏开发教程之2D游戏的运行效果
Unity 2D游戏开发教程之2D游戏的运行效果 2D游戏的运行效果 本章前前后后使用了很多节的篇幅,到底实现了怎样的一个游戏运行效果呢?或者说,游戏中的精灵会不会如我们所想的那样运行呢?关于这些疑 ...
- Unity 2D游戏开发教程之使用脚本实现游戏逻辑
Unity 2D游戏开发教程之使用脚本实现游戏逻辑 使用脚本实现游戏逻辑 通过上一节的操作,我们不仅创建了精灵的动画,还设置了动画的过渡条件,最终使得精灵得以按照我们的意愿,进入我们所指定的动画状态. ...
- 配置JDKAndroid 2D游戏引擎AndEngine
配置JDKAndroid 2D游戏引擎AndEngine JDK全称为Java Development Kit(也即Java开发包),是用于支持Java 编程的基础.无论是什么编程,只要用到了Java ...
最新文章
- 09_Java面向对象_第9天(类、封装)_讲义
- Sql 语句中 IN 和 EXISTS
- 使用canvas操作图像
- ckeditor 在dwz里面使用
- C#与java可以共用的DES加密解密
- python 生成时间序列
- MSIL实用指南-返回结果
- 为什么孙悟空能大闹天宫,却打不过路上的妖怪?
- 前端学习(710):命名规范和语法格式
- vscode运行python文件_vscode怎么运行python文件
- android 加载layout,Android自定义View加载视图之LoadingLayout
- 提取SHP格式文件折点(拐点)地理坐标(经纬度)
- 一个浏览图片新闻的App
- 【WeUI】关于jQuery WeUI和WeUI版本兼容的问题
- Ant design vue 表格合并 合并行 合并列
- 以中国南方航空为竞品结构化分析并设计航空购票网页
- PWM、SPWM、SVPWM的个人理解
- 人工智能开源项目推荐
- idea一直卡在build不动
- 微信小程序学习之路(一)