Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何检查鼠标位置是否在圆环内2d_C#_Unity3d - Fatal编程技术网

C# 如何检查鼠标位置是否在圆环内2d

C# 如何检查鼠标位置是否在圆环内2d,c#,unity3d,C#,Unity3d,我正在尝试检查鼠标位置是否在圆形集合2d内 我在更新中检查碰撞器边界,但这只返回一个框而不是一个圆 void Update() { CircleCollider2D collider2D = GetComponent<CircleCollider2D>(); Vector2 mousePosition = Camera.main.ScreenToWorldPoint(Input.mousePosition); Debug.Log(collider2D.bou

我正在尝试检查鼠标位置是否在圆形集合2d内

我在更新中检查碰撞器边界,但这只返回一个框而不是一个圆

void Update() {
    CircleCollider2D collider2D = GetComponent<CircleCollider2D>();
    Vector2 mousePosition = Camera.main.ScreenToWorldPoint(Input.mousePosition);

    Debug.Log(collider2D.bounds.Contains(new Vector2(mousePosition.x, mousePosition.y)));
    Debug.DrawLine(collider2D.bounds.ClosestPoint(mousePosition), mousePosition);
}
void Update(){
CircleCollider2D=GetComponent();
Vector2 mousePosition=Camera.main.ScreenToWorldPoint(Input.mousePosition);
Log(collidater2d.bounds.Contains(新向量2(mousePosition.x,mousePosition.y));
Debug.DrawLine(冲突的r2d.bounds.ClosestPoint(mousePosition),mousePosition);
}


如何检查鼠标是否在圆碰撞器内?

是否有原因不使用
onmouseinter()
Unity内置


创建一个脚本并将其附加到具有
CircleCollider2D
游戏对象,然后添加
onMouseCenter()
事件。您还可以选择使用
OnMouseExit()
事件
OnMouseEnter()
OnMouseExit()
是由
Unity
自动触发的事件,类似于
OnCollisionEnter()、OnCollisionExit()、OnGuiEnter()
等。

不知道它们的存在。试过了,效果很好