小编scr*_*ock的帖子

如何在 Photon 中为玩家初始化相机

我在做2D游戏,问题是当第一个玩家创建并出现在房间里时,他的相机正常工作,但是当一个新玩家进入房间时,第一个玩家通过第二个玩家的相机看到一切。此外,如果第三名玩家连接,第一名和第二名玩家可以通过第三名玩家的相机看到一切,依此类推。

在 GameManager 类中实例化的玩家预制件,该类仅在游戏场景中

public class GameManager : MonoBehaviourPunCallbacks
    {
        public GameObject playerPrefab;
        public Transform spawnPoint;

        public void Start()
        {
            GameObject player = PhotonNetwork.Instantiate(this.playerPrefab.name, spawnPoint.position, Quaternion.identity);
            player.GetComponent<FireFighterHeroController>().enabled = true;
            player.GetComponent<CameraControler>().enabled = true;
            player.GetComponent<CameraControler>().SetTarget(player.transform);
        }

        #region PUN Callbacks

        public override void OnLeftRoom()
        {
            SceneManager.LoadScene(1);
        }

        #endregion

        #region Custom Methods

        public void OnClickLeaveRoom_Btn()
        {
            PhotonNetwork.LeaveRoom();
        }

        #endregion
}
Run Code Online (Sandbox Code Playgroud)

简单的相机控制器

public class CameraControler : MonoBehaviour
    {
        private Transform target;
        public GameObject camera;
        public Vector3 offset;

        public void SetTarget(Transform target)
        {
            this.target = target; …
Run Code Online (Sandbox Code Playgroud)

c# unity-game-engine photon

6
推荐指数
1
解决办法
2040
查看次数

标签 统计

c# ×1

photon ×1

unity-game-engine ×1