使用TileMap轻松搭建你的2D地形(一)

unity2D如何搭建地形?如果在原来可能需要安装类似 Ferr2D Terrain Tool 或 Tile Mapper 的收费插件才能实现。而现在免费且功能强大的TileMap来了!

首先对TileMap做一个简单的介绍。

TileMap是在unity2017.2之后的版本内置的一个功能

此功能允许你快速地使用瓷砖和网格来搭建2D地形。

它分别由Tile Assets,Grid GameObjects,The Tilemap Palette,Custom Brushes组成。

 

 

Tile Assets

通常来说,Tiles实际上是在Tilemap上排列的Sprites。 而Sprite作为一个元素去构建各种形状的地形。 这使我们能够以多种方式扩展Tile外形以及大小,为Tile和Tilemaps创建一个强大而灵活的系统。

《使用TileMap轻松搭建你的2D地形(一)》

Sprite:Tile Asset所使用的精灵图

Color: 颜色材质

Collider Type: 无, 精灵图 或 网格

 

 

创建Tile Palette

有两种方法可以创建Tiles。 第一种方法是直接创建Tile Assets。 另一种方法是从选择的Sprite中自动生成Tiles。

要创建Tile,请从Project菜单中选择Create > Tile。 然后选择保存新Tile Assets的位置。

接着继续创建Palette

在Window 菜单中选择Tile Palette

点击Tile Palette中的Create New Palette按钮。 为Palette提供一个名称,然后单击Create按钮。

然后选择保存位置。

《使用TileMap轻松搭建你的2D地形(一)》

或者你也可以直接把素材或精灵图直接拖进来创建Tile Palette

《使用TileMap轻松搭建你的2D地形(一)》

 

 

创建 Tilemaps

在GameObject菜单中的2D选项中选择Tilemap会在场景中创建一个带有子对象Tilemaps的Grid,Grid 作为画布Tilemaps作为画布上的元素。

《使用TileMap轻松搭建你的2D地形(一)》

子对象Tilemap包含Tilemap组件和Tilemap渲染器组件

《使用TileMap轻松搭建你的2D地形(一)》

如果要创建用作“图层”的其他Tilemaps,请选中Grid 或Tilemap,然后在菜单中选择GameObject> 2D Object> Tilemaps,或右键单击菜单中的GameObject并单击2D Object> Tilemap。

《使用TileMap轻松搭建你的2D地形(一)》

《使用TileMap轻松搭建你的2D地形(一)》

 

绘制2D地图

要在Tilemap上绘制,Tile Palette必须选择Active Tilemap。 场景中的Tilemaps会自动添加到选项中。

《使用TileMap轻松搭建你的2D地形(一)》

使用Tilemap面板上的绘画工具

《使用TileMap轻松搭建你的2D地形(一)》

点击画笔工具,从Tilemap Palette中选择一个Tile,然后左键单击Scene View中的Tilemap来开始铺设Tiles。

《使用TileMap轻松搭建你的2D地形(一)》

 

画笔工具

可以左键单击并拖动Tilemap面板来决定铺设的大小

《使用TileMap轻松搭建你的2D地形(一)》

按住shift来擦除

《使用TileMap轻松搭建你的2D地形(一)》

矩形工具可以在Tilemap上绘制一个矩形形状,并用选定的图块填充它。

《使用TileMap轻松搭建你的2D地形(一)》

 

矩形工具

拾取工具用于从Tilemap中选择要用于绘制的Tiles。就类似PS的拾取器, 左键单击并拖动以选择多个Tiles。 在绘画工具模式下按住Ctrl键(或MacOS上的Cmd)以切换拾色器工具。

《使用TileMap轻松搭建你的2D地形(一)》

 

拾取工具

《使用TileMap轻松搭建你的2D地形(一)》

 

填充工具

选择工具用于选择要检查的Tiles区域。

《使用TileMap轻松搭建你的2D地形(一)》

 

选择工具

移动工具用于将选定区域的瓷砖移动到另一个位置。 点击并拖动所选区域以移动瓷砖。

《使用TileMap轻松搭建你的2D地形(一)》

 

移动工具

Tilemap置顶模式

如果您有许多Tilemap图层,但希望单独在特定图层上工作,则可以将其置顶,并从视图中阻挡所有其他GameObject。

《使用TileMap轻松搭建你的2D地形(一)》

从Palette窗口的Active Target下拉菜单或Hierarchy窗口中选择目标Tilemap GameObject。 在SceneView的右下角,有一个Tilemap选项框。

在下拉列表中更改Focus On目标:

None – 没有GameObject置顶;

Tilemap – 目标Tilemap GameObject置顶。 所有其他GameObjects都被覆盖。 如果您想置顶单个Tilemap图层,可以选择此项。

Grid – 使整个父对象下的所有子对象置顶,当你想集中置顶整个Grid可以选择此项。

 

给Tilemap添加物理属性

可以将Tilemap Collider 2D组件添加到Tilemap的GameObject中,以基于Tilemap的Tiles生成对撞机。

Tilemap Collider 2D组件的功能也类似于普通的Collider 2D组件。

要在Unity2D中复刻款类似《铁锈战争》的手游,需要从游戏设计、美术资源准备到代码实现等多个方面入手。以下是大致步骤及关键点: ### 1. **项目初始化** - 创建个新的 Unity 2D 工程,并设置分辨率适配移动设备屏幕。 - 确保安装了必要的包管理工具如 UI Toolkit 或者最新版本的 Physics2D 组件。 ### 2. **核心玩法分析** 铁锈战争是款策略塔防类游戏,因此需明确其基本规则: - 单位生成机制(敌人路径规划) - 资源收系统(金币等) - 建筑放置与升级逻辑 ### 3. **场景搭建** - 使用 Tilemap 来快速绘制地图地形。 - 安排好防御塔的位置区域以及敌人的行进路线。 ### 4. **脚本编写** #### a) 敌人控制 ```csharp public class Enemy : MonoBehaviour { public float speed; private Transform target; // 下个节点目标 void Update() { if (target != null){ transform.position = Vector2.MoveTowards(transform.position, target.position, speed * Time.deltaTime); if(Vector2.Distance(transform.position,target.position)<0.1f){ GetNextWaypoint(); // 到达当前节点后获取下个节点 } } } void GetNextWaypoint(){ ...// 实现寻找下节点算法 } } ``` #### b) 防御塔攻击范围检测 利用圆形触发器Collider判断是否进入射程内并发起射击动作。 #### c) 用户交互界面(UI) 通过按钮点击事件处理建造新塔或选择已有的建筑进行强化操作等功能。 ### 5. **优化性能** 由于手机端硬件限制较大,在开发过程中需要注意保持较低帧数消耗同时尽量减少内存占用率比如合并小图片素材做图打包等等措施均能有效提升整体流畅度体验效果。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值