接下来就是写代码了
我们创建一个文件夹来存放我们的脚本,名字叫Scripts3D场景,在里面右键->创建->C#Script,这样就创建了一个脚本
把这个脚本直接拖到我们Hierarchy视图中的播放器上游戏素材人物,我们可以选择播放器发现我们的脚本文件已经挂载了
然后我们打开playercontroller脚本来编辑我们的代码
简单解释一下代码,首先我们需要获取角色上Rigidbody2D组件、Collider2D组件和Animator组件的引用。
start函数会在游戏运行时执行,一般这里用来初始化变量。
至于跳跃,可以看这篇博文。 Unity2D横版游戏跳跃实时响应。
然后是最基本的移动函数,GetAxisRaw可以获取我们key的输入。例如,当我们按下 a 键时,值为 -1,当我们按下 d 键时,值为 1,所以将这个值乘以我们的速度。可以设置角色x轴方向的速度,然后需要设置角色面对的方向。也可以根据GetAxisRaw获取的值来设置。如果值不为0游戏素材人物,则角色在移动,所以在动画中设置run变量跳转动画就不赘述了。
然后是动画之间条件的设置。例如,当角色y轴方向的大小小于0.1且不在地面上时,将动画中的fall变量设置为false,如果jump为true且y轴的力is 如果 size 小于 0,则表示角色处于下降状态。将跳转设置为假并下降为真。如果角色在地上,设置fall为false,代码基本完成。