介绍
unity,如何让当前物体获取鼠标位置,转向鼠标在屏幕中的位置?
方法
void Update() {
// 获取鼠标在屏幕上的位置
Vector3 mousePos = Input.mousePosition;
// 将鼠标在屏幕上的位置转换为世界空间中的位置
Vector3 worldPos = Camera.main.ScreenToWorldPoint(new Vector3(mousePos.x, mousePos.y, Camera.main.transform.position.z));
// 计算物体需要朝向的方向
Vector3 direction = (worldPos - transform.position).normalized;
// 使用LookRotation方法将物体朝向鼠标的位置
transform.rotation = Quaternion.LookRotation(direction, Vector3.up);
}
void Update() {
// 获取鼠标在屏幕上的位置
Vector3 mousePos = Input.mousePosition;
// 将鼠标在屏幕上的位置转换为世界空间中的位置
Vector3 worldPos = Camera.main.ScreenToWorldPoint(new Vector3(mousePos.x, mousePos.y, Camera.main.transform.position.z));
// 计算物体需要朝向的方向
Vector3 direction = (worldPos - transform.position).normalized;
// 使用LookRotation方法将物体朝向鼠标的位置
transform.rotation = Quaternion.LookRotation(direction, Vector3.up);
}