请写出unity的关于点击图标摄像头自动靠近的脚本
时间: 2024-05-02 17:17:47 浏览: 18
以下是一个简单的Unity脚本,当点击一个图标时,摄像机会自动靠近该图标。
```csharp
using UnityEngine;
public class CameraZoom : MonoBehaviour
{
public Transform target;
public float zoomSpeed = 2.0f;
public float minDistance = 2.0f;
public float maxDistance = 10.0f;
private Camera cam;
private float distance;
void Start()
{
cam = GetComponent<Camera>();
distance = maxDistance;
}
void Update()
{
if (Input.GetMouseButtonDown(0))
{
Ray ray = cam.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
if (Physics.Raycast(ray, out hit))
{
if (hit.transform == target)
{
distance = Mathf.Clamp(distance - zoomSpeed, minDistance, maxDistance);
}
}
}
cam.transform.position = target.position - distance * cam.transform.forward;
}
}
```
注意:在使用此脚本之前,需要将脚本挂载到摄像机上,并将需要被点击的图标的Transform组件赋值给target变量。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)