C# 从平均值获取相机位置
我试着让一个摄像头围绕一组球体(每个玩家都可以通过“垂直”和“水平”来控制)。我试着使用球体中的相同代码来移动摄像头(进行一些调整)。我知道需要移除rb,因为摄像头不是刚体,我只是不知道如何操作C# 从平均值获取相机位置,c#,unity3d,C#,Unity3d,我试着让一个摄像头围绕一组球体(每个玩家都可以通过“垂直”和“水平”来控制)。我试着使用球体中的相同代码来移动摄像头(进行一些调整)。我知道需要移除rb,因为摄像头不是刚体,我只是不知道如何操作 using UnityEngine; using System.Collections; public class CameraController : MonoBehaviour { public float speed; private Rigidbody rb; void FixedUpd
using UnityEngine;
using System.Collections;
public class CameraController : MonoBehaviour
{
public float speed;
private Rigidbody rb;
void FixedUpdate()
{
float moveHorizontal = Input.GetAxis("Horizontal");
float moveHorizontal2 = Input.GetAxis("Horizontal2");
float moveHorizontal3 = Input.GetAxis("Horizontal3");
float moveHorizontal4 = Input.GetAxis("Horizontal4");
float moveVertical = Input.GetAxis("Vertical");
float moveVertical2 = Input.GetAxis("Vertical2");
float moveVertical3 = Input.GetAxis("Vertical3");
float moveVertical4 = Input.GetAxis("Vertical4");
Vector3 movement = new Vector3(((moveHorizontal+moveHorizontal2+moveHorizontal3+moveHorizontal4)/4), 0.0f, ((moveVertical+moveVertical2+moveVertical3+moveVertical4)/4));
rb.AddForce(movement * speed);
}
}
我不完全确定这个问题是什么。根据标题,我建议你查找向量的平均值 如果我有水平向量和垂直向量:例如这两个
3, 3
3, 3
平均值的计算方法与任何整数的计算方法相同
3 3
+3 3
=6 6
然后除以总计数(2)
平均是3,3
如果我有
1, 4
2, 7
-5, 33
5, 4
= 3, 48
Divide by 4:
0.75 (depends on accuracy, round to 1?)
1, 12
这应该会给你一个向量,在你手头的向量的“中间”周围。如果你有三个(比如)位置,它们都是向量3。要找到中间,你只需这样做Vector3 middle=(a+b+c)/3f;