2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Unityオンラインマルチプレイゲームテストのための複数Unityエディタ起動

Last updated at Posted at 2020-01-04

概要

PUN2を使ったオンラインマルチプレイゲームの学習をしていて、複数のUnityエディタ上での実行でちゃんとネットワーク上で同期がとれているか確認したくなった。そのやり方をまとめておく。

ざっくりいうと、

  1. 開発中のプロジェクトディレクトリ(A)とは異なるパスにダミーのプロジェクトディレクトリ(B)を作成
  2. ディレクトリ(A)配下の以下のディレクトリへのシンボリックリンクをディレクトリ(B)直下に用意
  • Assets
  • UnityPackageManager
  • ProjectSettings
  1. プロジェクトA,BともUnityエディタで開いてやってそれぞれで再生ボタンを押す

1,2 についてはシェルスクリプト化すると以下のような感じ(Mac前提)。

#!/bin/sh
# --設定--
# 開発中のプロジェクトのパス
PROJECT_PATH_ORG=<開発中のプロジェクトのパス>
# ダミーのプロジェクトのパス
PROJECT_PATH=<ダミーのプロジェクトのパス>

# ダミーのプロジェクトディレクトリを作成
rm -rf $PROJECT_PATH
mkdir $PROJECT_PATH

# ProjectSettingsディレクトリ以下のシンボリックリンクを貼る
mkdir $PROJECT_PATH/ProjectSettings
ln -s $PROJECT_PATH_ORG/ProjectSettings/* $PROJECT_PATH/ProjectSettings/

# Assetsディレクトリ以下のシンボリックリンクを貼る
mkdir $PROJECT_PATH/Assets
ln -s $PROJECT_PATH_ORG/Assets/* $PROJECT_PATH/Assets/

# UnityPackageManagerディレクトリ以下のシンボリックリンクを貼る
mkdir $PROJECT_PATH/UnityPackageManager
ln -s $PROJECT_PATH_ORG/UnityPackageManager/* $PROJECT_PATH/UnityPackageManager/

上のシェルスクリプトでCUIからプロジェクトBをUnityエディタで開くところまでやっとくともっと便利かもしれない。下を参考にしていずれやろうかな。

3.について同時に複数のプロジェクト開くには、UnityHub起動してからプロジェクト開けばOK。だけど上のシェルスクリプトでCUIからプロジェクトBをUnityエディタで開くところまでやっとくともっと楽かもしれない。下を参考にしていずれやろうかな。

実際に試してみた

以下のスクリーンショットは、PUN2で始めるオンラインゲーム開発入門【その1】の動作を確認してみたときのやつ。

プロジェクトAでシーンを再生
スクリーンショット 2020-01-05 2.42.31.png

プロジェクトBでシーンを再生
スクリーンショット 2020-01-05 2.43.50.png

プロジェクトAでシーンの再生を停止
スクリーンショット 2020-01-05 2.47.19.png

ちゃんと同期取れてることがわかる。

余談

やっててあれ?ってなったのが、元のプロジェクトでいじってたシーンがシンボリックリンク貼ってる側のプロジェクトを開いたときにデフォルトで表示されていなかったこと。
これはシーンファイルをダブルクリックすればいいだけ。デフォルトで表示されるものと勘違いしてた。

スクリーンショット 2020-01-05 2.23.28.png

参考

http://tsubakit1.hateblo.jp/entry/2015/01/10/233000
http://reyloffice.blog.fc2.com/blog-entry-13.html

2
3
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
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?