Unity 实战-元宇宙【Fps 集成到Pico VR设备】

PICO 的 VR 解决方案包含了一个高度集成的头戴端和两个控制器,它们提供了以下核心元能力。


image.png

下面我们将 Unity 实战【Fps 枪击游戏-结合官方FPS案例 Microgame】
集成到pico VR 设备中。

427D989B-F830-4EA3-8F68-F2B8B19723AA.gif

Pico的开发者平台 对应的集成方式可以按文档一步步来

下面主要介绍一下对应的改动点 以及如何去关联手柄去控制游戏。

  • 所有相机的视角 都需要依赖 pico 的 XR_Camera
    image.png
  • 左右手柄自定义


    image.png

为了更好控制手柄 我们需要基于XRController 去做扩展。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.XR;
using UnityEngine.XR.Interaction.Toolkit;
public class XrContrller : XRController
{
}

将左右手柄都关联XrContrller

image.png

player 模型托管到 对应Controller 下面,然后去管理对应左右XrController 这样手柄就能通过脚本去控制player

image.png

可以看一下具体脚本控制的逻辑

    void Update()
    {

       
        bool rTriggerBtnTempState;

        if (leftController.inputDevice.TryGetFeatureValue(UnityEngine.XR.CommonUsages.triggerButton, out rTriggerBtnTempState))
        {
            if (rTriggerBtnTempState != rTriggerBtnState)
            {
                if (rTriggerBtnTempState) {
                    StopCoroutine("RealoadBullet");
                    OpenFire();
                }
           
                rTriggerBtnState = rTriggerBtnTempState;
            }
        }

    }

通过传人的leftController 以及rightController 然后根据对应API 去操控手柄。

你可能感兴趣的:(Unity 实战-元宇宙【Fps 集成到Pico VR设备】)