鼠标点击移动中,获取不到射线

Enchanter, 2019-07-27 03:52:25
	void ClickOn(Vector2 pos)
{
if (player == null)
return;
Debug.Log("点击的坐标:"+pos);
Ray ray = this.GetComponent<Camera>().ScreenPointToRay(pos);
Debug.Log("ray:" + ray);
RaycastHit[] hits = Physics.RaycastAll(ray);
Debug.Log(hits.Length);

foreach (RaycastHit hit in hits){
//算出点击位置
BoxCollider bc = hit.collider as BoxCollider;
if (bc != null && bc.name.Contains("floor") && player != null){
//算出走动的方向和目的点,走动过去
player.GetComponent<Player>().WalkTo(hit.point);
break;
}
}
}


其他的值都有,但是到RaycastHit[] hits = Physics.RaycastAll(ray);这里时候,hits 里面没有值,导致代码无法向下进行,请问是什么原因导致的,怎么破解?
...全文
103 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
黄小俊 2019-10-26
  • 打赏
  • 举报
回复
你的面板 要勾上Raycast 不然怎么射到哪!? 射穿了!!
方圆谦里 2019-09-27
  • 打赏
  • 举报
回复
请问你的射线确定碰撞到游戏物体了嘛?
Enchanter, 2019-07-28
  • 打赏
  • 举报
回复
自己顶起来,不要沉

2,584

社区成员

发帖
与我相关
我的任务
社区描述
Unity3D相关内容讨论专区
游戏unity 技术论坛(原bbs)
社区管理员
  • Unity3D
  • 芝麻粒儿
  • 「已注销」
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

Unity3D社区公告:

  1. 社区致力于解决各种Unity3D相关的“疑难杂症”。
  2. 社区不允许发布与Unity3D或相关技术无关内容。
  3. 社区版主邀请各位一道为打造优秀社区不懈努力。

试试用AI创作助手写篇文章吧