Project Caliper:目标是打造最佳VR手柄

news2024/11/18 1:45:16

一提到Valve Index,人们很快联想到它的五指追踪VR手柄,这款支持手势追踪和体感反馈的高端VR手柄,是市面上最强大的C端VR手柄之一。尽管如此,它依然存在许多缺陷,比如配备的小型摇杆质量不佳、集成式设计不利于维修、人体工学不够理想等等。

为了改善Index手柄,VR爱好者Rob Cole决心改进VR手柄交互,于是开发了一款参考Valve Index VR的VR手柄:Project Caliper,旨在提升VR手柄的人体工学和模块化设计。据悉,这是一款基于Tundra HDK定位技术的SteamVR手柄,它的重点在于人体工学和模块化设计,优化维修方式和耐用性。

Cole公布了Caliper从零开始的详细设计,他表示:原本的计划是开发一个可运行的手柄原型,然后通过众筹等方式量产发售,不过由于疫情对于供应链和制造时长的影响,量产并不实际。而且批量购买LG电视遥控器的成本就达到60英镑/单元,经过成本预算后,发现成立公司卖Caliper手柄并不赚钱,于是决定将手柄的设计公开。

他还表示:开发硬件会消耗大量成本,也许在赚到一百万美元之前,先准备好两百万美元来开发硬件。尤其是VR手柄,像Index这样配备复杂传感器的设计,每对售价259英镑似乎利润并不多。

关于XRCaliper

据了解,Cole在业余时间,针对VR手柄的追踪、人体工学、体感、机械、软件等方面,开发了多款原型设计。此外,还通过Steamworks项目签约为SteamVR开发者,基于SteamVR定位方案开发SteamVR游戏或VR手柄。

为了测试SteamVR手柄定位,Cole采用了Tundra硬件开发套件(HDK),并用有线连接的方式测试单个基站定位目标的效果,或用无线连接的方式来测试两个基站定位手柄。

接下来,Cole从头开始设计VR手柄的外观,他想要尝试一些与现有产品不同的设计,比如采用枪柄外形的手柄。而VR手柄上的按钮、扳机、触控板、摇杆等输入元件,以及微型控制器,则来自于已量产的游戏手柄,比如Thrustmaster X Pro E-Swap等等。Caliper的设计中还包括体感马达、发光二极管等元件。

其中,Thrustmaster X Pro E-Swap是PlayStation的第三方游戏手柄,其特点是采用模块化设计,为用户提供低成本的自定义升级套件(方向键、侧把手、摇杆、触控板等等),以及不同色彩、纹理和样式的配件。同时Thrustmaster还提供软件,支持按钮映射、E-Swap输入设置、摇杆完全调整等功能。如果未来商用的VR手柄也能支持这种模块化设计,可能会带来各种有趣的用法。

为了调试HDK在手柄上的效果,Cole首先在枪柄上固定了一个T型定位传感器,来代替具体的手柄面板。

Caliper原型还配备了一大块可充电锂电池,电池的重量平衡了手柄T型定位杆的重量,同时模拟了手枪的重量感。Cole认为,这种酷似手枪的VR手柄将很适合《Pistol Whip》等VR射击游戏。

在Caliper握柄内部,配备了一大块体感马达,连接锂电池后,可实现足够长的续航。在测试传感器定位和3D VR同步阶段,Caliper手柄仅配备一个扳机,采用简单的输入方式。

立方体VR“枪手柄”

除了T字手柄原型外,Cole还设计了一部分为立方体的手柄原型Guncube,用来追踪立方体对象。尽管如此,Cole意识到还需要加入更多传感器,以覆盖更多追踪角度,提升6DoF定位的准确性。SteamVR提供的课程中也推荐了VR手柄传感器的一些布局,比如用不同角度的小平面来分解同一个平面,同一个平面上的传感器间距尽量分开,好从多个角度捕捉目标,覆盖更多追踪范围。

左边为Tundra HDK中的Triad TS4112光学传感器,其中反光的黑色区域为“传感器窗口”,负责接收SteamVR基站发射的激光定位信号。

Cole表示:在测试定位追踪时,传感器位于VR手柄的外部,而在量产版本中,传感器的光学窗口采用特殊的塑料滤片,特点是允许激光通过,同时尽可能减少可见光和反射光的影响。

除了物理手柄原型外,Cole还利用免费开源工具OpenSCAD为Guncube设计了3D模型,其中包括立方体定位模块,以及传感器布局,而握柄部位则采用掩膜将其与传感器分开。接着,使用SteamVR模拟工具,来分析最佳的传感器布局设计。

据了解,通常Tundra HDK配备25个传感器通道,Cole使用的HDK缺少一个传感器,因此只有24个。而在Guncube原型中,Cole只使用了其中8个传感器,以简化测试流程。

在模拟软件工具中,你可以查看传感器捕捉到的动态距离数据,VR手柄模型,活跃的传感器数量,初始姿态,旋转和平移等信息,如果大多数传感器被遮挡,VR定位模拟会回退到基于IMU的3DoF模式。

然后,Cole在OpenSCAD中,将模拟手柄上的传感器与实际手柄原型上的传感器进行匹配和对齐,并使用HTC Vive手柄的3D模型来校正Guncube模型的方向。

手柄模型设计

除了Guncube外,还开发了各种不同类型的手柄模型,这些手柄的材质采用木头、热成型塑料,或是将二者结合。此外,还探索了各种不同形状、体积,比如直握柄、左右手不同的握柄、弯曲握柄、模块化握柄,还参考了Index手柄和Vive手柄的握柄设计。

接着,Cole在这些VR手柄原型中加入Thrustmaster手柄上拆下的控制模块,比如A/B按钮、开关按钮、扳机。有趣的是,VR手柄的控制模块和摇杆面板上配备了可调节滑块,允许用户独立调整每个控制元件的相对距离。也就是说,在VR手柄上借鉴Thrustmaster灵活的模块化设计。

不过,考虑到每个人手的大小不同,开发者可以通过软件来调整VR手柄的渲染模型,将VR中虚拟手和手柄按钮交互的动作与实际对齐。

尝试Valve Index手柄设计

与大多数VR手柄相比,Valve Index手柄的特点是支持五指追踪,用户即使不用手指握住手柄也能实现VR交互,而手柄则通过绑带固定在手掌/手背上。

Caliper手柄的握柄部位尝试了多种设计,包括贴合特定手型的异形、偏离中心的椭圆形,其中椭圆形的握柄可以通过上下颠倒来适应不同的手型。而且,还尝试了不同的绑带、固定板、握柄、输入元件,还设计了垂直使用的握柄,以及倾斜的握柄。

体感反馈部分,据Cole称,Caliper手柄配备的大马达在全功率下最大扭矩额定值为15纳米,而小马达最大扭矩为3纳米,全功率运行两个大马达会产生较明显的体感,可能会让你产生锻炼、战斗时的动感。

Caliper手柄的绑带上也配备微型马达,模拟手在震动的体感/触觉。接下来,还可以加入线性马达(LRA)或压电体感套件。

为什么叫Caliper

Caliper的中文直译为卡尺,这也是Cole在职业生涯中多次使用的一种测量设备。许多类型的卡尺,可以读取刻度尺、刻度盘、数字显示器的测量值,而另外一些卡尺像罗盘一样简单,没有刻度,只有向内、向外的点。

Cole表示:给VR手柄起名卡尺的原因是,它支持完整的调节功能,可测量用户的手掌大小,并据此调整合适的体验感,就像是卡尺一样可灵活调整。同时,这种设计也在现有的VR手柄基础上带来两大升级:

1,适用于不同手掌的人体工学优化

据了解,Cole希望通过Caliper手柄来解决VR玩家在《Pavlov》等射击游戏中的体验,他表示:如果VR手柄舒适性不好,那么在VR射击游戏中反复扣动扳机会引起不适吗?从长期来看,是否会导致重复性劳损?这些问题,能否通过模块化或可调节设计来解决呢?

此外,Cole也曾考虑可调节的扳机位置、摇杆和握柄之间的距离、独立调节摇杆和扳机、可更换尺寸的手柄主体、不同形状的扳机盖、不同纹理/质地的握柄、左右手柄可独立调节的设计等等。

2,模块化输入元件、减少VR停机时间

Cole表示:由于Index手柄未采用模块化设计,在拥有该手柄的2年保修期间,官方已经给我更换了11对。实际上,如果VR手柄采用可替换的模块化元件,那么维修将会更简单、成本更低,也会避免产生电子垃圾,以免浪费。

另外,考虑到Index产品缺货的情况,每次等待更换的新手柄,都需要好几个星期时间,而在这期间VR头显就闲置了。其实,Index用户可以自己替换摇杆,但这会破坏摇杆的电容感应功能。

为什么Index手柄总需要送修

Cole表示:我的Index手柄总出问题,尤其是在玩《In Death》、《Boneworks》、《Pavlov》等VR射击游戏时,对扳机和摇杆的损害较大,一些时候握柄也会受影响。为了避免扳机等常用的按键磨损,Cole曾经尝试重新设置VR手柄按键映射,不过这种方式还是影响游戏体验的流畅性。

为了提升VR手柄、按键的耐用性,Cole总结出三点需要优化的问题:

1,Index手柄质量不理想

作为首批收到Valve Index的用户,Cole在拿到Index手柄后发现尽管它看起来很结实,外观设计精致,但A/B按钮和扳机不够固定,触碰的时候有点摇晃,不太稳。Index采用小摇杆和小型触控板混合的设计,比Vive手柄的大触控板更好用,但并没有Xbox、PS 4官方手柄的摇杆结实、精准。实际上,最初Index手柄设计采用了大触控板,后来才决定加入摇杆。

相比之下,Oculus VR手柄由Xbox 360手柄背后团队Carbon Design设计,质量更好一些。

在高负载的VR射击游戏中,小摇杆更容易磨损(受到电位计的物理限制),耐用性不如正常尺寸的大摇杆。熟悉任天堂Switch的人都知道,Switch游戏常用摇杆来移动,而其Joy-Con手柄上采用的是小摇杆,因此很容易快速磨损,并导致漂移或摇杆故障。

为了避免上述问题,Caliper手柄采用Thrustmaster S6的大摇杆,在VR射击游戏等场景中更耐用。而未来,也许Index手柄可以采用更大的摇杆来提升耐用性,不过这可能会牺牲触控板的位置。

2,按键布局不合理

Index手柄面板的按键紧凑,在使用时通常需要反复偏转拇指,长时间下来体验感不舒适,容易造成拇指疲劳,而且也可能导致过度操作,加速电位计模块的磨损。

经过实际的模拟体验,Cole发现,Index手柄上的摇杆如果从边缘移动到中央,更符合人体工学,而且还可以将触控板放在靠边的位置。

3,不适合手劲大的用户

对于一些握力大的成年人来讲,手柄的耐用性更加重要。一些《Beat Saber》玩家就反馈,玩这种VR节奏游戏常常损伤手柄。在VR射击游戏中,你常常会扣动扳机来开枪,对于Index手柄来讲,长期进行这样的动作,通常会引起扳机盖变形,可能会产生错位,并且与手柄框架产生摩擦甚至卡住,失去原来的灵活性。

Cole表示:考虑到Index手柄上扳机的位置,通常用户会从侧面给扳机盖施压,而不是直接触发扳机的弹簧,磨损更大,因此扳机盖需要采用更加坚固的材质,避免侧面压力造成弯曲。

经过测量,成年男性在使用Index手柄时,可能会施加40-50公斤的握力。VR手柄的按键、摇杆至少能承受长时间用力使用的磨损,或是提供可替换的元件,以方便维修。

于是,Caliper采用了从内部加固的特殊形状扳机盖,而且采用可拆卸设计,允许用户更换不同尺寸、形状、材料的扳机盖。除此之外,Caliper手柄上的整个控制模组和扳机模组都可以实现快速安装和拆卸,握柄的盖也可以更换。

有趣的是,Caliper手柄上配备六角螺栓,可调整包括摇杆在内的控制模组的角度、距离,以适应不同的手型。而接下来,Cole还将继续优化定位环和调整模块的布线、升级绑带设计、加入体感模块。参考:Skarredghost

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/349955.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

算法问题——排序算法问题

摘要 查找和排序算法是算法的入门知识,其经典思想可以用于很多算法当中。因为其实现代码较短,应用较常见。所以在面试中经常会问到排序算法及其相关的问题。但万变不离其宗,只要熟悉了思想,灵活运用也不是难事。一般在面试中最常…

布林线(BOLL)计算公式详解,开口收口代表什么

布林带,英文名称BOLL,是John Bollinger在上世纪八十年代创建的,由中轨、上轨、下轨三条线组成。 一、布林线计算公式详解 布林线中轨是简单移动平均线,一般软件上自带的布林带中轨是20日均线,上轨是中轨加上2个标准差…

Spring 系列之FrameWork

Spring 系列文章 文章目录Spring 系列文章前言一、Spring 介绍二、Spring 架构特征三、Spring 优势四、Spring 体系结构五、IOC 控制反转1. 概念引入2. 原理分析六、Bean 管理1. 介绍2. 管理的内容3. Bean 管理方式1. XML实现DI 赋值2. Bean生命周期1. 测试生命周期2. 后置处理…

RuoYi-Vue搭建(若依)

项目简介 RuoYi-Vue基于SpringBootVue前后端分离的Java快速开发框架1.前端采用Vue、Element UI2.后端采用Spring Boot、Spring Security、Redis & Jwt3.权限认证使用Jwt,支持多终端认证系统4.支持加载动态权限菜单,多方式轻松权限控制5.高效率开发&a…

27岁想转行IT,还来得及吗?

来不来得及不还是看你自身的意愿和条件,这个问题要问你自己吧! 每个人的能力、看法都不同。面对类似的问题,很多人会把侧重点放在IT上,或者27岁上面。那么我们试着换一个方式来问呢:什么时候适合转行,有哪些…

1.PostgreSQL

文章目录LIMITWITH 和RECURSIVEPostgreSQL 约束PostgreSQL AUTO INCREMENT(自动增长)PostgreSQL PRIVILEGES(权限)GRANT语法LIMIT SELECT * FROM COMPANY LIMIT 3 OFFSET 2;WITH 和RECURSIVE WITH RECURSIVE t(a,b) AS (VALUES (…

每日学术速递2.16

CV - 计算机视觉 | ML - 机器学习 | RL - 强化学习 | NLP 自然语言处理 Subjects: cs.CV 1.Efficient Teacher: Semi-Supervised Object Detection for YOLOv5 标题:高效教师:YOLOv5 的半监督目标检测 作者:Bowen Xu, Mingtao Chen, Wen…

用ChatGPT来预测2023美国大学生数学建模赛题以及高分攻略

一.2023年美赛 2023年美赛将于2023年2月17-21日举行,将会在北京时间:2023年2月 21日,上午10:00前提交论文。 二.用ChatGPT来预测2023美国大学生数学建模赛题 2.1预测一下会有什么类型的题目 答: 由于我是一个人工…

AcWing语法基础课笔记 第五章 C++中的字符串

第五章 C中的字符串 字符串是计算机与人类沟通的重要手段。 ——闫学灿 字符与整数的联系——ASCII码 每个常用字符都对应一个-128~127的数字,二者之间可以相互转化: 常用ASCII值:’A’-‘Z’ 是65~90,’a’-‘z’…

【docker知识】DockerFile语法 2:构造指令

1官方文档:Dockerfile reference | Docker Documentation 一、说明 我们将以HelloWorld案例的方法,由浅入深地理解DockerFile指令,并生成自己的镜像。为了避免冗长的官网文章污染您的视线,这里将重要的,常见的指令…

Springcloud-配置中心config

一、添加依赖<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-config-server</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId&…

【大数据】HADOOP-YARN容量调度器多队列配置详解实战

简介 Capacity调度器具有以下的几个特性&#xff1a; 层次化的队列设计&#xff0c;这种层次化的队列设计保证了子队列可以使用父队列设置的全部资源。这样通过层次化的管理&#xff0c;更容易合理分配和限制资源的使用。容量保证&#xff0c;队列上都会设置一个资源的占比&a…

数据分析与SAS学习笔记4

INPUT语句&#xff1a;格式修饰符&#xff1a; “:” 修饰符。表示从下一个非空格列读入数据&#xff0c;直到:1 遇到再下一个空格列&#xff1b; 2 读到预先定义的变量长度&#xff1b; 3 数据行结束。哪个先出现就在哪儿结束。 “&” 修饰符。表示从下一个非空格列读入…

分享我从功能测试转型到测试开发的真实故事

由于这段时间我面试了很多家公司&#xff0c;也经历了之前公司的不愉快。所以我想写一篇文章来分享一下自己的面试体会。希望能对我在之后的工作或者面试中有一些帮助&#xff0c;也希望能帮助到正在找工作的你。 找工作 我们总是草率地进入一个自己不了解的公司工作&#xf…

【C语言】web后端 CGI

web后端 CGI 一、cgi的学习 cgi通用网关接口 是web服务器主机提供信息服务的标准接口。通过CGI接口&#xff0c;web服务器就能获取客户端提交的信息&#xff0c;转交给服务器端端CGI程序进行处理&#xff0c;最后返回结果给客户端。 服务器和CGI程序之间通过 stdin/stdout 标准…

Python学习-----函数3.0(嵌套函数、闭包、装饰器)

目录 1.函数嵌套 2.闭包 3.装饰器 这一节&#xff0c;我会详细Python中讲解函数的进阶内容&#xff0c;包括嵌套函数、闭包和装饰器。一起来学习吧&#xff01;&#xff01;&#xff01; 1.函数嵌套 概念&#xff1a;函数里面再定义一个函数 作用&#xff1a;当我们在一个多…

Jenkins 基于Kubernetes 弹性构建池

流程&#xff1a;创建Jenkins Agent&#xff1b;获取Jenkins Agent的参数&#xff1b;渲染yaml模板&#xff1b;调用K8s API在固定的NS中创建一个Pod&#xff1b;运行Jenkins pipeline到agent&#xff1b;创建Agentimport hudson.model.Node.Mode import hudson.slaves.* impor…

学Python不会不知道NumPy计算包吧,带你五分钟看懂NumPy计算包

从今天我们就开始进入 Python 数据分析工具的教程。 前段时间数据分析和Python都讲了一点点&#xff0c;但是Python的数据库&#xff0c;讲的少了点&#xff0c;所以接下来就讲讲这些重要的常用数据库吧&#xff01;&#xff01;&#xff01; Python 数据分析绝对绕不过的四个…

数据库常用命令

文章目录1. 数据库操作命令1.进入数据库2.查看数据库列表信息3.查看数据库中的数据表信息2.SQL语句命令1. 创建数据表2. 基本查询语句3. SQL排序4. SQL分组统计5. 分页查询6. 多表查询7.自关联查询8.子查询1. 数据库操作命令 1.进入数据库 mysql -uroot -p2.查看数据库列表信…

PDF怎么转换成Word?两种PDF免费转Word方法推荐

不知道你们有没有发现&#xff0c;我们在网上下载的很多资料都是PDF格式的&#xff0c;尽管PDF文件也可以通过专门的PDF编辑器来编辑&#xff0c;但是PDF文档作为版式文档&#xff0c;编辑起来还是存在很多局限性&#xff0c;所有当我们需要大量编辑修改文档的时候&#xff0c;…