【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类型即可

相关推荐
探求虚无16 小时前
用 AI 在 Unity 里做一款 RTS:最难的不是生成代码,而是证明它真的能玩
人工智能·unity·游戏引擎
17岁的勇气2 天前
Unity Shader unity文档学习笔记(二十二):shader变体
笔记·学习·unity
寂寞的船3 天前
【Unity知识速递】第10期 Unity GC 零分配实战:从 UnityEngine.Pool 到手动 GC 控制的全链路优化
jvm·unity·c#·游戏引擎·lucene
Martina_03213 天前
AI生成3D场景的霓虹灯一开就糊成光团?用6步检查Emissive、Bloom与曝光
人工智能·3d·ai·自然语言处理·游戏引擎·材质·贴图
寂寞的船5 天前
【Unity知识速递】第8期 IL2CPP 托管堆内存碎片与原生堆交互机制深度解析
unity·游戏引擎·交互
寂寞的船5 天前
【Unity知识速递】第5期 Unity 6.2 深度解析:AI Assistant 登场,World Space UI 与 Sentis 全面升级
人工智能·ui·unity
寂寞的船6 天前
【Unity知识速递】第4期 MCP for Unity:用 AI 自然语言控制编辑器
人工智能·unity·编辑器
淡海水6 天前
09-04-内存-Unity原生对象生命周期
unity·c#·游戏引擎·gc
寂寞的船6 天前
【Unity知识速递】第6期 URP性能优化完全指南:从内存到GPU的三维调优
unity·性能优化·编辑器
寂寞的船6 天前
【Unity Bug挑战】第10期 SerializeReference 内存泄漏之谜
unity·c#·游戏引擎·bug