Unity笔记 2D ROGUELIKE 实例详解

这篇博客详细介绍了如何使用Unity进行2D ROGUELIKE游戏的开发,包括角色、敌人的prefab创建,动画控制器的设置,Tile的制作,以及游戏逻辑的实现。内容涵盖tag、layer、sortinglayer的使用,动画的添加,以及游戏状态管理,移动逻辑,碰撞检测等方面,适合有一定Unity基础的开发者学习。
摘要由CSDN通过智能技术生成

这是unity官方的一个视频教程。比较完整的一个2D小游戏,共14讲。
http://unity3d.com/learn/tutorials/projects/2d-roguelike
这里整理了一些tips。
游戏控制一个2D帧动画的人物在tile地图上行走,目的是走到出口。地图上有食物、敌人、阻挡。移动消耗食物,碰到敌人会自动攻击。

Unity把这个项目定义为中级,可以先看这个

第一部分 准备资源
1 介绍
tag、layer、sortinglayer的用法:
tag 是标识gameobject用的。
layer 一共32个不能扩展,类似分类的概念。射线选择和渲染可以指定感兴趣的layer。
sortinglayer 在render里选择的,决定2D排序用的。

2 player和enemy的prefab
制作prefab:
prefab就是gameobject的预置模板,建立好后方便clone建立gameobject无论是在编辑时和脚本中。
player的prefab涉及加精灵动画、做AnimationController(AC)、选tag、layer、sortinglayer、加Rigibody控制用。

加精灵动画:
这个游戏是简单的帧动画,美术资源已经按照固定大小做好了每帧画面。
选中一个动作的所有帧拖到gameobject就会生成一个动画文件(这时有对话框要起文件名和选路径)和一个配套的AnimationController。

AnimationController(AC):
例子里用AC调整了动画速度。
2种敌人公用一个AC使用Create Animator Override Controller 这种AC会要求指定一个AC状态机和选择override动画。

添加rigidbody来控制:
选中IsKinematic这样就不会被物理系统本身影响,但可以使用其控制gameobject。

3 Tile(地形块)prefab
为每个Tile元素建立perfab:
Tile prefab没有动画的情况(只使用单帧资源)添加一个SpiriteRender然后从资源里拖一帧上去。
注意和有动画的tile(可以打碎的tile)区分。
trigger:
Exit、Food之类的要交互,加上Box Collider并设置trigger这样就可以重叠而不受物理系统约束了。
wall之类的trigger就不设置了,要利用物理系统达到Player不能重叠墙的效果。

第二部分 关卡和整体结构
1 board manager
管理关卡场景的脚本。
生成地图、放置元素等功能。

2 game manager
编辑状态数组批量赋值:
可以点击右边图标lock inspector,多选prefab拖动到脚本public的gameobject数组上。

singleton的一个实现:
singleton简单说就是个全局变量。

public static
  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

好热哦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值