モノビットの新型ネットワークエンジンの威力は? 10台のViveで楽しむVR体験会も行われた発表会レポート
2017年4月27日,モノビットはIDCフロンティアと共同で都内で同社のネットワーク製品のアップデート情報とVR機器への展開をデモする体験会を開催した。これは主に,モノビットが展開しているサーバー製品の「Monobit Revolution Server」や「Monobit Unity Networking 2.0」「VR Voice Chat」を紹介することを目的としたものだ。
さて,モノビットといえば,昨年,中嶋謙互氏がCTOとして参加したことが大きなトピックとして挙げられる(関連記事)。氏はネットワーク関連では控えめに言っても第一人者,国内ではほぼ神様と言って差し支えない人物だ。氏の加入後,モノビット製品がどのように変わったのかにも注目が集まった。
最初に登壇したのはIDCフロンティア(IDCF)の金杉有見子氏だ。IDCFはデータセンターであり,IDCクラウドなどを提供している。モノビットのネットワーク製品はデータセンターを選ぶわけではないが,主にその「速さ」でIDCFを強く勧めており,今回のイベントでもIDCFと共催でIDCFの強みが紹介されていた。金杉氏は,VR体験イベントということでVRやAIなどの,最近の業界の潮流について概観していた。
IDCFの方針として,GPUサーバーを強化していくことやAIへの取り組みを強化することなどが紹介された。また,ゲーム業界での事例では,IDCFの自動スケーリング機能を持ったロードバランサーや広帯域,リアルタイム性能などがゲーム向きであると評価されていた。
こと,パフォーマンスに関しては絶対的な自信があるようで,「この場限り」ということで提示していたグラフでは,さまざまなデータセンターで同程度のサーバー使用時に負荷状況とパフォーマンスの推移を比較したもので,IDCFが圧倒的に高パフォーマンスな様子が示されていた。ちなみにゲームで多く使われるAWSあたりはかなり低めで負荷が高くなるとさらに落ち込んでいる感じだった。
ライバル会社の調査ということで公平さが保障できない資料ではあったが,後半で登壇したモノビットCTOの中嶋氏の話でも,社内で行ったというベンチマーキング結果がほぼ同じだったとのことなので,ある程度は参考になりそうだ。なお,中嶋氏は,IDCFのサーバーをDBをSSDで組んでいること,4CPUのサーバーでちゃんとCPUが4つあるように動いていることなどの点でも高く評価していた。それが期待できないデータセンターも結構あるということなのだろう。
続いてモノビット社長の本城嘉太郎氏により,製品の紹介が行われた。紹介されたのは,冒頭で挙げたMonobit Revolution Server(MRS),Monobit Unity Networking 2.0(MUN),VR Voice Chatだ。
MRSは,ゲームサーバー用のプログラムで,MOからMMOにまで対応できるという。従来「リアルタイム通信エンジン」と呼ばれていたものは,今後MRSに置き換えられることになる。性能的にも格段の進化を遂げており,Revolutionという名を冠せられている。
MUN2.0は,Unityに基本的な通信機能とルーム作成機能,マッチング機能などをセットで提供するプラグインで,Unityに特化して手軽に扱えるのが特徴だ。従来発売されていたバージョンが大幅に更新されている。
VR Voice Chatは,MUNにボイスチャット機能を追加するプラグインだ。VRに対応しており,3次元座標での発音処理が行われる。
さて,注目されるのはその性能で,MRSは従来製品で数ミリ秒の遅延があったものが,マイクロ秒にまで短縮されており,CPUスレッドあたりの処理スループットが毎秒数万レコードから毎秒54万レコードへと,約10倍規模の高性能化を果たしている。
サーバーOSとしてLinuxのみからWindows,MacOSに対応を広げ,サーバーサイドのプログラムはC++以外にC#が利用できるようになった。通信プロトコルでは,TCP以外にUDPとRUDPを加えている。サーバーサイドもマルチプラットフォーム化されたことから,実運用はLinuxベースで行う場合でも,開発中はWindows PCだけで問題なく開発を進めることができるというのも手間が掛からなくていい。
基本性能が格段に上がり,サポート範囲も拡大されたというのが基本だが,今後はさらに利便性の高い機能が追加されていく予定だ。UNET互換の通信機能やNATトラバーサル機能,自動スケール機能などが順次追加されていく。
性能が10倍になったことでライセンス料金体系も一新され,今後は月の想定最大同時接続数(1000単位)×20円が基本料金となる。サーバー単位ではなくなったので,サーバー台数制限もなくなり,単純に接続数で料金が決まる方式だ。想定される接続数での単価は上がっているが,性能や利便性を考えると割安かもしれない。同接1500以下の小規模な用途では割安になっており,100接続までは無料であるほか,さらにインディーズや学生,個人開発者については完全に無料で提供されるという。
一方のMUNは,クライアントサイドの処理だけでマルチプレイを実現する手軽なプラグインだが,サーバーにMRSを導入すると,MUNからサーバーサイド処理をC#で記述できるようになる。Unityベースで本格的なオンラインゲームがより手軽に作成できるわけだ。本城氏に続いて登壇したミドルウェア事業部部長の安田京人氏は,Unity上でMUNを使って簡単なマルチプレイゲームを作成し,その機能の一部をサーバーサイドに持っていくまでを,実演ムービーを交えて解説した。
ゲームはフィールド上にランダムに現れるパネルをプレイヤーキャラクター(Unityちゃん)を走り回らせて回収し,スコアを競うというもので,ネットワーク接続されると1台がゲームロジックを処理するサーバー役となり,クライアント間だけで処理が可能になる。
このようなシステムは手軽にオンライン機能を実現できるが,サーバーになった端末でのチート行為を回避できないという問題がある。そこでアイテムの取得処理などのゲームロジックはサーバー側で処理し,クライアントは表示と入力処理に徹するようにすることが望ましい。ある程度本格的なネットワークゲームになってしまうのだが,MRSとMUNを使うとサーバーサイドでもC#が使えるため簡単に移行できることが示されていた。
さらにUnityで非常に簡単なプロジェクトを作成しつつVR Vioce Chatの使い方も実演された。
最後に登壇した同社CTOの中嶋謙互氏は,ゲームの仕様からネットワークインフラコストを推定するツール(Excelシート)について紹介していた。これはゲームで使用するサーバーのうち,とくにリアルタイムサーバーのコストが読みにくいことに対応するものだ。MRSとMUNそしてIDCFを使ったときの,ゲームの同時接続者数の見積もりや,パケットサイズによってどれくらい必要なインフラコストが上がるのかをシミュレートすることができる。
中嶋氏はMSRとMUNでネットワークシステムを構築する際のポイントを紹介していた。
MRSでの機能単位としてのサーバーには,DBとなるMaster,管理プログラムResolver,ゲーム実行でのRoomそしてProxyといった種類がある。MasterとResolverはシステムにつき,それぞれ1つずつで,RoomとProxyは接続数にしたがって増えていく。MasterはCPUもメモリも多く使い,Resolverは共に少なくても大丈夫だ。RoomやProxyはCPUは使うがメモリはあまりいらない。これらはサーバー単位で分けてもいいが,パワーがあれば1台に入れてもかまわない。全体的にクリティカルなのはCPUパワーで,そこに余裕を持って設計しておくのがコツとなるようだ。
紹介されていたものはまだ作成途上ということで,今後さらにリファインされていくとのことだが,壇上では同時接続2万人(かなり売れているゲーム)の試算が示されていた。1つのルームで4人対戦,1パケットは200バイト,ボイスチャットの使用率は10%などなどといった仕様のゲームの場合,4コアCPUでメモリ8GBのサーバーが2台必要となり,通信費用は1か月410万円程度になるとのこと。ルームあたり3人の仕様にすれば,通信費は300万円ほどになり,パケットサイズを150バイトに抑えれば通信費は230万円程度になる。こういったことが簡単に分かれば,ゲームデザインの時点でコストのコントロールがしやすくなるわけだ。
講演に続いて,このようなMRSとMUN,そしてVR Voice Chatを使ったデモが行われた。会場内には10台のViveが持ち込まれており,10人が赤チームと青チームの2チームに分かれて玉入れゲームを行うというものだ。フィールド内の台にある円柱形のボタンを押すと数個の立方体が出現するので,それをつかんで,空間に浮かぶバスケットゴールに入れるという簡単なゲームになっている。立方体は,それぞれのチームのプレイヤーがつかむとそれぞれのチームカラーに色が変わる。赤と青のゴールが空中を浮遊しており,自分の色のゴールに入れると点が加算され,相手の色のゴールに入れると,相手の点が減算されるのでどちらに入れてもかまわない。
会場では密集状態でViveのベースステーションが並んでいたため,ときどき干渉してひどいことになっていたりもしたが,これだけの人数でVRゲームをプレイする機会はそうそうない。単純なゲームでもそれなりに楽しめた。ボイスチャットや通信状態についてはまったく問題なしだ。今回に限っては,ボイスチャットが必要ないくらいみんな密集していたのだが,ネットワーク越しでも10人分の音声が十分クリアに再生されていた。
ただ,ゲーム中はどうもボタンの機能をちゃんと理解していなかった人が多かったようで,「円柱がつかめない」「奪い合い凄すぎて取れない〜」といったチャットも聞かれた。事前に「ボタンを押すと玉が出ます」のような説明があったのだが,私も練習時間の途中まで白い円柱がそのボタンだとは気づかなかった。ボタンに触れたときに長さが変わるとか音がするとか,作動のリアクションがほしかったところだ。ちなみに,メディア関係者中心の回のゲーム結果は60対-17くらいの大差で我が軍,青チームが勝利した。
ちなみに,今回の発表内容はMRSとMUN,つまりUnityに特化したものだったが,MRS自体はUnreal Engineなどでも利用可能だ。Unreal Engine用のパッケージ製品も今後投入予定とのことであった。
しかし,なんというかこれまで「Unityで手軽にネットワークゲームを作れそうなプラグイン」という感じだった製品が,一気に「本格的なMMOまで作れそうなシステム」になってしまった。常々,本城氏がが公言しているように,モノビットは本格的なMMORPGを作るために設立された会社である。ネットワークゲームの基礎技術を磨いているのもその一環だが,最近ではVR分野の開発も多く手がけ,いまでは大型VR MMORPG制作を目指しているという。一方でCTOとして参加した中嶋氏は「gumonji」やシンラテクノロジーでのワールドシミュレータ的なデモ,サンドボックスアクションRPGの「AirshipQ」など,インタラクティブなワールド作成に情熱を燃やす人でもある。今後この会社からどんなものが生み出されていくのか少し楽しみだ。
さて,モノビットといえば,昨年,中嶋謙互氏がCTOとして参加したことが大きなトピックとして挙げられる(関連記事)。氏はネットワーク関連では控えめに言っても第一人者,国内ではほぼ神様と言って差し支えない人物だ。氏の加入後,モノビット製品がどのように変わったのかにも注目が集まった。
IDCFの方針として,GPUサーバーを強化していくことやAIへの取り組みを強化することなどが紹介された。また,ゲーム業界での事例では,IDCFの自動スケーリング機能を持ったロードバランサーや広帯域,リアルタイム性能などがゲーム向きであると評価されていた。
こと,パフォーマンスに関しては絶対的な自信があるようで,「この場限り」ということで提示していたグラフでは,さまざまなデータセンターで同程度のサーバー使用時に負荷状況とパフォーマンスの推移を比較したもので,IDCFが圧倒的に高パフォーマンスな様子が示されていた。ちなみにゲームで多く使われるAWSあたりはかなり低めで負荷が高くなるとさらに落ち込んでいる感じだった。
ライバル会社の調査ということで公平さが保障できない資料ではあったが,後半で登壇したモノビットCTOの中嶋氏の話でも,社内で行ったというベンチマーキング結果がほぼ同じだったとのことなので,ある程度は参考になりそうだ。なお,中嶋氏は,IDCFのサーバーをDBをSSDで組んでいること,4CPUのサーバーでちゃんとCPUが4つあるように動いていることなどの点でも高く評価していた。それが期待できないデータセンターも結構あるということなのだろう。
MRSは,ゲームサーバー用のプログラムで,MOからMMOにまで対応できるという。従来「リアルタイム通信エンジン」と呼ばれていたものは,今後MRSに置き換えられることになる。性能的にも格段の進化を遂げており,Revolutionという名を冠せられている。
MUN2.0は,Unityに基本的な通信機能とルーム作成機能,マッチング機能などをセットで提供するプラグインで,Unityに特化して手軽に扱えるのが特徴だ。従来発売されていたバージョンが大幅に更新されている。
VR Voice Chatは,MUNにボイスチャット機能を追加するプラグインだ。VRに対応しており,3次元座標での発音処理が行われる。
さて,注目されるのはその性能で,MRSは従来製品で数ミリ秒の遅延があったものが,マイクロ秒にまで短縮されており,CPUスレッドあたりの処理スループットが毎秒数万レコードから毎秒54万レコードへと,約10倍規模の高性能化を果たしている。
サーバーOSとしてLinuxのみからWindows,MacOSに対応を広げ,サーバーサイドのプログラムはC++以外にC#が利用できるようになった。通信プロトコルでは,TCP以外にUDPとRUDPを加えている。サーバーサイドもマルチプラットフォーム化されたことから,実運用はLinuxベースで行う場合でも,開発中はWindows PCだけで問題なく開発を進めることができるというのも手間が掛からなくていい。
基本性能が格段に上がり,サポート範囲も拡大されたというのが基本だが,今後はさらに利便性の高い機能が追加されていく予定だ。UNET互換の通信機能やNATトラバーサル機能,自動スケール機能などが順次追加されていく。
性能が10倍になったことでライセンス料金体系も一新され,今後は月の想定最大同時接続数(1000単位)×20円が基本料金となる。サーバー単位ではなくなったので,サーバー台数制限もなくなり,単純に接続数で料金が決まる方式だ。想定される接続数での単価は上がっているが,性能や利便性を考えると割安かもしれない。同接1500以下の小規模な用途では割安になっており,100接続までは無料であるほか,さらにインディーズや学生,個人開発者については完全に無料で提供されるという。
ゲームはフィールド上にランダムに現れるパネルをプレイヤーキャラクター(Unityちゃん)を走り回らせて回収し,スコアを競うというもので,ネットワーク接続されると1台がゲームロジックを処理するサーバー役となり,クライアント間だけで処理が可能になる。
このようなシステムは手軽にオンライン機能を実現できるが,サーバーになった端末でのチート行為を回避できないという問題がある。そこでアイテムの取得処理などのゲームロジックはサーバー側で処理し,クライアントは表示と入力処理に徹するようにすることが望ましい。ある程度本格的なネットワークゲームになってしまうのだが,MRSとMUNを使うとサーバーサイドでもC#が使えるため簡単に移行できることが示されていた。
さらにUnityで非常に簡単なプロジェクトを作成しつつVR Vioce Chatの使い方も実演された。
中嶋氏はMSRとMUNでネットワークシステムを構築する際のポイントを紹介していた。
MRSでの機能単位としてのサーバーには,DBとなるMaster,管理プログラムResolver,ゲーム実行でのRoomそしてProxyといった種類がある。MasterとResolverはシステムにつき,それぞれ1つずつで,RoomとProxyは接続数にしたがって増えていく。MasterはCPUもメモリも多く使い,Resolverは共に少なくても大丈夫だ。RoomやProxyはCPUは使うがメモリはあまりいらない。これらはサーバー単位で分けてもいいが,パワーがあれば1台に入れてもかまわない。全体的にクリティカルなのはCPUパワーで,そこに余裕を持って設計しておくのがコツとなるようだ。
紹介されていたものはまだ作成途上ということで,今後さらにリファインされていくとのことだが,壇上では同時接続2万人(かなり売れているゲーム)の試算が示されていた。1つのルームで4人対戦,1パケットは200バイト,ボイスチャットの使用率は10%などなどといった仕様のゲームの場合,4コアCPUでメモリ8GBのサーバーが2台必要となり,通信費用は1か月410万円程度になるとのこと。ルームあたり3人の仕様にすれば,通信費は300万円ほどになり,パケットサイズを150バイトに抑えれば通信費は230万円程度になる。こういったことが簡単に分かれば,ゲームデザインの時点でコストのコントロールがしやすくなるわけだ。
講演に続いて,このようなMRSとMUN,そしてVR Voice Chatを使ったデモが行われた。会場内には10台のViveが持ち込まれており,10人が赤チームと青チームの2チームに分かれて玉入れゲームを行うというものだ。フィールド内の台にある円柱形のボタンを押すと数個の立方体が出現するので,それをつかんで,空間に浮かぶバスケットゴールに入れるという簡単なゲームになっている。立方体は,それぞれのチームのプレイヤーがつかむとそれぞれのチームカラーに色が変わる。赤と青のゴールが空中を浮遊しており,自分の色のゴールに入れると点が加算され,相手の色のゴールに入れると,相手の点が減算されるのでどちらに入れてもかまわない。
会場では密集状態でViveのベースステーションが並んでいたため,ときどき干渉してひどいことになっていたりもしたが,これだけの人数でVRゲームをプレイする機会はそうそうない。単純なゲームでもそれなりに楽しめた。ボイスチャットや通信状態についてはまったく問題なしだ。今回に限っては,ボイスチャットが必要ないくらいみんな密集していたのだが,ネットワーク越しでも10人分の音声が十分クリアに再生されていた。
ただ,ゲーム中はどうもボタンの機能をちゃんと理解していなかった人が多かったようで,「円柱がつかめない」「奪い合い凄すぎて取れない〜」といったチャットも聞かれた。事前に「ボタンを押すと玉が出ます」のような説明があったのだが,私も練習時間の途中まで白い円柱がそのボタンだとは気づかなかった。ボタンに触れたときに長さが変わるとか音がするとか,作動のリアクションがほしかったところだ。ちなみに,メディア関係者中心の回のゲーム結果は60対-17くらいの大差で我が軍,青チームが勝利した。
ちなみに,今回の発表内容はMRSとMUN,つまりUnityに特化したものだったが,MRS自体はUnreal Engineなどでも利用可能だ。Unreal Engine用のパッケージ製品も今後投入予定とのことであった。
しかし,なんというかこれまで「Unityで手軽にネットワークゲームを作れそうなプラグイン」という感じだった製品が,一気に「本格的なMMOまで作れそうなシステム」になってしまった。常々,本城氏がが公言しているように,モノビットは本格的なMMORPGを作るために設立された会社である。ネットワークゲームの基礎技術を磨いているのもその一環だが,最近ではVR分野の開発も多く手がけ,いまでは大型VR MMORPG制作を目指しているという。一方でCTOとして参加した中嶋氏は「gumonji」やシンラテクノロジーでのワールドシミュレータ的なデモ,サンドボックスアクションRPGの「AirshipQ」など,インタラクティブなワールド作成に情熱を燃やす人でもある。今後この会社からどんなものが生み出されていくのか少し楽しみだ。