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

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

它给我一个错误:Ray无法转换为Ray2D
我怎么解决这个问题?

最佳答案

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

尝试这个:

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

关于unity3d - Unity Raycast2D ScreenPointToRay给出错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/61592418/

10-10 05:43