Unity 3D官方教程——2D Roguelike学习记录

这篇博客记录了使用Unity 3D开发2D Roguelike游戏的过程,包括准备工作、动画制作、地图随机生成、游戏对象移动、内墙设置、玩家与敌人设定、计分系统、音频管理和移动端发布等内容。作者详细介绍了每个步骤,如创建游戏对象、动画控制器、游戏逻辑脚本,并给出了官方教程中的一些问题解决方案。
摘要由CSDN通过智能技术生成

1.准备工作

新建2D项目命名为2D Roguelike,导入官方资源。保存场景命名为Main。

2.动画制作

 

Assets文件夹下新建2个文件夹Animations和AnimatorControl。新建空对象命名为Player,打开Sprites文件夹下精灵并展开,将前6个小人儿画一起拖入(点第一个摁住shift点最后一个),会自动弹出保存动画对话框,存入Animations文件夹下并命名为PlayerIdle。

 

把Animations下的Player动画控制器拖入AnimatorController文件夹下。接着拖入另外两个小人儿动画,命名为PlayerChop和PlayerHit(具体拖入哪些精灵看官方视频)。每个游戏对象可有多个动画,但只能有一个动画控制器。双击Player动画控制器,单击橙色方框的PlayerIdle将Speed改为0.5(动画速率)。

 

将游戏对象Player的Tag 选为"Player",Lay选为"BlockingLayer",Sprite Renderer下的Sorting Layer选为"Units"(列表最后一个,即 最后被渲染,在游戏图层显示为最上层)。为Player添加Rigidbody2D和Box Collider,将Rigidbody2D的Body Type改为Kinematic。(我们将用脚本来控制移动),Box Collider的Size改为(0.9,0.9)(比其本身体积稍小,使得运行后player看上去与其他对象接触 了后触发)。将Player拖入Prefabs文件夹成为预制件。

 

如法依次制作Enemy1的游戏对象及其动画,将Enemy1的动画控制器拖入AnimatorController。并添加Rigidbody2D和BoxCollider,制作完毕后将Enemy1拖入Prefabs。

 

接着把Enemy1改名为Enemy2,拖入Enemy2所需的动画。我们看到Enemy2的动画控制器和Enemy1的一样,动画控制器,把Enemy2的动画从控制器里移除,因为两个敌人的动画切换逻辑是一样的。所以在AnimatorController文件夹内新建Animator Override Controller命名为Enemy2,将新建的动画改写控制器的Controller选为Enemy1,(意思是该改写控制器的父对象是Enemy1 动画控制器),并替相应动画。

 

切回到Hierarchy下的Enemy2,把Animator组件下的Controller替换为Enemy2动画控制器,接着把游戏对象Enemy2拖入prefabs,并删除Hierarchy下的Enemy2。

 

3.其他对象预制件(Tile Prefabs)

先添加地板,新建空对象命名为Floor1,添加Sprite Renderer,将Sprite选为所需对象,Sorting Layer选为Floor。然后将Floor1拖入Prefabs,接着将Floor1改名为Floor2,并更换精灵,拖入Prefabs。依次把所有地板预制件制作好(共有8种地板)。

 

 

接着制作出口,把Floor8更名为Exit,Tag改为Exit。精灵更换好,Sorting Layer改为Items。为Exit添加Box Collider2D并勾选Is Trigger。拖入预制件。<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值