1.控制图片的移动以及转向
新建文件夹Scripts
打开Player脚本编写移动代码
注释:图片的转向可以直接改图片的转向或者通过切换图片来改变朝向,或者通过控制Z轴的旋转来改变朝向。
- 图片的移动
float h = Input.GetAxisRaw("Horizontal");
transform.Translate(Vector3.right * h * moveSpeed * Time.fixedDeltaTime, Space.World);//点击往右移动h返回1,点击往左移动h返回-1 ,Space.World以世界坐标轴来移动
float v = Input.GetAxisRaw("Vertical");
transform.Translate(Vector3.up * v * moveSpeed * Time.fixedDeltaTime, Space.World);//fixedDeltaTime每一帧都是固定的秒数
- 图片的转向
这里控制图片的转向是通过切换图片来控制的。
在操作面板中直接将图片拖拽进数组中
private SpriteRenderer sr;//通过切换图片改变转向
public Sprite[] tankSprite;//切换用到的图片 第一张0上第二张8右第三张16下第四张24左
将图片拖入数组之后可以通过改变数组的下标值来获取图片,这里是通过判断移动方向的正负值来进行方向的切换的
if (h < 0)
{
sr.sprite = tankSprite[3];
}
else if (h > 0)
{
sr.sprite = tankSprite[1];
}
if (v < 0)
{
sr.sprite = tankSprite[2];
}
else if (v > 0)
{
sr.sprite = tankSprite[0];
}
下面是移动加转向的完整的代码
public class Player : MonoBehaviour
{
public float moveSpeed = 3;//移动速度
private SpriteRenderer sr;//通