こんにちは〜
りきです。
今回は、PUN2とBoltを使って人とオンラインマッチングするっていうことやっていきます。
まずは、今回準備編ということで、セットアップからやっていきましょうね。
PUN2をインポート
Pun2をプロジェクトにインポートしていきます
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.09.29-1024x640.png)
ウィンドウからアセットストアを開き、
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.09.45-1024x640.png)
Search Onlineからアセットストアをブラウザで開くよ
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.10.00-1024x640.png)
アセットストアでPun2を検索して
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.10.09-1024x640.png)
Pun2Freeを見つけて、
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.10.19-1024x640.png)
Add to My Assetsでインポート。
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.10.39-1024x640.png)
もし既にダウンロードしたことあるぜって人は、ウィンドウ⇨パッケージマネジャーにいって
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.11.10-1024x640.png)
Pun2を選択。インポート。
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.11.56-1024x640.png)
インポートを選択。
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.12.07-1024x640.png)
そしたら、こんな感じでAppIDを要求するウィンドウが開くよ。
こっからPUN2の新規登録を終わらせて、新しくIDを作っていくよ
PUNに新規登録
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.12.22-1024x640.png)
ブラウザで「Pun2」って調べると、「機能の概要」とか書いてあるページがあるからそこに飛ぶよ
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.12.43-1024x640.png)
Punのページを開いたら、右上のサインインを押して新規登録していくよ
ここでメルアドを入力して、Registerを押して、
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.13.08-1024x640.png)
入力したメール宛にパスワード登録URLがきてるから、そこに行ってパスワードを登録。すると、、
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.13.21-1024x640.png)
新規登録。無事完了。
Pun2サーバーを用意
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.13.21-1024x640.png)
ここまで行けたら、Create A New App を押して
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.13.33-1024x640.png)
新しくサーバーを作っていく。
「Photon Type」には「PUN」 ⚠️BOLTじゃないよ
「Name」には他のサーバーと区別しやすい様に名前つける。ローマ字で適当でいいよ。
他は未入力でもOK。
Createを押すと、
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.13.45-1024x640.png)
BlogTestサーバーができたぜ!!!名前はつけたやつになってるはず。
そんじゃ、できたサーバーの「AppID」をコピーして、
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.14.04-1024x640.png)
Unityに戻ってここに貼り付け。
SetUpProjectを押せば、PUN2のセットアップが完了や!!!
BOLTをインポート
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.17.12-1-1024x640.png)
いつものように、Boltをアセットストアで検索して、インポートしていく。
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.17.22-1024x640.png)
これこれ。これをインポートしてね
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.15.26-2-1024x640.png)
既にダウンロードしてある方は、ウィンドウ⇨パッケージマネジャー⇨マイアセットにいって、Boltを探してインポートしてね
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.15.38-1024x640.png)
インポート!!!
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.18.04-1024x640.png)
BOLTのセットアップ始めよう。Nextをおして
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.18.19-1024x640.png)
Assembly Optionsの欄は下にスクロールしていって、+を押して、「PhotonRealtime」を追加。
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.18.29-1-1024x640.png)
また+を押して「PhotonUnityNetworking」を追加。
Nextを押して次へ。
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.18.50-1024x640.png)
TypeOptionsを設定していくよーん
+を押して、「Photon Network」を追加。
同じ要領で、「Room」「Room Options」「Room Info」を追加。
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.20.09-1024x640.png)
こんな感じで追加できたらGenerate。
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.20.32-1024x640.png)
Boltのセットアップ終わりじゃい!
最後の下準備
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.14.21-1-1024x640.png)
いつものようにスクリプトを貼り付ける用の空のオブジェクトを作成。
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.14.38-1024x640.png)
名前は「Manager」に設定。
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.20.49-1024x640.png)
プロジェクトビューでMacroフォルダーを作り、その中でBoltのフローマクロを新規作成。
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.20.59-1024x640.png)
名前はManagerで。(なんでもいいけど)
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.21.15-1024x640.png)
次に、C♯スクリプト「PhotonToBolt」を用意。
内容は以下の通り。コピペね。100%コピペだからノーコード。
名前は「PhotonToBolt」です。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Photon.Pun;
using Photon.Realtime;
using Bolt;
using System.Linq;
public class PhotonToBolt : MonoBehaviourPunCallbacks
{
public override void OnConnectedToMaster()
{
CustomEvent.Trigger(gameObject, "OnConnectedToMaster");
}
public override void OnJoinedRoom()
{
CustomEvent.Trigger(gameObject, "OnJoinedRoom");
}
public override void OnJoinRandomFailed(short returnCode, string message)
{
CustomEvent.Trigger(gameObject, "OnJoinRandomFailed");
}
public override void OnPlayerLeftRoom(Player otherPlayer)
{
CustomEvent.Trigger(gameObject, "OnPlayerLeftRoom");
}
[PunRPC]
void RPCCall(string eventName)
{
CustomEvent.Trigger(gameObject, eventName);
}
[PunRPC]
void RPCCall(params object[] args)
{
CustomEvent.Trigger(gameObject, (string) args[0], args.Skip(1).ToArray());
}
}
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.22.02-1-1024x640.png)
このスクリプトをManagerにアタッチ。
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.22.47-2-1024x640.png)
コンポーネントを追加⇨Bolt⇨フローマシンを追加。
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.23.17-1024x640.png)
プロジェクト内のManagerフローマクロを、フローマシンのMacroにドラッグ&ドロップ。
![](https://rikinonaka.com/wp-content/uploads/2022/03/スクリーンショット-2022-03-10-11.23.57-1024x640.png)
Edit Graph押して、ついにオンライン対戦のマッチング機能を実装していくぜ!!!!!
続きは次回!!!!
コメント