#unity3d #virtual-reality #photon #vrtk
#unity-игровой движок #виртуальная реальность #photon #vrtk
Вопрос:
Я работаю над решением уже несколько недель и думаю, что пришло время обратиться к нему. Я пытаюсь создать кнопку, которая воспроизводит звук при нажатии контроллером, каждый будет слышать этот звук. Используя VRTK и PlayoVR, я могу создать несетевую версию, в которой игрок может просунуть руку через куб, нажать на триггер с контроллера, и он издаст звук.
Это код для этого куба:
namespace VRTK.Examples {
using UnityEngine;
public class Whirlygig : VRTK_InteractableObject
{
public GameObject AudioSource;
public AudioSource LeftSpeaker;
public override void StartUsing(VRTK_InteractUse currentUsingObject =
null)
{
AudioSource.GetComponent<AudioSource>().Play();
}
}
}
Я теряюсь в том, как подключить ее к сети Photon Unity Networking. Это то, что у меня есть:
namespace PlayoVR
{
using UnityEngine;
using VRTK;
using UnityEngine.Video;
using NetBase;
public class PlaySync : Photon.MonoBehaviour
{
public AudioSource LeftSpeaker;
public GameObject Whirlgig;
private bool StartUsing;
// Use this for initialization
void Awake()
{
GetComponent<VRTK_InteractableObject>().InteractableObjectUsed =
new InteractableObjectEventHandler(DoPlay);
}
void DoPlay(object sender, InteractableObjectEventArgs e)
{
StartUsing = true;
}
// Update is called once per frame
void Update()
{
// Handle firing
if (StartUsing)
{
CmdPlay();
StartUsing = false;
}
}
void CmdPlay()
{
photonView.RPC("NetPlay", PhotonTargets.All);
}
[PunRPC]
void NetPlay()
{
LeftSpeaker.Play();
}
}
}
Как вы, вероятно, можете видеть, я новичок. С этим кодом, когда я кладу руку в куб и нажимаю на триггер, ничего не происходит. Если кто-нибудь может оказать какую-либо помощь или даже альтернативу, я был бы очень благодарен.
С уважением, TheMusiken