摇杆的简单使用 Unity3d

来源:互联网 发布:python snmp cisco 编辑:程序博客网 时间:2024/05/20 21:47


1、首先导入EasyTouch插件
2、创建空物体,命名为EasyTouch,并将EasyTouch摇杆组件拖进空物体对象
3、再创建一个空物体,命名为new joystick,将EasyJoystick拖进空物体对象
4、设置摇杆的几个参数:
   Joystick name设置为new joystick,或与上面第二个空物体命名一致
   Interaction type设置为Event Notification
   Enable X axis 和 Enable Y axis都设置为0.5,或者合适的数值
注意:EasyTouch的Broadcast messages不勾选
5、创建一个C#脚本,命名为Move.cs,编写下面代码,绑定到想要控制的物体即可用摇杆对该物体进行控制移动。

using UnityEngine;
using System.Collections;

public class Move : MonoBehaviour {

 void OnEnable() 
  
 {   
  EasyJoystick.On_JoystickMove += OnJoystickMove;
 } 
 //  此函数是摇杆移动中所要处理的事
 void OnJoystickMove(MovingJoystick move) 
 {   
  if (move.joystickName != "new joystick")       //  在这里的名字new joystick 就是上面所说的很重要的名字,在上面图片中joystickName的你修改了什么名字,这里就要写你修改的好的名字(不然脚本不起作用)。
  { 
   return; 
  } 
  Debug.Log(move.joystickAxis.x);
  
  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 * 8); 
  } 
 }
 
}

0 0
原创粉丝点击