使用Unity的Input类获取鼠标轨迹,并在每个鼠标位置上生成一个球体。
时间: 2024-05-16 11:12:38 浏览: 113
首先,在Unity中创建一个空物体作为主控制器,并将以下C#脚本添加到该物体上:
```csharp
using UnityEngine;
public class MouseTracker : MonoBehaviour
{
public GameObject spherePrefab; // 用于生成球体的预制体
void Update()
{
if (Input.GetMouseButton(0)) // 如果鼠标左键按下
{
Vector3 mousePosition = Input.mousePosition; // 获取鼠标在屏幕上的位置
mousePosition.z = 10; // 将鼠标位置的Z轴设置为10,使其在摄像机前方
Vector3 worldPosition = Camera.main.ScreenToWorldPoint(mousePosition); // 将屏幕坐标转换为世界坐标
GameObject sphere = Instantiate(spherePrefab, worldPosition, Quaternion.identity); // 在鼠标位置生成球体
Destroy(sphere, 2f); // 2秒后销毁球体
}
}
}
```
然后,在场景中创建一个球体,并将其作为预制体。将此预制体分配给MouseTracker脚本中的spherePrefab变量。
现在,当鼠标左键按下时,将在当前鼠标位置生成一个球体,并在2秒后销毁。
阅读全文