VR Development Test by using Keyboard Script
- Ju Zhang
- 2022年3月16日
- 讀畢需時 1 分鐘
#if !(!UNITY_EDITOR_WIN ||!UNITY_STANDALONE_WIN ||(UNITY_ANDROID && !UNITY_EDITOR))
#define VRHEADSET_UNSUPPORTED_PLATFORM
#endifusing System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Normal.Realtime;
public class ControllerSwitcher : MonoBehaviour
{
public GameObject keyboardController;
public Transform keyboardHead;
public GameObject XROrigin;
public Transform XRHead;
public Transform XRLeftHand;
public Transform XRRightHand;
public Transform realtime;
private RealtimeAvatarManager realtimeAvatarManager;
void Start()
{
realtimeAvatarManager = realtime.GetComponent<RealtimeAvatarManager>();
realtimeAvatarManager.avatarCreated += OnAvatarCreated;
#if VRHEADSET_UNSUPPORTED_PLATFORM
XROrigin.SetActive(false);
keyboardController.SetActive(true);
#else XROrigin.SetActive(true);
#endif
}
void Update()
{
}
public void OnAvatarCreated(RealtimeAvatarManager avatarManager, RealtimeAvatar avatar, bool isLocalAvatar)
{
if (!isLocalAvatar) return;
#if VRHEADSET_UNSUPPORTED_PLATFORM
avatar.localPlayer.head = keyboardHead;
#else avatar.localPlayer.root = XROrigin.transform;
avatar.localPlayer.head = XRHead;
avatar.localPlayer.leftHand = XRLeftHand;
avatar.localPlayer.rightHand = XRRightHand;
#endif
}
}



Comments