【Unity】2D太空登录小游戏开发入门教程(下)

Unity 是一款非常流行且用途广泛的游戏引擎,拥有一长串受支持的平台和设备。3D 游戏可能是您谈到 Unity 时的第一个想法。该引擎甚至曾经被称为Unity 3D!但是,大部分移动、主机和桌面游戏都是以 2D 形式呈现的,因此了解 Unity 为构建 2D 游戏提供的功能非常重要。

在本教程中,您将构建一个 2D 太空着陆器游戏,并在此过程中学习以下技能:

  • 如何使用精灵和相机。
  • 所有关于_物理2D_组件以及如何处理碰撞和游戏玩法。
  • 如何设置 2D 动画和状态。
  • 图层和精灵排序如何影响 2D 游戏。

本教程的材料是在 Unity 版本 2020.3 中构建的。

[沿续上文]【Unity】2D太空登录小游戏开发入门教程(上)

二维对撞机和物理

Unity 允许您像在 2D 游戏中一样调整物理 3D 系统的重力。Unity 对新项目的默认重力设置与地球重力相同:根据定义,9.80665 m/s2。但是你把你的宇宙飞船降落在月球上,而不是地球上,月球上的重力大约是地球的16.6%,即1.62519米/秒2。

注意:初学者项目中的重力设置为 -1,以便于飞行并立即测试游戏。

要修改游戏的重力,请点击_“编辑”图标 ▸ 项目设置_ 然后选择物理 2D 选项卡并使用_物理 2D_ 面板将_重力的_ Y 值从 -1 更改为 -1.62519

在物理设置中调整重力

事情要变得沉重了!

单击_“开始_”以运行游戏;飞一圈,看看重力如何改变飞船的运动:

重力上升一小步,推进器动力需要一个巨大的飞跃!

重力需要一小步,推进器动力需要一个巨大的飞跃!

与对象碰撞

如果你已经尝试过在场景中导航_着陆器_,你可能已经撞到了一两块石头。这是Unity的2D碰撞系统在工作。

每个应与重力和其他物理对象交互的对象都需要一个 Collider 2D 组件和一个 Rigidbody 2D 组件。

在层次结构中选择_着陆器_游戏对象。

刚体和碰撞体设置

您将看到附加了刚体 2D 和多边形碰撞体 2D 组件。将刚体 2D 组件添加到精灵中,使其受 Unity 的 2D 物理系统的控制。

物理组件快速课程

就其本身而言,刚体 2D 组件意味着重力会影响它所附加到的游戏对象。它还允许您使用对实体施加力的 Physics2D 相关方法从脚本中控制实体。

但是,如果您希望精灵与其他对象交互和碰撞,则还需要一个_碰撞体 2D_ 组件。添加适当的碰撞体组件会使精灵响应与其他精灵的碰撞。

多边形 2D 碰撞体比其他简单碰撞体(如箱形或圆形碰撞体 2D 组件)性能更重,但它们使对象之间的物理交互更加精确。始终使用游戏中可以侥幸逃脱的最简单的碰撞体形状,以确保获得最佳性能。

碰撞面

通过选择层次结构中的_着陆器_游戏对象并单击多边形 2D 碰撞体上的编辑碰撞体来探索宇宙飞船上的_碰撞_体:

“编辑碰撞体”按钮

将鼠标光标悬停在场景视图中的碰撞体边缘上。手柄允许您移动碰撞体点,您还可以创建或删除点以修改碰撞体的形状:

编辑 2D 多边形碰撞体

暂时保持_着陆器_对撞机的形状不变。

: 附加到 Lander 游戏对象的 Lander.cs 脚本中的代码用于处理与游戏场景中其他对象的碰撞。如果碰撞力的大小超过某个阈值,着陆器将被摧毁。OnCollisionEnter2D</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值