写一段unity旋转式选择人物的代码 用C#语言
时间: 2023-06-18 12:07:27 浏览: 223
公告牌自旋转代码(水平面)(unity3D C#)
以下是一个简单的Unity C#脚本,用于旋转选择人物:
```csharp
using UnityEngine;
public class RotateCharacterSelection : MonoBehaviour
{
public Transform[] characters; // 存储人物模型的Transform组件
public float rotationSpeed = 5f; // 旋转速度
private int selectedCharacterIndex = 0; // 当前选择人物的索引
void Update()
{
// 获取水平输入
float horizontalInput = Input.GetAxis("Horizontal");
// 计算旋转角度
float rotationAmount = horizontalInput * rotationSpeed * Time.deltaTime;
// 旋转选择人物
transform.Rotate(Vector3.up, rotationAmount);
// 检查是否按下选择键
if (Input.GetKeyDown(KeyCode.Space))
{
// 切换到下一个人物
selectedCharacterIndex++;
// 如果选择的人物索引超过了数组上限,重置为0
if (selectedCharacterIndex >= characters.Length)
{
selectedCharacterIndex = 0;
}
// 将选择的人物面向摄像机
Vector3 cameraPosition = Camera.main.transform.position;
Vector3 lookAtPosition = new Vector3(cameraPosition.x, transform.position.y, cameraPosition.z);
transform.LookAt(lookAtPosition);
}
}
}
```
此脚本假设您已经将人物模型存储在场景中,并将它们的Transform组件分配给“characters”数组。通过水平输入旋转选择人物,并通过按下空格键循环切换到下一个人物。在切换到下一个人物时,选择的人物将面向摄像机。
阅读全文