unity 中写一个脚本,在安卓平台运行时,点击屏幕后,就从相机发射一条射线,碰撞到第一个tag为“click”的物体时打印一句输出:“停下来”
时间: 2024-03-14 14:43:46 浏览: 78
好的,以下是一个简单的示例代码实现:
```csharp
using UnityEngine;
public class ClickDetection : MonoBehaviour
{
void Update()
{
// 判断是否点击屏幕
if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Began)
{
// 从相机发射一条射线
Ray ray = Camera.main.ScreenPointToRay(Input.GetTouch(0).position);
RaycastHit hit;
// 如果射线碰撞到了tag为“click”的物体,则输出“停下来”
if (Physics.Raycast(ray, out hit) && hit.transform.CompareTag("click"))
{
Debug.Log("停下来");
}
}
}
}
```
在这个脚本中,我们使用了 Unity 的 Input 和 Physics 类来实现点击检测和射线碰撞检测。在 Update 方法中,首先判断是否有点击事件发生,如果有则从相机发射一条射线。如果射线碰撞到了 tag 为“click”的物体,则打印输出“停下来”。需要注意的是,如果有多个物体都有相同的 tag,只会输出第一个 tag 为“click”的物体。
阅读全文