【Locomotor运动模块】攀爬

2023-11-06

一、攀爬主体“伪身体”

1、“伪身体”的设置

①它追踪(Tracking)的“源头”(Source)是头盔(HeadSet)——也就是说,跟着谁动——伪身体跟随头盔
OffSet偏移(为什么是PlayAreaAlias,留有疑问)
在这里插入图片描述

2、“伪身体”和“真实身体”,为什么同步移动

“伪身体”跟随头盔,头盔代表“真实身体”——因而移动“真实身体”,伪身体会跟着移动

移动真实身体的逻辑
在这里插入图片描述

3、“伪身体”和“真实身体”,碰到墙时不同步的原因
①现象

“真实身体”进入到了自建的立方体(墙)内,伪身体进不去
在这里插入图片描述
在这里插入图片描述

②原因

在这里插入图片描述
也就是说“伪身体”上有碰撞器,穿不了墙

③解决

让“伪身体”StillDiverged事件,监听SolveBodyCollisions解算身体碰撞体方法(原理是让两种身体同步,强迫“真实身体”头盔更新到“伪身体”的位置),如果还抖动(强制两种身体同步导致的),调节厚度(图二)
在这里插入图片描述
在这里插入图片描述

二、攀爬

1、需要的组件:“伪身体”、Climbing、Climbable及Interactor

Climbing是个中间件,负责把“伪身体”和Climbable联系起来
Climbable实质是“可交互物体”(Interactable),因而需要“交互器”(Interactor)设置GrabAction和Velocity Tracker两个属性(但不需要设置Interactale的主次抓取)
在这里插入图片描述

2、联系和设置

把“伪身体”(PseudoBody)拖入Climbing,再把Climbing拖入Climbable
在这里插入图片描述
在这里插入图片描述
“交互器”(Interactor)设置GrabAction和Velocity Tracker
在这里插入图片描述

二、爬不上墙头的原因及解决方法

1、原因

一旦手柄和墙脱离,抓取事件就停止了(或说Interactor停止接触可抓取物体时,抓取也停止了)

2、解决方法

关闭墙(“可抓取物体”Interactable)的Untouched事件
在这里插入图片描述

在这里插入图片描述

另外,加一座山

可抓取物体下面,加了一个山(注意,它是先把预设体给Unpack,然后加上的山)
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Locomotor运动模块】攀爬 的相关文章

随机推荐

  • 程序的动态特性

    程序的动态特性 大多数情况下 程序的功能是在编译的时候确定下来的 称之为静态特性 而如果程序的功能是在运行时才确定的称为动态特性 动态特性是面向对象语言最强大的功能之一 它在语言层面上支持程序的可扩展性 动态特性 由C 虚函数 抽象基类 动
  • 基于朴素贝叶斯的垃圾分类算法(Python实现)

    一 模型方法 本工程采用的模型方法为朴素贝叶斯分类算法 它的核心算法思想基于概率论 我们称之为 朴素 是因为整个形式化过程只做最原始 最简单的假设 朴素贝叶斯是贝叶斯决策理论的一部分 所以讲述朴素贝叶斯之前有必要快速了解一下贝叶斯决策理论
  • 【Android Studio】配置国内镜像源(利用hosts)

    之前我写过直接用国内镜像的IP地址端口进行配置国内镜像的 如下链接 Android studio配置国内镜像源 但是这种方法不一定在每台电脑上的每次配置都行得通 因此给出第二种方法 给系统文件 hosts 添加国内的镜像 虽然 可能 也不一
  • 云服务器 ECS > 快照 > 快照概述

    快照概述 更新时间 2020 07 01 20 40 29 编辑我的收藏 本页目录 应用场景 快照类型 计费 使用限制 优势 相关操作 联系我们 阿里云快照可以为所有类型的云盘创建崩溃一致性快照 是一种便捷高效的数据容灾手段 常用于数据备份
  • Qt自定义sink风格按钮

    为了满足工作中控件多样性的要求 一些控件的风格需要通过重写画家事件的方式进行自定义 实现sink风格按钮的效果图如下 纯代码实现思路 产生按钮下沉的效果是利用了视觉误差原理 通过更改背景颜色以及图标的位置 呈现出按钮动态改变的效果 按钮未按
  • 【Sonar技术债务解】Null pointers should not be dereferenced

    SonarLint Null pointers should not be dereferenced A NullPointerException could be thrown getReauestAttributes0y can ret
  • 计算机桌面颜色怎么换,电脑桌面字体颜色怎么改

    大家好 我是时间财富网智能客服时间君 上述问题将由我为大家进行解答 电脑桌面字体颜色修改的方法是 1 首先 打开电脑 在桌面空白处点击鼠标右键 点击 个性化 点击打开 2 在窗口中选择 窗口颜色 点击打开 3 在窗口中选择 高级外观设置 点
  • Ubuntu18.04安装ROS+gazebo9

    https blog csdn net qq 35683407 article details 106064918 1 安装ros Ubuntu18 04选择ROS Melodic 教程网址 http wiki ros org cn mel
  • 如何排查 IDEA 自身报错?

    这个问题是 2023 年 7 月 26 日遇到的 当时还是 IDEA 2023 1 4 结果文章还没写完 7 月 27 日自动给更新了 IDEA 2023 2 问题估计解决了 所以 本文就简单提一下 IDEA 自身报错的排查方法 规避 解决
  • Java基础冷知识

    lt 一 gt 全局变量和局部变量的区别 1 位置不一样 全局变量存在类下面 局部变量存在方法里面 全局变量的生命周期和对象有关 局部变量的生命周期和方法有关 2 修饰符 全局变量是可以加修饰符的 局部变量不可以 3 默认值问题 全局变量只
  • nodeName、nodeValue和nodeType节点介绍

    nodeName 元素节点的 nodeName 是标签名称 大写 属性节点的 nodeName 是属性名称 文本节点的 nodeName 永远是 text 文档节点的 nodeName 永远是 document 注释 nodeName 所包
  • 百度地图数据可视化

    如何使用百度地图 前往官方文档进行一系列注册 主要是为了获取服务密钥 新建HTML文件 进行示例代码编写
  • C语言 队列

    目录 一 队列概念 二 基础数组队列 三 基础链表队列 四 数组队列 函数 五 链表队列 函数 一 队列概念 先进先出 后进后出 第一个元素无数据 数组队列长度 根据数组长度决定 链表队列长度 根据电脑内存决定 二 基础数组队列 inclu
  • APP上架需要的准备和流程

    一上架iOS应用市场前的准备 1 选择适合自己的苹果开发者账号 1 个人账号 Individual 费用99美金一年 该账号在App Store销售者只能显示个人的ID 比如zhitian zhang 单人使用 个人账号只能有一个开发者 1
  • IDEA 导入Spring源码:找不到InstrumentationSavingAgent

    错误如下 Error 26 38 java 找不到符号 符号 类 InstrumentationSavingAgent 位置 程序包 org springframework instrument 解决方法 导入项目时选择 Use local
  • 记录vue.config.js中配置代理(devServer)不生效的坑(跨域问题处理)

    前后端分离后 会遇到跨域问题 导致后端响应的数据被浏览器 拦截 前端无法接收 往往就会导致类似下面的问题产生 大意就是请求地址不同源 导致了跨域问题 解决方法 使用vue cli脚手架 在vue config js文件中配置代理服务器 从而
  • canvas视频截图

    const videoEle document createElement video console log videoEle gt videoEle videoEle src https cn ph new rad q s3 cn no
  • easyexcel使用教程-导出篇

    easyExcel使用教程 导出篇 开始准备工作 1 导入Maven依赖
  • 恒合仓库 - 用户管理、用户列表、为用户分配角色

    文章目录 用户管理 一 用户列表 1 1 实体类 1 1 1 分页实体类 1 1 2 用户信息实体类 1 2 业务实现 1 2 1 UserMapper 1 2 2 Service层 1 2 3 Controller层 1 2 4 效果图
  • 【Locomotor运动模块】攀爬

    文章目录 一 攀爬主体 伪身体 1 伪身体 的设置 2 伪身体 和 真实身体 为什么同步移动 3 伪身体 和 真实身体 碰到墙时不同步的原因 现象 原因 解决 二 攀爬 1 需要的组件 伪身体 Climbing Climbable及Inte