「Unity/photon/punとpun2の違い」の版間の差分
提供: 初心者エンジニアの簡易メモ
(→部屋系) |
|||
行22: | 行22: | ||
PhotonNetwork.GameVersion = "v1.0"; | PhotonNetwork.GameVersion = "v1.0"; | ||
PhotonNetwork.ConnectUsingSettings(); | PhotonNetwork.ConnectUsingSettings(); | ||
+ | } | ||
+ | </pre> | ||
+ | |||
+ | ===部屋系=== | ||
+ | auto-lobbyのチェック | ||
+ | ↓ | ||
+ | <pre> | ||
+ | if (PhotonNetwork.IsConnected) | ||
+ | { | ||
+ | PhotonNetwork.JoinLobby(); | ||
} | } | ||
</pre> | </pre> |
2021年8月11日 (水) 04:09時点における版
目次
photonとphoton2の違い
参考:https://lifter-liberty.localinfo.jp/posts/5296583
実際に変更した作業
using
using Photon.Pun; using Photon.Realtime;
を追加
継承
Photon.MonoBehaviour → MonoBehaviourPunへ
接続系
PhotonNetwork.ConnectUsingSettings("v1.0");
↓
if (PhotonNetwork.IsConnected == false) { PhotonNetwork.GameVersion = "v1.0"; PhotonNetwork.ConnectUsingSettings(); }
部屋系
auto-lobbyのチェック ↓
if (PhotonNetwork.IsConnected) { PhotonNetwork.JoinLobby(); }
部屋系
- roomOptions.customRoomProperties → roomOptions.CustomRoomProperties
- roomOptions.customRoomPropertiesForLobby → roomOptions.CustomRoomPropertiesForLobby
- roomOptions.maxPlayers → roomOptions.MaxPlayers
- roomOptions.isOpen → roomOptions.IsOpen
- roomOptions.isVisible → roomOptions.IsVisible
部屋プロパティ
- room.name → room.Name
- room.customProperties → room.CustomProperties
- PhotonNetwork.room → PhotonNetwork.CurrentRoom
部屋一覧
pun1
void OnReceivedRoomListUpdate() { RoomInfo[] rooms = PhotonNetwork.GetRoomList(); // 注意:OnReceivedRoomListUpdate()が呼ばれた以後でしか取得できない if (rooms.Length == 0) { Debug.Log("ルームが一つもありません"); } else { foreach (RoomInfo room in rooms) { Debug.Log("RoomName:" + room.name); Debug.Log("userId:" + room.customProperties["userId"]); } } }
↓
pun2
using System.Linq; public override void OnRoomListUpdate(List<RoomInfo> roomList) { Debug.Log("OnRoomListUpdate"); List<RoomInfo> tmpRoomList = roomList.Where(s => s.IsOpen).ToList(); if (tmpRoomList.Count == 0) { Debug.Log("ルームが一つもありません"); } else { foreach (RoomInfo room in tmpRoomList) { Debug.Log("RoomName:" + room.Name); Debug.Log("userId:" + room.CustomProperties["userId"]); } } }
OnRoomListUpdateでエラーが出る場合は、以下置換。
MonoBehaviourPun → MonoBehaviourPunCallbacks
PhotonViewエラー
PhotonViewのあるところに以下追加
using Photon.Pun;
RPC系
PhotonTargets.All → RpcTarget.All