在MacOS中,使用C#如何获得鼠标在屏幕上的位置?
在不使用Cocoa/XCode的情况下,有没有办法在C#(MacOS)中获取鼠标光标的位置?它需要与Unity兼容。取自 或者从 或者,如果您正在寻找更具体的OS API实现,而不一定是unity,请检查在MacOS中,使用C#如何获得鼠标在屏幕上的位置?,c#,macos,C#,Macos,在不使用Cocoa/XCode的情况下,有没有办法在C#(MacOS)中获取鼠标光标的位置?它需要与Unity兼容。取自 或者从 或者,如果您正在寻找更具体的OS API实现,而不一定是unity,请检查 不是那个家伙,但至少在提出问题之前先用谷歌搜索一下。这些都是谷歌最热门的搜索结果。这可能有助于以后的帖子:。您是否有代码来显示您尝试了什么?我不知道如何处理这个问题,因此我要问。我的问题有什么问题吗?我看到了确切的线索,但是,它确实使用了我在unity项目中无法使用的cocoa。我需要全局鼠标
不是那个家伙,但至少在提出问题之前先用谷歌搜索一下。这些都是谷歌最热门的搜索结果。这可能有助于以后的帖子:。您是否有代码来显示您尝试了什么?我不知道如何处理这个问题,因此我要问。我的问题有什么问题吗?我看到了确切的线索,但是,它确实使用了我在unity项目中无法使用的cocoa。我需要全局鼠标位置,而不是unity Input.mousePosition返回的位置。
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour
{
public GameObject particle;
void Update()
{
if (Input.GetButtonDown("Fire1"))
{
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if (Physics.Raycast(ray))
Instantiate(particle, transform.position, transform.rotation);
}
}
}
//the object to move
public Transform objectToMove;
void Update()
{
Vector3 mouse = Input.mousePosition;
Ray castPoint = Camera.main.ScreenPointToRay(mouse);
RaycastHit hit;
if (Physics.Raycast(castPoint, out hit, Mathf.Infinity))
{
objectToMove.transform.position = hit.point;
}
}