基于 项目01《游戏-01-开发》Unity2D ,
继续制作游戏:
首先给人物添加一个2D重力效果
在编辑的项目设置中,
可以看出unity默认给的2D重力数值是-9.81,模拟现实社会中的重力效果
下方可以设置帧率
而Gravity Scale代表 这个数值会 * 重力
还需要将玩家添加碰撞器Collider,而一般人物均添加胶囊碰撞器Capsule Collider 2D
在编辑场景中人物身上的绿色圆圈就是碰撞范围,我们进行修改
修改成与人物差不多大小
Shift + F 可以快速帮我们找到需要用到的物体
在场景中找到这个物体
添加不规则复合碰撞器有三步
勾选合成为1块 Used By Composite
最后将场景重力效果设置为静态
我们在运行测试前拖动玩家位置
运行可见玩家通过重力落在了地面
我们避免人物因为场景碰撞体的不均匀而摔倒,需要冻结玩家屏幕z坐标
我们还可以通过设置Mass来设定玩家的质量,如果玩家的质量大于怪物就可以撞开怪物
在重力设置中可以在碰撞检测方式上不选间歇性Discrete 而选择持续Continuous
运行即下落
接下来我们开始配置新输入系统
在编写代码之前,我们首先在项目管理中创建两个文件夹,
表示脚本下的玩家文件夹
在玩家管理文件夹中创建一个代码
命名为PlayerController
旧输入系统已经淘汰,因为移植性不好,跨平台性差,例如移植到手机或xbox平台很复杂
所以我们需要用到新输入系统
打开项目设置
找到Other Settings
我们可以修改Api,.NET Framework可以让我们利用更多的c#特性
【切记】:接下来我们要保存好项目,因为接下来的设置新输入系统会自动重启unity项目
我们在Player 的 Other Settings 的 Active Input Handing 中将输入管理Old设置为Both
注意:在点击Apply之前一定要先保存好项目
更新成新输入系统后我们开始使用新输入系统
我们在Windows下的Package Manager下找到新输入系统
选择Unity Registry 在右侧输入Input 即可看到新输入系统点击下载