Photonでルームの作成から入室まで
Photonについて
Photonとは?
Photonとは、リアルタイム通信に関する、ホスティングサービスの一つです。
SDKも整備されており、また、最小の単位であれば無料で試すことができるのでお手軽です。
Photonでできること
- ルームの作成
- ルームの検索
- ルームへの入室
- プレイヤーのマッチング
- ネットワークを介した他端末との通信
- WebHook
その他、もっといろいろな事ができると思いますが、一つ一つ試していきたいなと思っています。
初期設定
アカウントの取得
なにはともあれ、アカウントの取得を行わないと何もできません。
まずは、無料アカウントで試してみましょう。
アカウントを取得すると、ほぼ自動的にAppIDが割り当てられます。
このAppIDは後ほどUnityの方に設定するので、控えておいてください。
Photon Assetの導入
UnityからPhotonへ接続するためのライブラリを導入する必要性があります。
UnityのAsset Storeからダウンロードして、インポートするだけなので、簡単です!
インポートが完了したら、AppIDの設定をしておきます。
これで、事前準備は完了です。
早速、いろいろ試してみましょう!
ルームの作成
まずは、ルームの作成を試してみます。
ざっくりと、コードはこんな感じです。
これだけですが、しっかりと「true」の出力を確認できると思います。
正直、まだ全然つながってる感じがしないですが(笑)
ルームへの入室
ルームへの入室までできたら、きっと繋がってる感じが出るに違いない!
続いて、ルームへの入室を試してみましょう。
さて、これで「join」ボタンを押せば、trueが出力…
JoinRoom failed. Client is not on Master Server or not yet ready to call operations. Wait for callback: OnJoinedLobby or OnConnectedToMaster.
されなーい!
されないどころか、なんかエラー出てる!
エラーで指定されたコールバックを定義しても解決されず、、、 その他のコールバックを入れ込んでみると、原因が判明しました。
上記のようなコールバックを定義して、createボタンを押してみると…
room created.
joined room.
なるほど!
roomは作成と同時に参加処理が走っているようですね〜。
試しにもう一つUnityを立ち上げて、片方でcreate、片方でjoinを行ったところ、両方とも成功しました!
しっかりと、photonに接続できているようです。
次回に向けて
次回は、ルームに参加しているメンバーの一覧とか出してみようと思っています。
ではでは!