如何获得WMR运动控制器的旋转(或变换)?

问题描述 投票:0回答:1

有没有办法使用WMRToolkit来访问控制器的旋转?我知道一些求解器,但它们似乎专注于使用位置。作为参考,我的想法是简单地将另一个游戏对象的旋转设置为与控制器的旋转相同,这似乎是一个简单的任务。

unity3d windows-mixed-reality
1个回答
0
投票

本文档介绍了如何使用Unity API来获取运动控制器的位置和旋转。掌握手或运动控制器的姿势

另外,在Unity 2019.1中新增了XR输入映射系统,如果你使用的是2019.1或更高版本的unity,可以尝试以下代码。

bool TryGetCenterEyeFeature(out Quaternion rotation)
{
    InputDevice device = InputDevices.GetDeviceAtXRNode(XRNode.RightHand);
    if (device.isValid)
    {
        if (device.TryGetFeatureValue(CommonUsages.deviceRotation, out rotation))
            return true;
    }
    rotation = Quaternion.identity;
    return false;
}
© www.soinside.com 2019 - 2024. All rights reserved.