光子对象未同步 - Unity

时间:2017-11-30 12:47:30

标签: android cross-platform unity5 multiplayer photon

我正在制作一个多人第三人称游戏,我正在为网络管理员使用运动控制器制作动画和光子。我有一个问题:当我连接并加入房间时,其他玩家不会移动其他玩家屏幕。他们只在他们的设备上移动。这是我停用的内容:

using UnityEngine;
using com.ootii.Input;
using com.ootii.Actors;
using com.ootii.Actors.AnimationControllers;

public class netView : Photon.MonoBehaviour {

    public Camera cam;
    public UnityInputSource uis;
    public GameObject canvas;
    public ActorController ac;
    public MotionController mc;

    // Use this for initialization
    void Start () {
        if (photonView.isMine) {
            cam.enabled = true;
            uis._IsEnabled = true;
            canvas.active = true;
            ac.enabled = true;
            mc.enabled = true;
        } else {
            cam.enabled = false;
            uis._IsEnabled = false;
            canvas.active = false;
            ac.enabled = false;
            mc.enabled = false;
        }
    }

}

以下是视频:https://youtu.be/mOaAejsVX04。我正在编辑器和手机上玩。在我的设备中,我四处走动,编辑器不动。同样在编辑器中,来自设备的播放器只是停留在那里,在电话移动时不会移动。 对于输入我使用的是CrossPlatformManager类。我该如何修理?

1 个答案:

答案 0 :(得分:1)

在您的情况下,我认为问题在于您不要开始同步转换。你需要一个连接到你的网络对象的PhotonTransformView组件,一个photonView观察PhotonTransformView,或者你的网络行为内部手动写入和读取该网络对象流。

我强烈建议您完成基本教程,逐步向您展示上述所有技术:

https://doc.photonengine.com/en-us/pun/current/demos-and-tutorials/pun-basics-tutorial/player-networking#trans_sync

https://doc.photonengine.com/en-us/pun/current/demos-and-tutorials/pun-basics-tutorial/player-networking#beams

您使用的输入技术并不重要,重要的是变换的同步。

再见,