unity 2D中获取鼠标在实际坐标系中的坐标,试过很多种方法了,只有这个有效。
下面这个实现的是:获取鼠标点击位置的GameObject的Transform 。
// An highlighted block
private Transform GetHitTrans()
{
//获取鼠标在实际坐标系中的坐标。(试过很多种方法,只有这种方法有用)
Vector3 mouseWorldPos = Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x, Input.mousePosition.y, -Camera.main.transform.position.z));
RaycastHit2D rayhit = Physics2D.Raycast(mouseWorldPos, Vector2.down);
if (rayhit.collider != null)
{
return rayhit.transform;
}
return null;
}