Japan 公式ブログ
Google の企業向けソリューションに関する公式な情報やユーザーの事例などを、いち早く皆さんにお届けします。
[GCP] Google Cloud Platform が支える、新感覚リアルタイム RPG ユニゾンリーグ - 株式会社エイチームの GCP 導入事例
2014年12月15日月曜日
スマートフォンでゲームをする人なら「
レギオンウォー
」や「
ダークサマナー
」というタイトルの RPG で、実際に遊んだことがある人、あるいは今も熱中している人も多いのではないでしょうか。
開発している
株式会社エイチーム
(Ateam Inc.) は、名古屋に本社があり、エンターテインメント事業として、多くのスマートフォンやタブレット向けデジタル コンテンツの企画と開発を手がけ、一方でライフスタイルサポート事業として日常生活に密着した比較サイトや情報サイトの企画から開発、運営を行っています。
今回エイチームから、スマートフォン向けの新感覚リアルタイム RPG「
ユニゾンリーグ
」がリリースされました。複数のプレイヤーでリアルタイムに行われる、ギルドバトルとクエストバトル、そしてユニゾンアタック、仲間とリアルタイムにプレイすることの面白さが凝縮された RPG ユニゾンリーグ、そのバックエンドは
Google Cloud Platform
(GCP) で構築されています。担当された、エンターテインメント事業本部 安藤 加奈子さんにお話をお聞きしました。
今回リリースされた、ユニゾンリーグで、Google Cloud Platform を初めて利用されるそうですが、何か理由があったのですか
きっかけは、GCP の東京で行われたカンファレンス(4 月 22 日にグランドハイアット 東京で行われた Google Cloud Platform セッション)に参加したときです。そこで GCP は GCP のために作られたサーバ環境ではなくて、Google が自社のサービスのために作った環境を一般にも公開する形ではじめたサービスということと、バックボーンにあるグローバルのネットワーク帯域がかなり確保されていて、レイテンシが最小限であるという内容を聞きました。ユニゾンリーグは、日本と世界中で配信する予定のゲームでしたので、グローバルでのリージョン間の通信が速いところが魅力に感じて、使うのは初めてでしたけど、GCP を導入してみようと思ったんです。
初めてとなると困ることもあったと思いますが、どうやって進めていったのですか
あまり困った記憶はないです(笑)。インスタンスの生成とかも、コンソールから視覚的に直感的に触れるのであまり苦労しなくて、インスタンス立ち上げてしまえば普通のサーバで、好きなようにさわれますから。使いやすいのは、しばらく使わないと思ったら、そのインスタンスを削除して、また使いたくなったらスナップショットから立ち上げる。その細かい単位での使い回しがし易いことです。
リリース当初は、多くのユーザーの皆さんが利用することを想定していますが、想定よりも足りなかったときに、即座に対応できる体制は必要だと話していた中で、 同じ設定を展開する準備だけしておけば、すぐに同じサーバを追加できることはすごく魅力的です。そこはすごく大きいところです。
Google Compute Engine (GCE) インスタンス使い、どのようなアーキテクチャでユニゾンリーグは構築されたのですか
一般的な Web の、HTTP サーバがあるような構成ではなくて、WebSockets を使っています。ゲームをしている端末からHTTPのようにリクエストのたびにアクセスしにくるのではなくて、ゲームログイン時にアクセスすると、そのままずっとソケットを繋いだままにします。Java のプロセスが常時動いていて、そこに端末から直接接続しにくる形です。あとは一般的なデータベースを使っているくらいです。ロードバランサも使っておらず、ゲームにログインする前に振り分け用のプロセスに事前に接続先を問い合わせ、プロキシというよりは繋ぎ先を指示するような形で動いています。
このようなアーキテクチャは経験的なものなのですか?
エイチームは、フィーチャーフォンの時代から、フィーチャーフォン向けの MMORPG を 5 作くらい出しています。その経験があるため独自のパケットを TCP でやりとりして、リアルタイムに処理していくことには、ある程度ノウハウがあります。スケーリングに関しては当時のゲームでは、そこまで複雑なことはやっていませんでしたが、スマホのゲームでは、PCの MMO のように1 つのワールドに何百人も入るようなことをすると、そもそも画面の描画も追いつきません。そのため、従来のMMOと同じようにワールドを分けていくことになるのですが、ユニゾンリーグではワールドをユーザーには見せず、内部的に、閉じられたロビー空間というワールドに近いものを作り、どのロビー(ワールド)に行けばまだ空きがあるか、ということを動的にマッチングする方法をとりました。わりと素直な進化系なのかなと思います。ユーザーの皆さんが自分のログインするワールドを選ぶのではなく、自動的にマッチングしていく方式です。
開発プロセスだとかを含め、開発はどのように進めていかれたのですか
何かのアジャイルな開発手法を使って、だとかということはしてないです。だいたい毎週タスクミーティングといって、大きなロードマップとしていつまでにこういう機能ができている、という大きなロードマップから一週間毎のタスクに落としこんでいきます。それをこれは誰々にと担当者を割り振って進めてます。
プロジェクトごとに、プロデューサー、ディレクター、プランナー、サーバ開発者であるとか、プロジェクトに係わる人の席を近くにして、コミュケーション取りやすい環境にしているので、わりと現場手動で進めているところがあります。開発も、そのプロジェクトにいる間は変わったりしないですけど、もともと、バックエンドばっかりとか、フロントエンドばっかりというエンジニアが殆どいなくて、プロジェクト変わるたびに変わったりしているんですよ。なので両方の知識をだいたいのメンバーが持っていて、コミュケーションは取りやすいです。
今後 GCP の中で使っていきたいサービスはありますか
BigQuery
は早期に導入していこうと思っています。他のタイトルも含め、常に利用状況だとかの様々な指標を分析しているのですが、それをもっと効果的に分析していけるようにしたいです。
名古屋全体が見渡せるオフィスでは、スタッフの皆さんとすれ違うたびに声をかけてくれて、理念に掲げている「みんなで幸せになれる会社」を体現しているようでした。
新感覚のリアルタイム RPG ユニゾンリーグ、
Android
と
iOS
で遊べます。
GCE も BigQueryも、
GCP の全て
を今なら 60 日間で $300 分のクレジットで試せます。
(ユニゾンリーグ公式ホームページはこちら:
http://app.a-tm.co.jp/unisonleague/
)
0 件のコメント :
コメントを投稿
Labels
77 min Lunch
add on
admin
Android
API
App Engine
apps
atmosphere
Atmosphere Tokyo
bigquery
Case Study
Chorme OS
Chrome for Work
Chrome ウェブストア
chromebook
chromebooks
Chromebooks for Education
Chromebooks for meeting
Chromebooks for Work
Chromebox for digital signage
Chromebox for meetings
Cloud
cloud connect
Cloud monitoring
Cloud Ranking
compliance
compute engine
Deloitte
developers
Drive for Work
earth api
Education
enterprise
Enterprise Japan
event
Firebase
G+
gadget
GAE
GCE
GCP
GEO
GEP
GfWtips
GKE
gmail
Gmail、新機能
Gone Google
GoneGoogle
Google App Engine
Google Apps
Google Apps Blog
Google Apps for Work
Google Apps Script
Google Apps ユーザー事例
Google atmosphere
Google calendar
Google calender
Google classroom
google cloud platform
Google Commerce Search
Google Derive
Google Docs
google drive
Google Drive for Work
google enterprise
Google Enterprise Day
Google for Work
Google form
Google hang-out
Google hung-out
google map
Google maps
google maps api
google maps api premier
Google Message Continuity
google search appliance
Google Shopping
Google Sites
Google Storage for Developers
Google Video
Google Wave
Google スライド
Google ドキュメント
Google フォーム
GoogleApps
GoogleApps、ユーザ事例
GoogleApps、新機能、spreadsheets
groups
gsa
healthcare
iOS
iphone
ISAE 3402 Type II
ISO 27018
IT
japan
Lotus Notes
map
maps api
media
microsoft office
migration
mobile
new features
Office 365
partner
partner program
postini
pricing
research
RSA
SAS70
search
Security
seminar
Shizuoka
Signage
Sites
SMB
SSAE 16 Type II
SSO
startup
Status Dashboard
Trial
Upload any files
vault
Virtual Conference
VMware
あっぷす先生
あっぷす先生 誤解をとく!
あっぷす先生会社訪問
イベント
おしえて!あっぷす先生
オフライン
クラウド
サイネージ
サポート
テレワーク
ハングアウト
プライバシー
ランキング
企業検索
互換性
事例
新機能
働き方
Archive
2016
2月
1月
2015
12月
11月
10月
9月
8月
7月
6月
5月
4月
3月
2月
1月
2014
12月
2014年、Google のセキュリティへの取り組みについて ~総括~ 攻撃されにくく...
[GCP] gcp ja night #29 - BigQuery, Kubernetes, GAS...
Gmail、意図せぬ振る舞いへの対応(コンテント セキュリティ ポリシー)
「Google for Work マル秘活用術」 株式会社スペースタイム
[GCP] Google Cloud Platform が支える、新感覚リアルタイム RPG ユニゾ...
株式会社モバイルファクトリーも Google へ ゲームとリアルな世界がコラボした「駅奪取」に G...
【ご好評につき、第二弾!】クラウドって、本当はどうなの? セキュリティ、ROI、イノベーション 集中...
[GCP] dotCloud は、高速でより堅牢な PaaS を Google Cloud Plat...
株式会社ドワンゴもGoogleへ スマホアプリ「にじたび」開発に Google Maps API...
[GCP] Aerospike, Google Compute Engine 上の 50 ノードで ...
[GCP] Google Cloud Platform での Windows サポートを拡充しました
[GCP] Wix はマルチ クラウド構成で ハイ アベイラビリティ を達成
[GCP] ゲーム攻略完全図鑑は、Google Cloud Platform を使って、ゲームをして...
Google for Work および Google for Education のパートナープログ...
[GCP] 12 月 10 日 大阪開催 Google BigQuery ハンズオン セミナー
[GCP] Google Cloud Platform、PCI データ セキュリティ スタンダード認...
#77minLunch 株式会社ニューロマジック
[GCP] 11 月の Google Could Platform アップデートおさらい
11月
10月
9月
8月
7月
6月
5月
4月
3月
2月
1月
2013
12月
11月
10月
9月
7月
6月
5月
4月
3月
1月
2012
12月
11月
10月
9月
8月
7月
6月
5月
4月
2月
2011
12月
10月
9月
8月
7月
5月
4月
2月
1月
2010
12月
11月
10月
9月
7月
6月
5月
3月
2月
1月
2009
12月
11月
10月
9月
8月
7月
6月
5月
4月
3月
2月
1月
2008
12月
11月
10月
9月
8月
7月
6月
5月
4月
3月
2月
2007
12月
Feed
Follow @GoogleforWorkJa
Useful Links
Google Apps for Work
Google Cloud Platform
Google 検索アプライアンス
Google Maps for Work
企業向けソリューション
Google Apps公式アップデート情報
0 件のコメント :
コメントを投稿