This repository has been archived on 2026-01-20. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
AW_2025/Assets/Scripts/NetworkPlayer.cs
2025-02-24 15:18:12 +09:00

55 lines
1.6 KiB
C#

using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
using UnityEngine.XR;
public class NetworkPlayer : MonoBehaviour
{
private Player player;
private Transform xrRig;
public Transform body;
public Transform leftHand, rightHand;
public Transform faceUI;
public TMP_Text nameText;
void Start()
{
player = GetComponent<Player>();
xrRig = GameObject.FindWithTag("Player").transform;
nameText.text = gameObject.name;
//for (int i = 1; i <= 6; i++)
//{
// faceUI.transform.GetChild(i).gameObject.SetActive(false);
//}
}
// Update is called once per frame
void Update()
{
if (!player.isDummy)
{
body.gameObject.SetActive(false);
leftHand.gameObject.SetActive(false);
rightHand.gameObject.SetActive(false);
MapPosition(body, XRNode.Head);
MapPosition(leftHand, XRNode.LeftHand);
MapPosition(rightHand, XRNode.RightHand);
player.OnClick_Button_Send();
}
}
void MapPosition(Transform target, XRNode node)
{
InputDevices.GetDeviceAtXRNode(node).TryGetFeatureValue(CommonUsages.devicePosition, out Vector3 position);
InputDevices.GetDeviceAtXRNode(node).TryGetFeatureValue(CommonUsages.deviceRotation, out Quaternion rotation);
target.localPosition = position;
target.localRotation = rotation;
target.parent.position = xrRig.transform.position;
target.parent.rotation = xrRig.transform.rotation;
}
}