Unreal Game Sync(UGS)とは
UnrealGameSync(UGS)
Fortniteの開発チームがエディタ配布のための作ったツールのようです。
最低限の環境
- ソースファイルなどのバージョン管理にPerforce
- UE4 Engineソースそのもの(UGSのソースはEngine\Source\Programs\UnrealGameSyncに入ってる)
すべての機能を使うための環境(メタデータサービス)
- IIS(Internet Information Services)およびWeb Deploy
- Windows Server (IISのWeb Deploy機能を使うために必須と思われる)
- MySQL8.0
- VisualStudio2017(以上?)(UGSビルドするのに必須)
Perforce環境
- Perforceサーバー環境構築やらユーザー作成は割愛
- Depotに関してはStream Depotが必須と思われる(バイナリビルドアップ用)
- Binaries(Stream)
- depot(ソース置き場)
- depot以下に
- Bat
- UnrealEngine-4.26
- Engine自体
- UE4自身のプロジェクト置き場(FirstPerson)
- UnrealGameSync(UGSビルドされたのを置く場所…自動配信用)
※EngineとUE4自身のプロジェクト置き場は同一フォルダに置くのが多分必須(メタデータサービスで必須と思われる)
UGS
- Engine\Source\Programs\UnrealGameSync\UnrealGameSync.slnがプロジェクトの場所
- DeploymentSetting.cs
-
DefaultDepotPath
を"//depot/UnrealGameSync"
に(PerforceのUGS置く場所のURI) - (メタデータサービス使うなら)
ApiUrl
を"http://IISのURL/"
に
-
- ビルドしたら
//depot/UnrealGameSync/Release/UnrealGameSync.exe
//depot/UnrealGameSync/Release/UnrealGameSync.exe.config
//depot/UnrealGameSync/Release/UnrealGameSync.pdb
//depot/UnrealGameSync/Release/Ionic.Zip.Reduced.dll
//depot/UnrealGameSync/UnstableRelease/UnrealGameSync.exe
//depot/UnrealGameSync/UnstableRelease/UnrealGameSync.exe.config
//depot/UnrealGameSync/UnstableRelease/UnrealGameSync.pdb
//depot/UnrealGameSync/UnstableRelease/Ionic.Zip.Reduced.dll
こんな感じに配置(コピーやら移動させるのが面倒ならビルドされたところを指定してもいいと思う)
- P4V(Perforceクライアント)を起動させてからUGSを起動する(あとはUGSリファレンスのとおりに設定すればいい)
※ビルドする際に色々エラー出る時があるので必要なものをインストールする(.Net Frameworkとかだったはず…ぐぐったら解決する)
MySQL8
- MySQL Windows Installerを落としてきてServerをインストール
- UGSのメタデータサービスで使うようのアカウント作成
IIS
- Web Deployサービスが必要なのでWindows Server必須
- IISのインストールは
- Web Deployに関しては
-
Web 配置発行の Web サーバーを構成する (Web 配置ハンドラー)
を参考にすれば良い
※IISのWeb 配置による発行の有効化のための処理である右クリックー>展開が出ないので調べたら Web Deploy3.6ではだめで3.5だと大丈夫とかいう情報あったけど、3.5でもだめで結局上記サイトの通りにやったら3.6でも問題なく出るようになった(OS自体再起動したほうがいい)
-
Web 配置発行の Web サーバーを構成する (Web 配置ハンドラー)
MetadataServer
- GSプロジェクトにMetadataServerプロジェクトがあるので
- ビルドするとエラーが出るのでMetadataServer直下に
NotForLicensees\Web.config
を作る - Web.template.configの
ConnectionString
をMySQLで作ったアカウントにする&サーバーのIPを指定する - ビルドする
- MetadataServerプロジェクト右クリック->発行でWebアプリを配信する
- MySQLに
ugs_db
というデータベースができてたら成功(配信されたらブラウザが開くのでエラー出てなかったら成功)
- ビルドするとエラーが出るのでMetadataServer直下に
資料があまりにもなくて環境構築に手間取った…まとめたら大したこと無いので辛い…