[转]VRTK☀️四、瞬移

2023-10-31 12:31
文章标签 vrtk 瞬移

本文主要是介绍[转]VRTK☀️四、瞬移,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

🟥 基础配置

🟧 瞬移的几种方式

1️⃣ 全图基于Collider的基础瞬移

2️⃣ 自适应高度瞬移

3️⃣ 向前快速移动的传送

4️⃣ 贝瑟尔曲线瞬移

🟨 瞬移区域设置

1️⃣ 方法1:瞬移规则限制

2️⃣ NavMesh瞬移

3️⃣ 点传送

🚩 直接效果

🚩 拓展效果 


🟥 基础配置

基础配置地址

🟧 瞬移的几种方式

1️⃣ 全图基于Collider的基础瞬移

该效果能通过射线,瞬移到任何有Collider的物体上。但会穿过有Collider的箱子。即虽然传送到Collider那了,但自身高度未调整。

a、地面添加Collider

b、PlayArea物体上瞬移组件介绍

BlinkTransitionSpeed:瞬移时闪屏的效果时长

DistanceBlinkDelay:闪屏的延时

TargetListPolicy:相应瞬移的机制

使用NavMesh控制瞬移的数值

2️⃣ 自适应高度瞬移

该效果能通过射线,瞬移到任何有Collider的物体上。不会穿过有Collider的箱子。会站到箱子上面。

a、地面添加Collider

b、PlayArea物体上取消基础瞬移组件,添加 VRTK_HeightAdjustTeleport

属性大部分跟基础传送相同。

LayersToIgnore:这些层不参与自适应高度传送。还是会传送,会穿过。

3️⃣ 向前快速移动的传送

取消 PlayArea 上的基础传送,添加 VRTK_DashTeleport,该脚本自带自适应高度

4️⃣ 贝瑟尔曲线瞬移

1、将手上的直线的 VRTK_StraightPointerRenderer 删除掉

2、添加 VRTK_BezierPointerRenderer,指定给 VRTK_Pointer 属性 PointerRenderer

3、解决指针末端穿过不规则表面

勾选 VRTK_BezierPointerRenderer 属性 CuserMatchTargetRotation

🟨 瞬移区域设置

1️⃣ 方法1:瞬移规则限制

PlayArea物体 添加 VRTK_PolicyList ,赋值给TargetListPolicy

TargetListPolicy:传送目标规则

VRTK_PolicyList :传送忽略/包含下面x个为?tag的物体。

2️⃣ NavMesh瞬移

该规则和上面1规则可同时进行。即使用自动导航传送。

NavMeshLimitDistance:NavMesh内部区域(内部留白不能导航的区域)向内0.5m也能传送。

要使用该规则,上属性不可设为0!(因为当为0时,代表着系统会忽略NavMesh的因素,不使用该规则)

a、Windows——AI——Navigation——Object:设置哪些物体可进行自动寻路,那些物体是障碍物。

b、Bake——Bake

3️⃣ 点传送

🚩 直接效果

预制件 DestinationPoint 拖到场景,直接直接能穿送到该物体位置。

EnableTeleport:设置该点能否传送。

🚩 拓展效果 

实现类似SteamVR瞬移区域效果。可在该物体上任何地方传送。

将该预制件 DestinationPoint 缩放成一个区域,并添加Collider(调到合适大小)即可。

这篇关于[转]VRTK☀️四、瞬移的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/315379

相关文章

83.网络游戏逆向分析与漏洞攻防-移动系统分析-游戏瞬移漏洞的测试与分析

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 如果看不懂、不知道现在做的什么,那就跟着做完看效果,代码看不懂是正常的,只要会抄就行,抄着抄着就能懂了 内容参考于:易道云信息技术研究院 上一个内容:82.坐标修正数据包的处理与模拟 码云版本号:2057942aba862cbc9f9db7037948d921af42993a 代码下载地址,在 titan 目录下,文件名

VRTK(Virtual Reality Toolkit)深入介绍

VRTK是一个为Unity引擎设计的开源虚拟现实(VR)开发框架,旨在简化和加速VR应用的开发过程。这个工具包包含了一系列的模块和预设,使得开发者可以快速集成标准的VR功能,如物体交互、环境导航、用户界面管理等。下面将对VRTK进行更加详细的介绍,包括其架构、主要组件、使用方法及实际应用案例。 1. VRTK的架构和组件 VRTK的设计遵循模块化和可扩展的原则,主要可以分为以下几个核心组件:

【VRTK】【Unity】【VR开发】使用注意事项-Simulator没反应

【背景】 建立一个基本的VRTK项目后,用Simulator Rig模拟运行,移动鼠标后发现Simulator Rig没有任何反应。 【分析】 Console中的报错信息类似于没有启用Legacy unity input package,Legacy的意思是经典的,所以应该是指没有在player settings中设置为old input method。 【解决方法】 进入菜单Edit-

VRTK关于手柄的显示与隐藏

平时做项目,肯定会遇到一个问题,就是换手柄的模型,比如说把手柄换成枪或者别的工具,这个时候就涉及到更改模型。笔者一开始的思路就是,换一下手柄的模型不就可以了吗,这个简单,换个物体就可以,但是,后面发现操作起来还是蛮复杂的(可能脑子不太好使,不过网上有深挖脚本动态更改模型的教程),所以我就想到两个比较简单的办法,但是也蛮实用的。 1.直接控制模型激活。 如下图,打开子物体,找到一个模型渲染的空物体

【VRTK】【PICO】如何快速创建一个用VRTK开发的PICO项目

【背景】 每次新建一个VRTK的PICO项目总是做一些重复工作,于是就想着搞成一个基本的包,把基本的设置都放进去,今后新做项目直接导这个包就行了。 完整资源包请见本篇博客的绑定资源。 【内容简介】 这个包是我为了快速开发基于VRTK的PICO应用设置的基础项目包。每次开发新的PICO应用可以先导入此基础项目包,做简单设置后就得到一个打包可用的基本的VRTK PICO应用。后续在此基础上开发

【PICO】【VRTK】PICO项目后打包后在头盔中运行时不追踪

【背景】 PICO项目打包后可以在头盔中运行,但是画面是贴脸移动的,无法发生有效的空间追踪。 【解决办法】 我的Unity版本是2021.3.30LTS,ProjectSettings中的NetFramework默认是2.1。改到NetFramework后再打包就正常了。

【VRTK】【Unity】【PICO】PICO项目打包后闪退的根本原因

【背景】 一开始打包运行好好的PICO项目,中途用Preview模式开发了一阵后,再次打包就闪退了。 【分析】 项目设置没有动过,那么可能是Preview开发过程中引入的包导致的问题。 【答案】 千万不要在PICO项目中导入Oculus包。我原本想用一些Oculus包内的Assets资源,所以导入了Oculus,现在叫Meta的开发SDK包,经过反复验证,就是这个包导致了PICO项目打包

【VRTK】【QA】总是报Axis定义缺失怎么办?

【背景】 新建一个VRTK编写的项目后,运行时总是报如下错误: 【分析】 在Project Settings中有定义Input的部分,根据报错,应该是在Input定义设置中缺少了相应的Axis设置。进去设置一看果真如此,没有任何Tilia相关的轴定义。 【解决方法】 打开菜单-》Window-》Tilia-》Input,点击右边追加Axis定义的菜单项即可。弹出如下对话框,点击追加:

【Unity】【VRTK】【Pico】如何快速在VRTK中引入带动画的PICO控制器

【背景】 之前的VRTK篇章中,我只介绍了Oculus,Open VR,SImulator这三种Rig的配置方法,那么Pico如何融合VRTK进行开发呢? 【需要的开发包】 先像一个正常PICO项目那样导入PICO的SDK到Unity。VRTK 4的Package导入器中搜Pico,可以导入一个Pico的Integration,导入后Project面板的Packages文件夹下会出现Tili

【VRTK】【Unity】【游戏开发】更多技巧

课程配套学习项目源码资源下载 https://download.csdn.net/download/weixin_41697242/88485426?spm=1001.2014.3001.5503 【概述】 本篇将较为零散但常用的VRTK开发技巧集合在一起,主要内容: 创建物理手震动反馈高亮互动对象 【创建物理手】 非物理手状态下,你的手会直接穿过物体,导致破坏沉浸。本节讨论如何设置