【问题标题】:How can i switch between characters in Unity?如何在 Unity 中切换角色?
【发布时间】:2022-06-24 22:23:48
【问题描述】:

我正在开发一款游戏,您将在游戏中控制 2 个不同的角色。所以我用他们自己的 (fps) 相机创建了 2 个角色并将它们制作成预制件。如何在这些字符之间切换?

【问题讨论】:

    标签: c# unity3d


    【解决方案1】:

    您可能应该获取玩家状态(位置、旋转等)、销毁旧玩家、实例化新玩家并像这样设置玩家状态:

    GameObject _currentPlayer;
    
    void ChangePlayer(GameObject playerPrefab){
        var playerPosition = _currentPlayer.transform.position;
        var playerRotation = _currentPlayer.transform.rotation;    
        Destroy(_currentPlayer);
        _currentPlayer = Instantiate(playerPrefab, playerPosition, playerRotation);
    }
    

    “使用自己的相机”是什么意思?相机是玩家预制的孩子吗?这听起来不太好,并且在您创建新播放器时可能会导致一些问题。您应该为相机编写简单的脚本以跟随玩家或使用 Cinemachine 恕我直言

    【讨论】:

      猜你喜欢
      • 2018-07-14
      • 1970-01-01
      • 1970-01-01
      • 2015-12-25
      • 2023-03-28
      • 1970-01-01
      • 2018-09-24
      • 2021-10-01
      • 2023-04-07
      相关资源
      最近更新 更多