イベント
日本サービスも開始されるゲームエンジンサービス「Photon」をUnityで使うには。「Unite Japan」講演レポート
Photon Network Engineというのは,Exit Gamesが開発したネットワークエンジンだ。最近,GMOクラウドが日本でもSaaS(Software as a Service)型のサービスの乗り出して話題になっている。かなりホットなセッションと言っていいだろう。
さて,AppBank GAMESの宮川義之氏は,早くからUnityでネットワーク機能を持ったゲームを作っていた開発者の一人だ。Unity関連のイベントではよく講演を行っているのだが,それは国内にUnityに関する情報があまりに少ないので,早く情報を共有できる仲間を作りたかったからだという。一方で,今回のUniteでの講演は,Photonの情報を共有できるユーザーを増やしたいという気持ちからのものだとのこと。
AppBank GAMES 代表取締役 宮川義之氏 |
AppBank GAMES 小野将司氏 |
この講演では,同社が2012年12月にリリースした「ダンジョンズ & ゴルフ」(以下,ダンゴル)の2.0バージョン制作過程における,ネットワーク機能実装にまつわる話が,小野将司氏らの開発者達によって紹介された。ダンゴルは,ゲーム制作経験のない新規スタッフを中心に,約1年かけて制作したものだという。
目指したのは,非同期ではないリアルタイム対戦ができるゲームで,回線が切れたら,オフラインモードに自動的に移行するようなもの。とはいえ,宮川氏以外はネットワークゲーム制作の経験はない。期間も予算も限られている。
そのような状況で取れる技術的な解決策で選択肢は3つあったという。
- Unityのネットワーク機能を使う
- サードパーティのネットワークエンジンを使う
- 自分で作る
Unityのネットワーク機能は専用サーバーなしで実現されるものであり,同時接続している端末のどれか1台がサーバーの代わりをするというものだった。これが3G回線だとまったく使えないというわけだ。
とくにiPhoneユーザーの多数が使っているであろうソフトバンクモバイルの3G回線の場合,上り方向で期待できるのは10MB/秒がせいぜいなのだという。1秒間の通信回数を10回としても,1回あたりにやり取りできるのは1KB。これが4人対戦だと端末3台を相手にすることになり,さらに3分の1にまで減ってしまう。しかもよく切れるので,サーバー用に使うには不適であり,3G回線でネットワークゲームをやるなら専用サーバーは必須であるというのがAppBank GAMESの結論となったようだ。
そこで既存のネットワークエンジンを探したところ,見つかったのがPhotonだったという。あっさり見つかって,見たところ機能もよさそうで,ほかに代わりになりそうなものがなかったということで,Photonの導入が決まったのだという。
Photonのよいところとしては,Unityとの親和性が高いことが挙げられていた。用意されている。ネームスペースが異なるくらいで,基本的にはUnityのネットワーク関係と同じ関数が揃っているとのこと。Unityの機能を使って開発を進めていたなら,簡単に移行できるわけだ。
PhotonにはSaaS型の「Photon Cloud」と,自前でサーバーを立てる「Photon Server」の2種類があるという。日本でサービスされているのはクラウドタイプだ。SaaSとかクラウドとかいうとなにやら分かりにくいのだが,これはオンラインゲームエンジンをサーバーごと提供してくれるというものだと思っていればいいだろう。とにかくクラウドタイプであれば,サーバーの管理も不要で低コストでオンラインゲームを実現できる。
ダンゴルは,ゲームルームを探し,空きがなければ新しいルームを作るという仕様なので,そのあたりを中心にサーバープログラムに手を入れたという。情報が少なくてかなり苦労したようだ。曰く「サーバータイプはイバラの道」とのこと。
次に,接続が切れたときにシングルプレイモードに自動的に移行する処理について解説されたが,これはPhotonの標準機能として用意されているとのことで,オフラインモードのフラグを立てるだけで対応できたようだ。
ただし,どのタイミングで対戦相手が切れるかが分からないため,アクセスしようとしたオブジェクトが急になくなっていた場合など,かなり面倒なデバッグ作業が必要だったとのこと。このあたりは,実際にやってみないと分からないので,社内総出で検証を行っていたそうだ。マルチプレイのテストでは,複数のUnityを並列して起動するなど,特殊な技も紹介されていた。
ともあれ,ゲーム開発経験もほとんどないスタッフが約1年でゲームを完成させたことなどからして,UnityとPhotonを組み合わせた環境は,かなり強力だという。なお,とくに理由がない場合はクラウドのほうがコストも低く,手間がなくてよいのではないかとのこと。クラウドタイプは,同時接続数が20までなら無料という嬉しい設定になっている。
情報量が少ないのが難だが,GMOクラウドによる日本でのサービスも始まったことから日本語情報の充実に期待したいところだ。
「Unite Japan」公式サイト
- 関連タイトル:
Unity
- この記事のURL: