首页 > 解决方案 > Unity Raycast2D ScreenPointToRay 给出错误

问题描述

我想用我的鼠标位置创建一个简单的 Ray2D:

//Create a ray
Ray2D ray = cam.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;

它给了我一个错误:Ray can't be conversion to Ray2D 我该如何解决这个问题?

标签: unity3derror-handlingraycastingray

解决方案


那是因为您使用的是“ScreenPointToRay”,它返回“Ray”而不是“Ray2D”。

尝试这个:

RaycastHit2D hit = Physics2D.Raycast(Camera.main.ScreenToWorldPoint(Input.mousePosition), Vector2.zero);

推荐阅读