LoginSignup
1
1

More than 1 year has passed since last update.

オンラインボードゲーム開発記録

Last updated at Posted at 2022-10-08

unity でオンラインボードゲーム開発をした記録を載せます
参考記事 

pun2実装

ログイン画面から作成します
Pun2の仕組み
マスターサーバーにアクセスし、個別のルームを立ち上げる

マスターサーバーにアクセスする関数

.cs
PhotonNetwork.ConnectUsingSettings();

マスターサーバーにアクセスしたときのコールバック
コールバックはMonoBehaviourPunCallbacksを継承する必要がある。

.cs
public override void OnConnectedToMaster() {}

MonoBehaviourPunCallbacksの中にvertualでOnConnectedToMaster()が宣言されているのでoverride するよ

ルーム作成する関数

.cs
// "ルーム名"という名前のルームを作成する
PhotonNetwork.CreateRoom("ルーム名");

ルーム作成したときのコールバック

.cs
public override void OnCreatedRoom() {}

ルーム参加

.cs
PhotonNetwork.JoinRoom("ルーム名");

ルーム参加したときのコールバック

.cs
public override void OnJoinedRoom(){}

ルーム作成と参加を同時に行う

.cs
//"Room"があるなら参加、内なら作成し参加する
PhotonNetwork.JoinOrCreateRoom("Room", new RoomOptions(), TypedLobby.Default);

ルーム退出

.cs
PhotonNetwork.LeaveRoom();

ルーム退出のコールバック
public override void OnConnectedToMaster(){}

ロビー
ロビー参加

.cs
PhotonNetwork.JoinLobby();

ロビー参加したときのコールバック

.cs
public override void OnJoinedLobby(){}

ロビーから退出

.cs
PhotonNetwork.LeaveLobby();

オブジェクト生成

.cs
PhotonNetwork.Instantiate("生成したいオブジェクトの名前", position, Quaternion.identity);

第二引数: 生成するオブジェクト位置
第三引数: 生成するオブジェクト角度
ここで生成するオブジェクトはResourceフォルダに入れておく

オンラインボードゲーム作成

流れ
ログイン(名前入力)

roomに入る

スタートボタンで開始

ログイン画面

login.png

サーバー側とunityのUIとかSCENEを連動させることで分かりやすくなる

ロビー使用しなくてもできそう
UI左上に表示しておくとか

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1