gpt4 book ai didi

kinect - NUI/触摸界面的一般注意事项

转载 作者:行者123 更新时间:2023-12-04 21:23:40 27 4
gpt4 key购买 nike

在过去的几个月里,我一直在研究为各种软件音乐合成器开发基于 Kinect 的多点触控界面。

我提出的总体策略是以编程方式或(如果可能)算法方式创建对象来表示软合成器的各种控制。这些应该有;

  • X 位置
  • Y位置
  • 高度
  • 宽度
  • MIDI 输出 channel
  • MIDI 数据缩放器(将 x-y 坐标转换为 MIDI 值)

  • 我为算法创建考虑的 2 个策略是 XML 描述和以某种方式将内容从屏幕上拉出来(即给定一个正在运行的程序,找到所有控件的 xycoords)。我不知道如何处理第二个,这就是为什么我用这种特定的技术语言来表达它;)。我可以做一些中间解决方案,比如使用鼠标点击控件的角落来生成一个 xml 文件。我可以做的另一件事,我经常在 Flash 应用程序中看到,是将屏幕大小放入一个变量中,并使用数学方法根据屏幕大小构建所有界面对象。请注意,没有必要使对象与屏幕控件的大小相同,或者表示所有屏幕对象(有些只是指示器,而不是交互式控件)

    其他考虑;

    给定(目前)两组 X/Y 坐标作为输入(左手和右手),我使用它们的最佳选择是什么?我的第一直觉是/是创建某种焦点测试,如果 x/y 坐标落在界面对象的范围内,该对象将变为事件状态,如果它们在一段时间内落在其他一些较小的范围之外,则变为非事件状态。我找到的廉价解决方案是使用左手作为指针/选择器,使用右手作为 Controller ,但似乎我可以做更多。我有一些可以解决的手势解决方案(隐藏的马尔可夫链)。并不是说他们很容易上类,确切地说,但如果有足够的激励,我可以看到自己做的事情。

    所以,总结一下,问题是
  • 代表界面(因为默认界面总是需要鼠标输入)
  • 选择控件
  • 使用两组 x/y 坐标(旋转/连续 Controller )操纵它,或者在开关的情况下,最好使用手势来切换它而不给予/获取焦点。

  • 非常感谢任何评论,特别是来自在多点触控 io/NUI 工作/正在工作的人的评论。现有项目和/或一些好的阅读 Material (书籍、网站等)的链接将是一个很大的帮助。

    最佳答案

    哇这里有很多东西。我在 Microsoft 期间研究了很多 NUI 的东西,所以让我们看看我们能做些什么......

    但首先,我需要消除这种讨厌的情绪:您说“基于 Kinect 的多点触控”。那是错误的。 Kinect 本质上与触摸无关(这就是为什么您有“选择控件”挑战的原因)。触摸、 body 跟踪和鼠标所需的 UI 考虑类型完全不同。例如,在触摸 UI 中,您必须非常小心地根据屏幕尺寸/分辨率/DPI 调整大小……无论屏幕如何,手指的物理尺寸始终相同,人们的物理精度也相同,因此您想要您的按钮和类似控件的物理尺寸始终大致相同。研究发现 3/4 英寸是触摸屏按钮的最佳位置。这对 Kinect 来说并不是什么大问题,因为你没有直接触摸任何东西——准确度不是由手指大小决定的,而是由传感器准确度和用户精确控制挑剔和滞后的虚拟光标的能力决定的。

    如果您花时间玩 Kinect 游戏,很快就会发现有 4 种交互范式。
    1) 基于姿势的命令。用户敲击并保持姿势以调用某些应用程序范围或命令(通常是调出菜单)
    2) 悬停按钮。用户将虚拟光标移动到按钮上并保持一定时间以选择按钮
    3) 基于滑动的导航和选择。用户向一个方向挥手滚动和列表,向另一个方向从列表中选择
    4) 语音命令。用户只需说出一个命令。

    业余爱好者还尝试过其他类似鼠标的想法(尚未在实际游戏中看到这些想法),但坦率地说,它们很糟糕:1)用一只手控制光标,另一只手“单击”光标所在的位置或 2)使用 z - 手的坐标来确定是否“点击”

    我不清楚您是否询问如何使某些现有的鼠标小部件与 Kinect 配合使用。如果是这样,网络上有一些项目会向您展示如何使用 Kinect 输入控制鼠标,但这很蹩脚。这听起来可能很酷,但您实际上根本没有利用设备最擅长的功能。

    如果我正在构建一个音乐合成器,我会专注于方法#3 - 滑动。类似舞蹈中心的东西。屏幕左侧显示 MIDI Controller 列表,并带有一些小的可视化状态指示。让用户用左手滑动以滚动浏览并从此列表中选择一个 Controller 。屏幕右侧显示您如何在用户 body 前方某个平面内跟踪用户的右手。现在,您可以让他们同时使用双手,立即提供有关如何解释每只手的视觉反馈,而不要求它们非常精确。

    ps...我还想对 Josh Blake 即将出版的 NUI 书大喊大叫。这是好东西。如果你真的想掌握这个领域,去订购一份:) http://www.manning.com/blake/

    关于kinect - NUI/触摸界面的一般注意事项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7463002/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com