首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有办法得到实际的joystick.Vertical和joystick.Horizontal值吗?

有办法得到实际的joystick.Vertical和joystick.Horizontal值吗?
EN

Stack Overflow用户
提问于 2020-08-27 09:26:09
回答 1查看 267关注 0票数 0

我想自己做一个moba游戏。

我想做的是

  1. 传递一个名为joystick_tag的参数。(如: Get3DJoystickPosition(joystick_tag))
  2. Get current joystick.Horizontal,joystick.Vertical,Camera.main,以便计算值:

)

代码语言:javascript
复制
Camera.main.ScreenToWorldPoint(new Vector3((joystick.Horizontal + 1) * Screen.width / 2, (joystick.Vertical + 1) * Screen.height / 2, Camera.main.nearClipPlane));

  1. 返回该值.

这看起来很简单,但是在我的代码中,即使我移动操纵杆,joystick.Horizontal和joystick.Vertical值也保持为0。

基本上,该方法获得一个名为joystick_tag的字符串输入。然后,通过标记,每次调用该方法时,它都会发现一个由标记标记的操纵杆。然后调用Update()方法,以便获得当前的joystick.Horizontal和joystick.Vertical。

这是完整代码。操纵杆类来自Fenerax工作室的“欢乐棒包”:

代码语言:javascript
复制
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

namespace Korselo.JoyPos
{
    public class JoyPos : MonoBehaviour
    {
        public Joystick joystick;
        public Vector3 world_v;
        public string joystick_tag_public;
        // Start is called before the first frame update
        void Start()
        {
          
        }

        // Update is called once per frame
        void Update()
        {
            world_v = Camera.main.ScreenToWorldPoint(new Vector3((joystick.Horizontal + 1) * Screen.width / 2, (joystick.Vertical + 1) * Screen.height / 2, Camera.main.nearClipPlane));

            Debug.Log(world_v);
        }

        public Vector3 Get3DJoystickPosition(string joystick_tag)
        {
            GameObject joystickGameObject = GameObject.FindGameObjectWithTag(joystick_tag);
            if (joystickGameObject != null)
            {
                joystick = joystickGameObject.GetComponent<Joystick>();
            }
            Update();
            return world_v;
        }
    }
}
EN

回答 1

Stack Overflow用户

发布于 2020-08-27 10:55:48

抱歉,但你的代码看上去一团糟。我强烈建议你在做一个MOBA之前先上一门课程或者使用团结学习。你不应该亲自打电话给Update()。统一叫它自己。要回答您的问题,joystick.Horizontaljoystick.Vertical应该返回实际值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63613027

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档