SenseGlove Nova 2+Unity开发笔记3

插件中Calibration Void是一项标准场景,位于SenseGlove/Calibration文件夹内。

它有两种变体:一种适用于非XR应用**(CalibrationVoid)** ,另一种适用于XR应用**(Calibration Void_XR)**。

它借助逻辑脚本 SG_CalibrationVoid来通过上述描述的 SGCalibrationSequence 启动和结束校准过程。

这一场景将"锁定"用户于一个专用界面中,界面上的指示会随着用户的视线移动而变化,并通过示例手势展示一系列动作以进行校准。如果用户的手部动作已足够充分,他们可通过做出"竖起大拇指"的示意来确认校准过程,之后便可(自动)进入下一场景。

发布的时候使用这个场景作为第一个场景,以保障手套在一开始就已经校准好了。

场景中有三个自动过度到下个场景的方法,可以让SG_CalibrationVoid脚本自动切换至预设场景。一旦检测到首个场景,CalibrationVoid便会从后台加载此后续场景,因此一旦校准完成,这一切换过程便可即刻实现。

1.changeSceneAfter

如果这个值小于0校准完后将不会进入任何场景。

2.goToSceneIndex

通过UnityEngine.SceneManagement.SceneManager.LoadSceneAsync(int sceneBuildIndex)加载场景名称。

3.goToSceneName

通过UnityEngine.SceneManagement.SceneManager.LoadSceneAsync(string sceneName)加载场景名称。

CalibrationVoid 脚本有一个CalibrationCompleted事件,该事件在算法完成后触发。你可以通过此事件来调用你自己的场景切换。

重置校准

在会话期间,您可能需要重新校准手部。例如,在切换用户或应用启动后戴上手套时。

在代码中:

重置校准的最简单方法是调用静态函数

SGCore.HandLayer.ResetCalibration(true); //Resets the right Hand profile

SGCore.HandLayer.ResetCalibration(false); //Resets the left hand profile

如果引用了任何SG_HandComponent 或SG_TrackedHand

复制代码
SG_TrackedHand myHand;
SGCore.HandLayer.ResetCalibration(myHand.TracksRightHand());

Returning to the CalibrationVoid

If you have included the Calibration Void inside your simulation, you can return your used to said scene to automatically reset calibration, and re-run the calibration sequence with instructions

(这块电脑翻译的我不喜欢,贴原文)

相关推荐
漫漫长远18 分钟前
低功耗UPF介绍(一)
笔记·嵌入式硬件·学习·fpga开发
斑马13919 分钟前
ARM学习笔记(七)——LCD液晶显示
arm开发·笔记·学习
懿路向前23 分钟前
【唤醒实战笔记】2026-09-29 | 工作流重构:适配 LLM 的真实特性
笔记·重构
荒原之梦网25 分钟前
荒原之梦考研数学:以原创笔记与真题解析辅助系统复习
笔记·考研
速易达网络40 分钟前
无人机远程操控仿真
游戏引擎·cocos2d
驭渊的小故事41 分钟前
SpringBoot 配置文件详解:properties 与 yml 从入门到实战
java·开发语言·笔记
郝学胜-神的一滴1 小时前
游戏引擎原理与实践 02:揭开3A游戏背后的技术面纱
开发语言·计算机网络·程序人生·游戏·游戏引擎
ljt27249606611 小时前
Vue笔记(九)--defineEmits
javascript·vue.js·笔记
AomanHao1 小时前
【阅读笔记】Weighted Guided Image Filtering(WGIF)权重引导滤波
图像处理·人工智能·笔记·计算机视觉·滤波·引导滤波
weixin_440730502 小时前
字符编码笔记-utf-8 、unicode、gbk,ascii编码格式
开发语言·笔记