因为游戏策划,我得用easytouch的x轴改变人物朝向,y轴是不动的,游戏开始后人物是自动向前跑的。
1.add a new joystick。
2.改名为threejoystick。
3.新建c#文件,拖到人物上。代码和网上一样。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class No3PersonMove : MonoBehaviour
{
void OnEnable()
{
EasyJoystick.On_JoystickMove += OnJoystickMove;
}
// 此函数是摇杆移动中所要处理的事
void OnJoystickMove(MovingJoystick move)
{
if (move.joystickName != "threejoystick") // 在这里的名字new joystick 就是上面所说的很重要的名字,在上面图片中joystickName的你修改了什么名字,这里就要写你修改的好的名字(不然脚本不起作用)。
{
return;
}
float PositionX = move.joystickAxis.x; // 获取摇杆偏移摇杆中心的x坐标
float PositionY = move.joystickAxis.y; // 获取摇杆偏移摇杆中心的y坐标
if (PositionY != 0 || PositionX != 0)
{
//设置人物朝向
transform.LookAt(new Vector3(transform.position.x + PositionX, transform.position.y, transform.position.z + PositionY));
//移动
transform.Translate(Vector3.forward * Time.deltaTime * 0.3f);
}
}
void OnDestroy()
{
EasyJoystick.On_JoystickMove -= OnJoystickMove;
}
4.修改easytouch数值。
完成游戏后,我会试着将人物播放动画的代码和easytouch代码合并,并且添加end。