【问题标题】:How to calculate the Kinect physical position, and display it in a game?如何计算 Kinect 物理位置,并在游戏中显示?
【发布时间】:2018-03-06 18:40:52
【问题描述】:

我正在实习,正在为截肢者开发一款康复游戏(目标是帮助减少幻痛)。

该游戏使用 Kinect 和 Oculus Rift,并在 Unity3D 上开发。虚拟化身像 FPS 一样显示在 Oculus 中,并借助 Kinect 跟随用户的移动。目标是肢体缺失的人可以看到自己的完整身体。 (AR稍后添加)

它已经有点功能了,但我必须改进校准。为此,我需要在虚拟世界中放置 Kinect 实际站立的标记,以便用户在佩戴 Oculus 时对其进行修复。

我没有找到足够清晰的文档(至少对我而言)关于 Kinect 发送的数据结构。我觉得我应该根据 Kinect 找到用户身体的旋转,并用它来放置标记。例如,如果用户与 Kinect 正面成 45°,我应该将标记放置在 Oculus 视线的 -45°处。说起来容易,但我不知道如何从 Kinect 数据中检索这些信息。

【问题讨论】:

    标签: c# unity3d kinect oculus


    【解决方案1】:

    根据this page,kinect 位于原点。我假设您可以从 kinect 读取用户的位置,因为您说您正确放置了头像。

    如果头像确实是由kinect放置的,那么只需将你的maker放在(0,0,0)中,这应该是kinect的位置

    【讨论】:

    • 感谢您的回答!是的,我是这么想的,但实际上是 Oculus 被放置在游戏内的 0,0,0 点。我没有这样做,在我开始做这个项目之前就已经完成了。
    • 那么我担心这取决于您的代码。但是您可以使用此信息。 kinect 将假设它被放置在 0, 0, 0 并相应地发送数据。您的代码中必须有一个地方,其中 kinect 发送的坐标被转换以匹配 oculus。找到这个地方以了解 kinect 中的一个点是如何转换的。然后将相同的函数应用于 (0, 0, 0) 以了解必须将其放置在坐标系中的位置
    • 好的,我明白了。感谢您的宝贵时间!
    • 我知道这是你的第一个问题。如果您认为这结束了话题,您可以接受答案(请参阅this link 了解原因和方式)。否则,如果您期待更多答案,您可以保持原样
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-09
    • 1970-01-01
    • 2012-04-27
    相关资源
    最近更新 更多