首页 文章

悬停并按下时的Unity Raycast

提问于
浏览
0

如何在悬停时使用光线投射并按下对象 . 我能想到的唯一方法是使用2个光线投射 . 但只有1个光线投射可以工作,具体取决于它们的检查顺序 .

if (Input.touchCount == 1)
        {
            Touch touch = Input.touches[0];
            if (touch.phase == TouchPhase.Began)
            {
                Ray ray = Camera.main.ViewportPointToRay(new Vector3(0.5f, 0.5f, 0));                                                                    
                Ray ray1 = Camera.main.ScreenPointToRay(Input.GetTouch(0).position);
                RaycastHit hit = new RaycastHit();

                if(Physics.Raycast(ray, out hit, 5))
                 if(Physics.Raycast(ray1, out hit, 5))
                 {
                   ...
                 }
             }
        }

1 回答

  • 0

    也许尝试创建另一个RaycastHit变量并将其传递给第二个raycast语句 .

    使用它的方式命中变量将是无用的 . 也可能有更好的方法来做你想做的事情 .

    你能解释一下你的情景好一点吗?

相关问题