[体感游戏]关于体感游戏的一些思考(五) --- 导航

news/2024/11/30 10:48:52/

正如我在第二篇博文提到的:在3D虚拟世界中导航是一项充满挑战性的工作。导航模型的实现并不难,难的地方在于设计一个可以让人感觉比较舒服,不会造成玩家总是出现感知上的困难的3D水平。我们真的生活在3D世界中吗?


我们的一生几乎都是靠双脚。我们没有和鸟类或者会飞的昆虫等同的3D体验。此外,我们还对完全自由的运动有所恐惧。想象一下行走在一个你可以往任意方向移动的丛林里,你总是要花心思去选择你该走的路,你会感觉安全吗?现在想象那里有一条路让你走,甚至是一个有大路和人行道的城市?让我们再想想第二篇博文讨论的‘On-the-rails’类型的体验,并且跟你上次去宜家的过程相比较。没错 --- 我们都喜欢有路可循的购物 微笑


但是之前我已经发过关于那些理由的博文,而且我在文中的阐述也绝对不是在声称我们应该固守静态相机或者轨道游戏。在3D虚拟世界中运动确实充满了挑战性,但它也是一个非常强悍的体验。对体感游戏来说,我们必须发明一种创新的方式来使自己保持站在电视前面的同时还能感觉到自己在运动。


乐趣 VS. 健身

在Kinect运动会和另外几个Kinect游戏中,你可以在原地双脚交替地跳动来体验走和跑。从体验上来说,这是蛮有效的,因为你感觉自己在行走。你甚至还会感觉到累。但是,如果你不是为了制造健身游戏,你得考虑找到一些方法来使用户具备一些能力。在科幻故事里,英雄的魔力之一就是能够轻易地做到一些常人认为很难或者不可能的事情。You character imagined incredible fitness should probably allow him to work miles without giving it a second thought.(译注:本句不确定)

本篇我将讨论几个行走模型。不是所有模型都被全面地测试过,但它们绝对值得讨论。

躯干倾斜 - 行走和平行移动

当用户的躯干倾斜到一定的角度的时候,便开始适当方向上的运动。要可靠地实现这个很容易,你甚至可以将其运用到侧向的平行移动。一直使用这种模式也有问题,那就是乏味和不舒服。用户得移动双脚来保持平衡,而当他变懒的时候,他会开始使用背肌并且对脊柱施加很大压力。细到关卡设计,我不推荐在用户需要大量行走的时候使用这种模式。如果你的游戏是科幻性质的,你可以用助推器作为一个很好的手段来自然地表示这种模式:一旦用户决定开动助推器,他将用身体倾斜来控制运动。

  

旋转

字面上的原地运动受制于客厅空间,但旋转却不会。除了我的二年级老师,你不会喜欢当你背对着屏幕时看到的图像。我们必须挑战两个问题:旋转之后能够保持一直面对屏幕和改变相机视觉。


一些简单的方案

  • 将躯干倾斜用于旋转而不是平行移动
  • 当用户的躯干方位超过一定的阀值的时候开始相机的自动旋转
另外一个可能性就是’ 非对称的旋转映射
作为参考,让我们将用户面对电视时定义为0度角。现在用户可以左转或右转。向右转意味着正角度,相反左转为负角度。让我们想象相机只在用户的方位从0开始变化的时候旋转而在用户的运动趋向0度角的时候停止旋转,用户就可以旋转到任何方向并且在他回到面对屏幕的时候仍然维持他的虚拟方位。你也可以在用户从中心往“外”旋转的时候乘一个系数并且在往回旋的时候乘一个小点的系数 --- 这种伎俩一样能奏效,只要系数是非对称的。


原地行走
原地行走可以用来做往前的行走。如果那样太乏味(乐趣还是健身?),你可以用原地行走来触发角色的跑动(这样用户就不用总是在踏步,而一旦他真的踏步了,就可以开开心地看到他的avatar开始在跑)
跑动实际上是通过双脚的上下运动(原地踏步的方式)来做到的。要往前跑,用户必须交替抬脚(左-右-左-。。。)
其它可选项:
为了快速撤退,用户可以踏同一只脚(左 - 左 - 左 - 。。。)
原地行走,单脚向前另一只脚向后,以旋转avatar。
   
手势行走
自然行走的时候,我们会摆动双手来维持平衡。我们可以利用这个来模拟行走,而不是侦测脚的运动。这种模式和很多其它高级的根据上下文的手势判断在Activate3D的ICM Demo中生动地展示了出来,可从OpenNI竞技场下载: http://arena.openni.org/OpenNIArena/Applications/ViewApp.aspx?app_id=570

结语:
正如从开篇到本文所提的,导航是一个巨大的挑战。有些用户可能喜欢其中一个模式而不喜欢别的。比如,用户可能会觉得躯干倾斜模式显得直观自然,但不会喜欢太长时间地使用。
有时候,你可以考虑将几个技术级联在一起,并允许多种方式一起工作:
  • 倾斜来行走,原地行走来跑动
  • 左右两侧的倾斜和非对称的躯干旋转
  • 行走到游戏区域的边界来触发自动行走
  • 用倾斜或者原地运动来开始/结束自动行走,而不是叫用户去维持行走


----------------------------------------------------------------------------------------------------------------------------------

译注:这是原作者最近在blogspot上的系列文章《Beyond casual: thoughts about gesture gaming》的译文,为方便中文读者而转过来的。可能的话请尽量阅读原文,原文写得比较诙谐。有翻译不当或错误的地方欢迎大家指正,谢谢阅读。

原文链接:http://michagalor.blogspot.com/2012/02/part-5-navigation.html

-----------------------------------------------------------------------------------------------------------------------------------

关于作者 Micha Galor

“当被问到怎么定义我自己的时候,我总是很困惑。我的工作包括软件工程,研究,设计和管理创新的投入。某一天我会简单地回答:一个发明家”

Micha Galor是PrimeSense公司(Kinect的3D传感技术提供商)应用和用户体验组的经理。他的团队专注于自然交互研究,包括对一些可实际运行的概念和展示的原型化,定义未来的人机交互语言等令人兴奋的工作。在PrimeSense之前,Micha领导Zoran(多媒体芯片商)的数码摄影团队,开发了应用在几款热销的拍照手机中的数字图像技术。Micha和他的太太以及两个小孩一起生活在以色列的特拉维夫。


http://www.ppmy.cn/news/368578.html

相关文章

基于手机摄像头设计一款捕捉玩家上半身的体感运动游戏

基于手机摄像头设计一款捕捉玩家上半身的体感运动游戏 以下是一些可能的例子: 手势识别:通过识别玩家手部的动态姿势,例如张开手掌,扇动手臂等等,来控制游戏中的角色进行各种操作。 肩膀运动:利用玩家肩膀…

【C++/嵌入式笔试面试八股】二、21.分层模型 | HTTP

分层模型 01.画出OSI和TCP/IP协议栈的对应关系 对应关系记忆2113 02.什么是OSI七层模型?每层列举2个协议。❤️ OSI七层模型及其包含的协议如下 物理层: 传输单位为bit 功能:通过物理媒介透明的传输比特流,确定机械及电气规范 主要包括的协议为:IEE802.3 CLOCK RJ45 数据链…

体感游戏

http://www.cnkinect.com/

Java 中导入带图片的 Excel

在Java中使用EasyExcel库导入带有图片的Excel文件可以通过以下步骤完成&#xff1a; 添加依赖&#xff1a;首先&#xff0c;在您的Java项目中添加EasyExcel库的依赖项。您可以在Maven项目的pom.xml文件中添加以下依赖项&#xff1a; <dependency><groupId>com.ali…

诺基亚5800随心与LG GW620非常贴身竞争

诺基亚5800随心与LG GW620非常贴身竞争 诺基亚5800随心而LG GW620是被提供了大量的复杂的功能&#xff0c;到今天用户两款手机。这两个小工具有很多相似之处&#xff0c;以及不同点。 毫无疑问&#xff0c;手机已经成为大多数人的日常需求。一些手机品牌在手机的舞台上&#xf…

雷锋微视点:历时五年,塞班终被诺基亚始乱终弃

自2000年全球第一款基于Symbian系统的手机推出&#xff0c;Symbian系统逐渐建立了其在智能手机市场上的霸主地位。至2010年&#xff0c;各大手机厂商相继宣布抛弃Symbian平台&#xff0c;转战Android市场&#xff0c;此时仍与Symbian牵手的唯有Nokia一家。 自08年Nokia就收购了…

CC00021.LBCHAC——|NASSANDAS.V1|

一、存储分类-网络拓扑(存储和使用存储的服务设备的连接状态&#xff1b;存储连接方法分类) 1、存储相关名词 2、存储分类&#xff0c;网络拓扑 ### --- 存储分类&#xff0c;网络拓扑~~~ NAS&#xff1a;网络存储 ~~~ SAN&#xff1a;网络存储 ~~~ DAS&#xff1a…

[导入]笔记本”终极“散热方案

笔记本老了&#xff0c;三年了&#xff0c;电池不太行了&#xff0c;散热量也大。解决电池问题首先是能耗的问题&#xff0c;我把能够卸下来的光驱和读卡器都拆了&#xff0c;这下留了一个大长孔&#xff0c;很好的是这样散热问题也得到了解决&#xff0c;光驱的大孔和读卡器那…