using UnityEngine;
public class ArcFormation : MonoBehaviour
{
public Transform[] childObjects;
public Vector3 centerPosition;
public float radius;
public float startAngle;
public float arcLength;
void Update()
{
Camera mainCamera = Camera.main;
float angleStep = arcLength / childObjects.Length;
for (int i = 0; i < childObjects.Length; i++)
{
float angle = startAngle + i * angleStep;
float x = centerPosition.x + radius * Mathf.Cos(angle * Mathf.Deg2Rad);
float z = centerPosition.z + radius * Mathf.Sin(angle * Mathf.Deg2Rad);
int childIndex = childObjects.Length - 1 - i;
childObjects[childIndex].position = new Vector3(x, centerPosition.y, z);
// 让子物体看向相机
childObjects[childIndex].LookAt(mainCamera.transform.position);
}
}
}
08-09
08-09
08-09