我目前遇到一个问题,当我的手向前/向后时,我想将游戏对象移近/远离我(HoloLens 相机)。好吧,我已经正确地实现了将对象移近/移远的逻辑,但无法通过确定手的运动来解决问题。 我正在使用 HoloToolkit 的 IManipulationHandler 接口(interface)来移动对象,这是我现在使用的主要逻辑:
void IManipulationHandler.OnManipulationUpdated(ManipulationEventData eventData)
{
transform.position = Vector3.MoveTowards(objectPosition, cameraPosition,
- (eventData.CumulativeDelta * ManipulationSpeed).z);
}
(只有当我不改变我的位置时它才能正常工作)
这是我使用的另一种逻辑:
void IManipulationHandler.OnManipulationUpdated(ManipulationEventData eventData)
{
transform.position = Vector3.MoveTowards(objectPosition, cameraPosition,
Vector3.Distance(cameraPosition, eventData.CumulativeDelta));
}
根据上述逻辑,每当我移动我的手(向前或向后)时,对象总是靠近,因为两个向量的黑白距离总是首先增加。
请帮我解决这个问题。谢谢。
注意:我想在我的手向左/向右拖动时旋转对象,并在我的手向前/向后拖动时将对象移近/移远。
最佳答案
您可以从 MixedRealityToolkit 查看 HandDraggable 脚本。
关于c# - 当手靠近/远离 HoloLens 相机时,将游戏对象移近/远离 HoloLens 相机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54568176/