unity-VRTK-simulator开发学习日记3(射线样式|忽略层|有无效名单)

目录

射线样式

组成

可用状态

材质替换 

射线激活设置为常态

忽略层级(射线等)

自定义忽略层级 (射线等)

有效名单和无效名单

有效名单

无效名单

创建一个模拟手柄的按钮(键盘键入按钮)

输入系统


射线样式

组成

组成:起点、中间部分、终点

可用状态

可用时启用valid,不可用时启用invalid

材质替换 

选中可用/不可用方块体(也可以将方块体替换为球体、胶囊体等)

 

射线激活设置为常态


忽略层级(射线等)

忽略射线检测

将不想要检测到的物体设置为下图这个层。默认检测不到。


自定义忽略层级 (射线等)

1.添加自定义层

 

 2.为射线上添加物理碰撞组件,并勾选自定义层

​​​​​​​

 3.将该碰撞组件给到射线的碰撞规则


有效名单和无效名单

两名单可以创建在同一个游戏对象内

有效名单

1.打开创建器

2.起名、选择“包含规则列表”

生成有效名单

3.为名单添加目标 

有效名单添加进来的对象:当对象A使用该有效名单,对象A只能对该有效名单内的对象有反应(有交互)。

(这里把柱子拖了进去,有效名单内的对象是柱子)

4.使用有效名单

射线组件使用有效名单,射线只对有效名单内的的对象有反应。

对柱子有交互 

对地板没交互

 ps:

如果物理碰撞的忽略层有它所在的层,尽管有效名单有它名字也是不能被交互。

无效名单

有效名单的取反

1.创建一个空物体

2.添加规则取反组件

有效名单拖进去,变为无效名单,改装后的空物体组件可当做无效名单使用

 

 3.使用无效名单

上篇的有效名单仅有柱子,这里取反,所以射线对除了柱子以外的其他对象都有交互。


创建一个模拟手柄的按钮(键盘键入按钮)

输入系统

导包

 若使用头盔,获取手柄的按键输入 

使用的是OpenVR的左右控制器组件

圆盘 按下、触碰、水平或竖直方向的竖直获取 

 扳机键

第一行:按压力度范围 ~(0,1)

第三行:按压 ~(0或1)

当按压力度在0.9~1时,被断定为属于按下扳机键。力度在0~0.9的时候不属于按下(轻轻按)

猜你喜欢

转载自blog.csdn.net/weixin_56537692/article/details/130441800
今日推荐