HTC Vive & Hi5 2.0 灭火器项目指南

软件版本

Unity 2019.4.40f1c1

SDK与教程

Hi5 2.0 SDK下载

官网下载:https://shopcdn.noitom.com.cn/article/43.html

SDK分为基础SDK(FSDK)和交互SDK(ISDK)。

Hi5 2.0 交互 SDK 用户手册

CSDN教程:https://blog.csdn.net/weixin_43042683/article/details/126922595

官方教程:在交互SDK压缩包中的PDF文件(Hi5 2.0_SteamVRHeadset_ISDK_Unity_1.1.0.3_用户手册)

Hi5 消磁&校准教程

官网教程:https://shopcdn.noitom.com.cn/article/19.html

这个网站下面的资源是Hi5 1.0的,别用。

Tracker不分左右,若发现校准后左右手部模型反了或手部模型不自然,请重新校准。Pose越标准,手部模型越精准。

必须开始HI5 Menu面板的Calibrate校准程序才能进行校准。做V-Pose不需要来回摆动手臂,先保持水平,再保持倾斜即可。

项目融合

将Hi5 SDK的Calibration场景的[CmaeraRig]_Hi5以及TableScence_Vive场景的Hi5_Thread_MonoBehaviourHi5_Interaction_ObjectHi5_Interaction_Simple_Objects导入到灭火器的Start和Play场景中。

由于需要在Start里进行手部校准,所以还需将HI5 Menu导入进Start场景。刚导入进来的HI5 Menu面板无法点击,需要修改HI5 Menu的所有Btn_*子对象(场景搜索Btn),将它们的Menu State Button组件的Selection Radial变量指定为Camera。

手部模型位置修正

找了一个世纪都找不到如何设置绑定修正,我直接改源码。

当你移动手部对象(Hi5_Left_HandHi5_Right_Hand)位置后,再运行,会发现手部模型会回到原点(0,0,0)并与手部Tracker相对位置出现偏差。这时就需要进行位置修正。

解决方法:

  1. 找到脚本HI5_InertiaInstance.cs,打开编辑;

  2. 添加superObject变量:

    public GameObject superObject;
    

  3. 找到ApplyHandMotion_Pose方法,在HandBones[m_INDEX_Hand].position = position;上方添加如下代码:

    if (superObject != null)
    {position += superObject.transform.position;
    }
    

  4. 保存代码,回到Unity,找到两个手部模型,将其HI5_InertiaInstance.cs脚本的superObject变量选择为[CameraRig]_Hi5

避坑指北

坑啊坑啊都是坑啊。我真是踩了个遍,麻了……

手指定位器连接不上

需要将手指定位器与接收器的频段调为一致(不同颜色代表不同频段)。建议均调为蓝色频段,若手指信号差则可尝试更改频段。

三个Tracker手模型校准不正确

当场景中存在三个Tracker时,手部模型会校准不正确。所以需要保证进行手部模型校准时候场景里只存在两个Tracker。

在Start场景里将Tracked Device删除至只剩下四个Device(Device1 - Device4)。

Play场景不需要修改,保证在五个以上。

Tracker的启动顺序

由于Start场景只预留了四个Tracked Device,所以需要注意Tracker的启动顺序。

启动顺序:打开SteamVR自动连接两个定位器 > 启动左右手Tracker > 启动灭火器Tracker

这样做保证了在Start场景里只存在两个定位器以及左右手Tracker,不存在灭火器Tracker。防止在Start场景里手模型校准不正确。

开始游戏后手模型不正确

若在Start场景里校准完手部模型后,开始游戏进入Play场景发现手部模型不正确。请检查Start场景的手部对象和Play场景的手部对象是否一致,需确保名字、脚本组件均一致。

例如Start场景的手部对象脚本组件比Play场景的手部对象脚本组件多或少一个(即使未开启),均会导致开始游戏后手模型不正确。

报错DlINotFoundException: XRSDKOpenVR

Unity.XR.OpenvR.OpenvRLoader.Initialize 0 (at Librar nvr@3ee6c452bc34/Runtime/OpenVRLoader.cs:185)

打开Project Settings > 点击XR Plug-in Management > 取消勾选Initialize XR on Startup。

仅在报此错误时候这样做。

写在最后

查资料的时候别查到Hi5 1.0了,需要查Hi5 2.0的。1.0的SDK和2.0的SDK不一样。

Noitom的官方文档是真的又少又乱。
未完待续,有疑问的小伙伴可以关注私信我哦,相互学习,共同进步~

Unity学习 HTC Vive Hi5 2.0相关推荐

  1. Unity开发HTC vive 五、拾取和触碰

    Unity开发HTC vive 五.拾取和触碰 <div class="article_manage clearfix"><div class="art ...

  2. GJM:Unity开发HTC vive 三、远处拖动3D物体 【转载】

    腾讯GAD  窗间风月 原文URL : http://gad.qq.com/article/detail/7192223 版权所有,禁止匿名转载:禁止商业使用:禁止个人使用. 在项目中会需要拖动远处的 ...

  3. 用 Unity 和 HTC Vive 实现高级 VR 机制(1)

    原文:Advanced VR Mechanics With Unity and the HTC Vive Part 1 作者:Eric Van de Kerckhove 译者:kmyhy VR 从来没 ...

  4. 基于Unity的HTC Vive虚拟现实交互开发(一)环境配置

    环境配置 在本篇文章中,我们将重点介绍通过Unity3D来对HTC Vive进行基础的环境配置. 在这个系列的前几篇文章中都是为了之后的开发做准备工作. HTC Vive 进行VR开发的前提是你要有一 ...

  5. unity开发 HTC vive手柄控制 手柄上各个按钮的点击事件

    HTC vive手柄各个按钮的响应事件,已实现的功能是按手柄上的原盘上下左右键移动,是平移,不是射线瞬移.这种方式在眼镜里太晕了. using UnityEngine; using System.Co ...

  6. Unity的HTC VIVE SDK研究(手柄按键功能的研究,比较详细)

    http://blog.csdn.net/ystistheking/article/details/51553237 想交流的朋友我们可以微博互粉,我的微博黑石铸造厂厂长 ,缺粉丝啊 .....求粉求 ...

  7. Unity结合HTC Vive开发之射线与UI交互

    完成1.1 VRTK基础配置后,可以进行此步操作. 交互操作 场景设计 在场景新建Canvas(画布)(注:第一次在场景中新建,会自动生成一个物体:EventSystem,一定不要删除),以下操作仅用 ...

  8. Unity结合HTC Vive开发之VRTK手柄Touchpad键圆盘UI显示

    完成1.1 VRTK基础配置后可进行此步操作. 点选右手柄Controller(right),在Project搜索RadialMenu,将预制体拖动到Controller(right)下作为子物体 运 ...

  9. Unity结合HTC Vive开发之控制UI始终在视野前方

    完成1.1 VRTK基础配置后再进行本步骤. UI设置 新建UI等内容请点击 1.4 VRTK与UI交互 第一步 场景设计 跟随相机 点击Canvas添加脚本 FollowCamera using S ...

最新文章

  1. sql server排序慢_用Nginx实现接口慢查询并可示化展示TOP 20
  2. 当前不会命中断点 源代码与原始版本不一致
  3. NET中winform与webform互相通讯实例,CS调用BS页面的JS函数---转载
  4. Git使用入门 - 在Git上新建项目
  5. js三进制计算机,js 笔记 - 二进制位运算符
  6. 【Python 小知识】[:-1] 和 [::-1]
  7. java框架----mybatis的使用(一)
  8. java异步处理_Java编程开发好入门吗 消息队列的用途有哪些
  9. mysql ibdata1 损坏_mysql innodb文件ibdata1损坏导致mysql无法启动
  10. img 标签的 src 属性
  11. win11 c4d如何安装 Windows11安装c4d的步骤方法
  12. Linux i2c-tools使用及调试
  13. java网上订餐系统开题报告_基于WEB的网上订餐系统-开题报告.doc
  14. apache poi excel word 加密,不用借助其他jxcell.jar包
  15. 【面经】阿里数据研发多面面经
  16. JS 四舍六入五成双
  17. rabbitmq入门(四)Topics主题模式
  18. Justep X5 Studio
  19. C++解决汉诺塔问题
  20. 总结:java.lang包

热门文章

  1. 思科c系列服务器cimc密码,UCS C系列服务器故障排除提示.PDF
  2. 第六期 Wiggler调试路由器 《路由器就是开发板》
  3. Windows远程连接电脑宿主机,管理服务器的几种快捷方式。
  4. 身高体重排序-华为OD
  5. Simon IELTS: Reading
  6. CommandLineRunner
  7. 散列表及散列冲突解决方案
  8. 【比特熊故事汇】X Microsoft Build 2022——微软专家+MVP,技术亮点全解析
  9. 计算机学院王春枝教授实验室,全国高等学校计算机科学与技术教学成果获奖证书.doc...
  10. Java Web学习笔记 3 深入Servlet技术