Project Caliper:目标是打造最佳VR手柄
一提到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
相关文章:
Project Caliper:目标是打造最佳VR手柄
一提到Valve Index,人们很快联想到它的五指追踪VR手柄,这款支持手势追踪和体感反馈的高端VR手柄,是市面上最强大的C端VR手柄之一。尽管如此,它依然存在许多缺陷,比如配备的小型摇杆质量不佳、集成式设计不利于维修、人…...
自动驾驶:BEV开山之作LSS(lift,splat,shoot)原理代码串讲
自动驾驶:BEV开山之作LSS(lift,splat,shoot)原理代码串讲前言Lift参数创建视锥CamEncodeSplat转换视锥坐标系Voxel Pooling总结前言 目前在自动驾驶领域,比较火的一类研究方向是基于采集到的环视图像信息,去构建BEV视角…...
C# 如何实现对“属性”的扩展
目录一、为什么要扩展属性二、如何做?一、为什么要扩展属性 属性是一个类的特征,随着开发的不断升级,这种特征可能在一直变化,有时候为了向下兼容,一般属性的数量都是直接递增的。 例如:一个Person类&…...
EBS 物料属性 先后台对应关系 MTL_SYSTEM_ITEMS_B
Introductionweb The basic table mtl_system_items_b is the basic table of item in ERP system and there are a lot of columns,but I don’t know used of each column,particularly the column like %_flag. The reason of general exception may be because the ‘%_fl…...
MYSQL数据库-主从复制(原理及搭建)
文章目录1 概述2 原理3 搭建3.1 主库配置3.2 从库配置1 概述 主从复制是指将主数据库的DDL和 DML操作通过二进制日志传到从库服务器中,然后在从库上对这些日志重新执行(也叫重做),从而使得从库和主库的数据保持同步。 MySQL支持一台主库同时向多台从库进…...
3GPP-NR Band25标准定义频点和信道(3GPP V17.7.0 (2022-12))
Reference test frequencies for NR operating band n25 Table 4.3.1.1.1.25-1: Test frequencies for NRoperating band n25 and SCS 15 kHz CBW [MHz]carrierBandwidth...
微信小程序 之 原生开发
目录 一、前期预备 1. 预备知识 2. 注册账号 - 申请AppID 3. 下载小程序开发工具 4. 小程序项目结构 5. 小程序的MVVM架构 二、创建小程序项目 1. 查看注册的appId 2. 创建项目 3. 新建页面 01 - 创建text页面文件夹 02 - 新建text的page 03 - 在app.json中配置 …...
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件1. vim 的基本介绍和使用1.1 vim的三种模式1.2 常用vim命令【小白】1.3 Vim键盘图:2. Linux用户管理2.1 添加用户2.2 删除用户2.3 修改账号3. Linux系统用户组的管理4. 用户和组相关文件4.1 …...
阿里云服务器部署前后端分离项目
阿里云服务器部署 【若依】 前后端分离项目 文章目录一、域名解析二、服务器操作系统置空三、部署方式四、需安装环境配置五、Linux服务器安装相应内容(具体安装步骤)(一)安装JDK(3种方式)使用Yum安装&…...
内核经典数据结构list 剖析
前言:linux内核中有很多经典的数据结构,list(也称list_head)为其中之一,这些数据结构都是使用C语言实,并且定义和实现都在单独的头文件list.h中。可以随时拿出来使用。list.h的定义不同linux发行版本路径不同,我们可以在/usr/incl…...
华为OD机试 - 考优选核酸检测点(Python)| 真题+思路+考点+代码+岗位
优选核酸检测点 题目 张三要去外地出差,需要做核酸,需要在指定时间点前做完核酸, 请帮他找到满足条件的核酸检测点。 给出一组核酸检测点的距离和每个核酸检测点当前的人数给出张三要去做核酸的出发时间 出发时间是 10 分钟的倍数 同时给出张三做核酸的最晚结束时间题目中…...
在魔改PLUS-F5280开发板上使用合封qsp iflash
文章目录引言硬件调整软件调整总结引言 由于目前灵动官网暂未发布正式版的PLUS-F5280开发板,可以使用现有的PLUS-F5270 v1.2开发板(下文简称PLUS-F5270开发版)替换为MM32F5280微控制器芯片,改装为PLUS-F5280开发板。本文记录了使…...
uni-app 瀑布流
效果图 一、组件 components/u-myWaterfall.vue <template><view class"u-waterfall"><view id"u-left-column" class"u-column"><slot name"left" :leftList"leftList"></slot></view&…...
华为OD机试 - 去除多余空格(Python)| 真题+思路+考点+代码+岗位
去除多余空格 题目 去除文本多余空格,但不去除配对单引号之间的多余空格。给出关键词的起始和结束下标,去除多余空格后刷新关键词的起始和结束下标。 条件约束: [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oQABYuJD-1676475739950)(https://…...
MyBatis 二级缓存简单使用步骤
1、二级缓存使用 在 MyBatis 中默认二级缓存是不开启的,如果要使用需手动开启。在 mybatis-config.xml 配置文件中设置 cacheEnabled true ,配置如下: <?xml version"1.0" encoding"UTF-8" ?> <!DOCTYPE c…...
kubeadmin kube-apiserver Exited 始终起不来查因记录
kubeadmin kube-apiserver Exited 始终起不来查因记录 [rootk8s-master01 log]# crictl ps -a CONTAINER IMAGE CREATED STATE NAME ATTEMPT POD ID POD b7af23a98302e …...
论文投稿指南——中文核心期刊推荐(工程材料学)
【前言】 🚀 想发论文怎么办?手把手教你论文如何投稿!那么,首先要搞懂投稿目标——论文期刊 🎄 在期刊论文的分布中,存在一种普遍现象:即对于某一特定的学科或专业来说,少数期刊所含…...
【动态规划】背包问题题型及方法归纳
背包问题的种类 背包问题是在规定背包容量为j的前提下,每个物品对应的体积为v[i],价值为w[i],从物品0到物品i中选择物品放入背包中,找出符合某种要求的价值。 (1)背包问题种类 01背包:每种物…...
全球十大资质正规外汇期货平台排行榜(最新版汇总)
外汇期货简称为FxFut,是“Forex Futures”的缩写,是在集中形式的期货交易所内,交易双方通过公开叫价,以某种非本国货币买进或卖出另一种非本国货币,并签订一个在未来的某一日期根据协议价格交割标准数量外汇的合约。 …...
使用Paramiko时遇到的一些问题
目录 1.背景 2.问题合集 1)“bash: command not found” 2)Paramiko中正常的输入,却到了stderr,而stdout是空 3)命令实际是alias 1.背景 在自动化脚本中,使用了库Paramiko,远程SSH到后台服…...
数据预处理(无量纲化、缺失值、分类特征、连续特征)
文章目录1. 无量纲化1.1 sklearn.preprocessing.MinMaxScaler1.2 sklearn.preprocessing.StandardScaler2. 缺失值3. 分类型特征4. 连续型特征数据挖掘的五大流程包括:获取数据数据预处理特征工程建模上线 其中,数据预处理中常用的方法包括数据标准化和归…...
【C#基础】C# 运算符总结
序号系列文章2【C#基础】C# 基础语法解析3【C#基础】C# 数据类型总结4【C#基础】C# 变量和常量的使用文章目录前言运算符1,算术运算符2,布尔逻辑运算符3,位运算符4,关系运算符5,赋值运算符6,其他运算符7&am…...
存储性能软件加速库(SPDK)
存储性能软件加速库SPDK存储加速存储性能软件加速库(SPDK)SPDK NVMe驱动1.用户态驱动1)UIO2)VFIOIOMMU(I/O Memory Management Unit)3)用户态DMA4)大页(Hugepage…...
微服务(五)—— 服务注册中心Consul
一、引入依赖 <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-consul-discovery</artifactId></dependency>二、配置yml文件 server:port: 8006spring:application:name: cloud-payment-con…...
冷冻电镜 - ChimeraX Density Map 密度图 操作
欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://blog.csdn.net/caroline_wendy/article/details/129055160 由冷冻电镜所生成的Volume,需要观察其内部结构,使用ChimeraX进行操作。 加载Volumes,例如my_volume.mrc 效果如下: 高斯滤波 在命令行(Co…...
Matlab 点云旋转之轴角式
文章目录 一、简介二、实现代码三、实现效果参考资料一、简介 三维空间中表示旋转的方法有很多种,轴角式是其中非常经典的一种表示方式。虽然欧拉角表示旋转的方法很是常用,但欧拉角存在着万向锁这个问题,因此轴角式旋转在旋转使用中更为合适。其原理也很是明了,如下所述:…...
2023美赛数学建模资料思路模型
美赛我们为大家准备了大量的资料,我们会在比赛期间给大家分析美题目和相关的思路 全文都是干货,大家仔细阅读,资料文末自取! 首先我们来看美赛23年题型的一个变化: 美赛23年题目变化: A题:连…...
Nginx配置HTTP强制跳转到HTTPS
https 访问我们的测试域名 https://www.xxx.com 站点,但是当我们直接在浏览器地址栏中直接输入 www.xxx.com 的时候却发现进入的是 http 协议的网站,这与我们的初衷不一致。由于浏览器默认访问域名使用的是80端口,而当我们使用SSL证书后&…...
从实现到原理,聊聊Java中的SPI动态扩展
原创:微信公众号 码农参上,欢迎分享,转载请保留出处。 八股文背多了,相信大家都听说过一个词,SPI扩展。 有的面试官就很喜欢问这个问题,SpringBoot的自动装配是如何实现的? 基本上,…...
3、MySQL字符集
1.MySQL字符集和校验规则 字符集:是一套符号和编码的规则校验规则:是对该套符号和编码的校验,定义字符的排序和比较规则,其中是否区分大小写,跟校验规则有关。2.查看字符集方法 netstat -lntup |grep 3306 tcp6 0 0 :::3306 :::* …...
网站的设计流程/搜索引擎竞价广告
JavaScript引擎是单线程运行的,浏览器无论在什么时候都只且只有一个线程在运行JavaScript程序. 参考这篇文章 http://www.ruanyifeng.com/blog/2012/12/asynchronous%EF%BC%BFjavascript.html Javascript语言的执行环境是"单线程"(single thread&#x…...
app开发方式/宁波seo网络推广推荐
希望自己能够通过对本课程的学习,对C语言能有进一步的了解,能够学会自主运用,学习到经验技术和知识,也希望老师能够在学习新知识时多讲解多运用,反复练习,以增加学生对新知识的熟练度和理解度。转载于:http…...
福田商城网站建设/世界足球排名
linux下的打包压缩打包和压缩gzip 压缩gzip -[1-9] filename 指定压缩等级gzip -c filename 输出压缩结果到标准输出gzip -d filename 解压缩gzip -k filename 保留原文件gzip -f filename 强制覆盖同名文件gzip -l filename 打印压缩信息gzip -n/N filename 保留源文件信息gzi…...
有哪些网站主页做的比较好看/搜索引擎营销优缺点
库内新增对象Products 的流程说明:第一步: com.jeecms.cms.entity.assist.base下建立模型基础类,BaseCmsProducts.java com.jeecms.cms.entity.assist 下建立对象类继承继承模型,CmsProducts.java com.jeecms.cms.entity.assist.…...
单机网页游戏网站/可以免费发帖的网站
数据统计,截至3月21日,电力板块已有16家上市公司发布了2016年年报,业绩两极分化趋势明显。其中,梅雁吉祥、银星能源等水电、新能源发电公司业绩翻倍,深圳能源、大唐发电等火电公司净利润下滑明显。 水电新能源发电表现…...
网站掉排名/今日新闻快讯10条
首先,例如我们处于图形页面 如图: 我们想要切换到命令行模式,需要摁电脑的Ctrl键Alt键 及F2同时摁 如图进入页面: 输入root/用户名,输入密码回车进入成功 如果想要切换回来摁CtrlAltF1即可。 小伙伴们学废了么&am…...