写一个Unity C# 脚本,将10个物体移动到相应的位置上
时间: 2024-02-21 08:58:07 浏览: 69
当然可以,下面是一个简单的 Unity C# 脚本,它可以将 10 个物体移动到相应的位置上:
```csharp
using UnityEngine;
public class MoveObjects : MonoBehaviour
{
public Transform[] objectsToMove;
public Vector3[] targetPositions;
void Start()
{
if (objectsToMove.Length == targetPositions.Length)
{
for (int i = 0; i < objectsToMove.Length; i++)
{
objectsToMove[i].position = targetPositions[i];
}
}
else
{
Debug.LogError("The length of 'objectsToMove' array and 'targetPositions' array must be the same.");
}
}
}
```
该脚本需要引用 10 个需要移动的物体和它们各自的目标位置,然后在 `Start` 函数中遍历这些物体,并将它们移动到对应的目标位置上。如果 `objectsToMove` 数组和 `targetPositions` 数组的长度不一致,则会输出错误信息。
您可以将该脚本挂在一个空的 GameObject 上,然后将需要移动的 10 个物体和它们各自的目标位置分别赋值给 `objectsToMove` 和 `targetPositions` 数组即可。需要注意的是,`objectsToMove` 数组中存储的是 `Transform` 组件,而不是 `GameObject`。这样可以直接修改物体的位置信息,而无需通过 `GameObject.transform` 属性访问。
在运行游戏时,这些物体就会自动移动到它们对应的目标位置上。
阅读全文