【发布时间】:2017-02-02 02:59:51
【问题描述】:
我目前正在努力编写一个动态脚本来获取两个对象(手)的位置游戏对象。没有错误。这些值只是没有得到更新。
这是一个在 Unity 5.5 上运行的 Oculus Rift 应用程序,带有带有 Newton 插件的最新 SDK。
public class calorieCounter : MonoBehaviour
{
public Text displayMessage;
public GameObject leftHand;
public GameObject righHand;
float distanceTravelledL = 0;
float distanceTravelledR = 0;
float distanceTravelled = 0;
Vector3 lastPosition;
Vector3 lastPositionL;
Vector3 lastPositionR;
void Start()
{
lastPositionL = leftHand.transform.position;
lastPositionR = righHand.transform.position;
lastPosition = transform.position;
}
void Update()
{
distanceTravelledL += Vector3.Distance(transform.position, lastPositionL);
distanceTravelledR += Vector3.Distance(transform.position, lastPositionR);
lastPositionL = transform.position;
lastPositionR = transform.position;
print("Left hand distance: " + distanceTravelledL);
displayMessage.text = ("L: " + distanceTravelledL);
print("Right hand Distace: " + distanceTravelledR);
print("Right hand position: " + lastPositionR);
print("Left hand position: " + lastPositionL);
displayMessage.text += ("R: " + distanceTravelledR);
}
}
【问题讨论】:
-
您确定拖到公共变量上的对象实际上是移动的对象吗? (即,它们不是围绕实际移动的手对象的静态容器对象?)
-
是的,他们正在搬家。正如我所说,它在我设置全局变量并将对象拖入之前一直有效。我尝试搜索对象但没有帮助
-
好的,我已经确定了您的代码中可能存在的错误 - 请告诉我我的评估是否准确,或者您的实施是否仍然存在问题。