ゲームでは大量のアセットファイルを取り扱いますが、スマートフォンゲームにおいては、通信容量の制限やダウンロード時間、リセマラなどの要因から、 ゲーム開始前にすべてのアセットをクライアントのローカルにダウンロードすることがかならずしも最適とはいえません。
また、アプリケーションパッケージそのものにバンドルすることもストアプラットフォーム側の容量の制限から許されません。
このため、一部のダウンロードのタイミングを遅延させたり、バックグランドでダウンロードさせたり、オンデマンドで取得したり、といった様々な対策が取られていることが多いと思います。
この際に問題になるのは、最初に一括にダウンロードさせるのではなく複数のタイミングに分けてダウンロードさせるのだとして、 では、数千から数万の規模にもなる各アセットをいったいいつどのタイミングで落とすべきか、という点です。
適切に入稿先のディレクトリ構成を管理しつづけられればよいですが、実際の開発の現場においては、しばしば素材の使いまわしや企画の変更などによって、 こうした計画され、規格化された入稿の実現が難しいケースがひじょうに多く発生すると思います。
このセッションでは、データの関係性を専門に取り扱うグラフデータベースを用いて、マスタデータとアセットの各素材を関係づけることで、動的にアセットダウンロードの構成を生成する手法をご紹介します。
講演者プロフィール
鈴木 清人
経歴:
横浜国立大学工学部電子情報工学科卒。EDAツールベンダ、マーケティング系SaaSベンダ等を経て2013年グリー入社。
グリーでは内製BIシステム、「天と大地と女神の魔法」と「アナザーエデン」を担当。
大規模なトラフィックを捌く経験を求めて入社したものの、なぜか自らトラフィックを作りださねばならない立場に。
直近の「アナザーエデン」では、サーバ・クライアントのデータモデル、通信モデルのほか、アセットパイプラインやプロジェクト体制も含めたゲーム制作・運用システム全体の設計、実装を手がけている。
《講演者からのメッセージ》
数年前に日本のWeb界隈でグラフデータベースが紹介されていましたが、その後、実際に業務で使用しているという例をあまり見かけず、個人的に残念に感じていました。
グラフデータベースというと「データひとつひとつの内容そのものよりも関係性を管理する」ための専用のDBという認識の方が多いと思いますが、比較的静的なデータを扱うKVSとしても十分及第点の水準ですので、一人二役がこなせる賢い子という認識をひとりでも多くの方に持っていただければな、と思っています。