【Unity】Joystick Pack摇杆插件实现锁四向操作

Joystick Pack

​ 简介:一款Unity摇杆插件,非常轻量化

​ 摇杆移动类型:圆形、横向、竖向

​ 摇杆类型:

Joystick 描述
Fixed 固定位置
Floating 浮动操纵杆从用户触碰的地方开始,一直固定到触碰被释放。
Dynamic 动态操纵杆从用户触摸的地方开始,然后随着触摸在屏幕上移动。
Variable 可变操纵杆可以在这三种模式之间切换,当用户可以决定使用哪个操纵杆时很有用。
  1. 增加锁定四个方向类型摇杆

    因为需要利用圆形摇杆让玩家只能向四个方向滑动:

    • 打开摇杆的控制类Joystick

    • 找到枚举类型增加新的枚举:

    • 找到FormatInput方法:每次摇杆移动会在这个方法计算输入的方向

      添加如下代码:

      c# 复制代码
      //else if(axisOptions == AxisOptions.LockFour)部分为新增代码
      
      private void FormatInput()
          {
              if (axisOptions == AxisOptions.Horizontal)
                  input = new Vector2(input.x, 0f);
              else if (axisOptions == AxisOptions.Vertical)
                  input = new Vector2(0f, input.y);
              else if(axisOptions == AxisOptions.LockFour)
              {
                  float horizontal = Mathf.Abs(input.x);
                  float vertical = Mathf.Abs(input.y);
                  
                  if (horizontal > vertical)
                  {
                      input = new Vector2(input.x, 0f);
                  }
                  else
                  {
                      input = new Vector2(0f, input.y);
                  }
              }
          }
    • 在摇杆组件的面板上选择LockFour类型即可

相关推荐
Unity大海2 小时前
诠视科技Unity SDK开发环境配置、项目设置、apk打包。
科技·unity·游戏引擎
浅陌sss7 小时前
Unity中 粒子系统使用整理(一)
unity·游戏引擎
维度攻城狮12 小时前
实现在Unity3D中仿真汽车,而且还能使用ros2控制
python·unity·docker·汽车·ros2·rviz2
为你写首诗ge15 小时前
【Unity网络编程知识】FTP学习
网络·unity
神码编程17 小时前
【Unity】 HTFramework框架(六十四)SaveDataRuntime运行时保存组件参数、预制体
unity·编辑器·游戏引擎
菲fay18 小时前
Unity 单例模式写法
unity·单例模式
火一线20 小时前
【Framework-Client系列】UIGenerate介绍
游戏·unity
ZKY_2421 小时前
【工具】Json在线解析工具
unity·json
ZKY_241 天前
【Unity】处理文字显示不全的问题
unity·游戏引擎
快乐非自愿2 天前
Netty源码—10.Netty工具之时间轮
java·unity·.net