【Unity VR开发】结合VRTK4.0:摄像机碰撞变黑

文章介绍了如何在Unity中使用Visuals.CollisionFader模块避免摄像机穿透模型的问题。通过添加和配置此模块,以及利用ListContainsRule和AnyTagRule来指定交互物体,确保只有特定的对象能触发视角变化。这种方法对于优化头显设备在复杂场景中的交互体验非常有用。
摘要由CSDN通过智能技术生成

语录:

       人是要长大的,有天你也会推着婴儿车幸福地在街上行走,而曾经的喜欢,不管曾经怎样,都会幻化成风,消失在时光的隧道。所以向前走,向前走,无须回头。


前言:

          往往我们在运行场景时,会出现摄像机穿透模型,为了避免这种情况,我们就需要Visuals.CollisionFader模块,使用户头显设备与Unity场景中其他几何体碰撞时,淡化主摄像机视图。


正文:

         步骤一:

          首先我们需要添加对应的模块Visuals.CollisionFader

Tilia -> Prefabs -> Visuals -> Visuals.CollisionFader

 然后我们需要指定 Visuals.CollisionFader 中对应模块的属性:

       设置完成后,运行场景发现,只要头显进入带有Collider时,视角就会变黑,但是我们想要的是,在碰到跟我们没有相关的物体时,才会屏幕变黑,那么我们就需要给它加上限制。

       步骤二:

        我们首先创建一个空物体对象,然后在空物体对象上添加组件:List Contains Rule:

         步骤三:

          我们再在上面的空物体下面创建一个空物体作为他的子物体,然后在其身上添加组件:Unity Object Observable List:

 然后我们将子物体拖放到父物体的属性中:

这时将我们指定的物体拖放到下面就可以了,也说明只有我们指定的物体才能和头显进行交互。

 然后我们将父物体指定给Visuals.CollisionFader 的属性中:

 扩展:

我们在起初是在父物体上添加的是指定的物体才能和头显交互,有的时候面临场景庞大,不适合,这时,我们可以使用另外一个方法,指定对应的标签(Tag):AnyTagRule:

 然后我们就添加对应的标签,并将需要交互的物体标签换成我们设置的标签即可。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值