LeapMotion 场景漫游
原理
- 适当记录手的初始位置
Vector Handpos = hand.PalmPosition
- 再将手的实时位置减去初始位置,实现相机位移
- 旋转方面,获取手的旋转值的四元数,将 x 和 z 置为 0,并将 w 限制在 (0.5,1)之间
Quaternion AARO = hand.Rotation.ToQuaternion();
获取手的 Frame
在 Update 方法中实现
Frame frame = provider.CurrentFrame;
foreach (Hand hand in frame.Hands)
{
if (hand.IsLeft)
{
}
if (hand.IsRight)
{
//移动控制
FlyControl(hand);
MyRotateManager(hand);
}
}