【Unite 2016 Tokyo】『昭和駄菓子屋物語2』 カジュアル放置ゲームでのUnityの使いかた

2016-04-05 20:44 投稿

カジュアル放置ゲーム開発の雄が語るUnityの利点と注意点

2016年4月4日、5日の2日間に渡って東京のお台場、ヒルトン東京お台場にて開催されているUnite 2016 Tokyo。

2日目となる5日、“『昭和駄菓子屋物語2』開発物語。~カジュアル放置ゲームでのUnityの使い方~”と題した講演が行われた。登壇したのは、GAGEXから配信中のスマホアプリ『昭和駄菓子屋物語2』の開発を手掛ける、2Dファンタジスタ代表の渡辺雅央氏。

DSC_0537

[関連記事]
※“もっと心にしみる”育成ゲーム『昭和駄菓子屋物語2』あの頃の思い出をかきあつめよう

本講演では、Unityを使用した2Dカジュアルゲームを作る際の、Unityを使うことによる便利なところや、気をつけたほうが良いところなど、Unity初級者に向けて渡辺氏が語った。

DSC_0552
▲2Dファンタジスタ代表の渡辺雅央氏。

主にスマホ向けカジュアルゲームの開発を手掛ける同社。渡辺氏曰く「(Unityは)もっと心にしみる育成ゲーム『昭和駄菓子屋物語2』から採用している」という。冒頭、本作のゲーム概要を紹介するとともに、開発期間に約4ヵ月を要したこと、ゲームデザイナー1名、エンジニア2名(ひとりがフル実装して、もうひとりはサポート)、アーティスト2名(ひとりは図鑑作成、もうひとりはUIや背景など)というスタッフの内訳を渡辺氏は明かした。

01

ところで、2DファンタジスタはなぜUnityを採用してゲーム開発を行うことにしたのか? 渡辺氏がその理由として挙げたのが下の3つ。

02

Unityはほかのエンジンと比べて、検索すると情報がヒットしやすく、「世の中にある正解を早く導き出しやすい」(渡辺)ため、その豊富な情報量が使う理由のひとつだと説明。

情報量が豊富なら利用しているユーザー数も圧倒的に多いのもUnityの利点。「開発が進んで作業ボリュームが増えてきた際、エンジニアを増やそうと思っても、あまり使ったことのないエンジンだと手伝ってくれる人が少ない」と渡辺氏。それがUnityであれば、(ユーザー数の多さから)手助けしてくれる人も見つけやすく、逆に手助けを必要としている開発に対して、「自分たちも助けられることもある」(渡辺)とした。

3つ目の理由である“適度なバージョンアップ(時代についていける)”。これは例えば、VR技術が注目されている中でVRに対応したいときや、新しいデバイス、ハードが登場したとき、あまり更新されないエンジンを使っていると対応できないケースが出てくるが、「ある程度、定期的に更新されているUnityならば、いろいろ対応しやすいと思う」と、渡辺氏は語った。

では、実際にUnityを使って開発を行う渡辺氏が考える、“ゲームを作る際にUnityが役立つポイント”とは?

DSC_0554

「当たり前のことですが」と前置きした渡辺氏。「UI、サウンド、セーブ/ロードが簡単に制作できる」(渡辺)とし、制作が面倒な部分がすでに用意されている、ある程度統合されているUnityは便利であることをポイントとして挙げた。

そして、調整が簡単に行える点も役立つポイントと渡辺氏は語る。

03

Unityなら、ゲームデザイナーがひとりでパラメーターなどを調整できる。また、実際のゲーム画面を見ながら調整ができるため、実際の仕様と違うものが上がったときにすぐに気づくことが可能で、調整のサイクルが早くなるのだ。渡辺氏は「ゲームはチェックすることと直すことを何回くり返しできるかでクオリティーが格段に上がる」といい、その両方の作業がやりやすいのがUnityであるとコメントした。

ほかにも、Unityはプログラムが楽に行えるため、すぐにゲーム開発が始められるところもポイントと説明していた。

04

逆にUnityを使う中で困ったことは?

05

ここまで、Unityを使ったゲーム開発のメリットについて語ってきた渡辺氏だが、じつは困ったこともいくつかあると言う。

それは、アプリ起動時間が遅いこと。渡辺氏によれば、「我々も当初、アプリ起動に1分近くかかった」そうだ。それでは「レビューで1が付いてしまう(笑)」(渡辺)ため、何が原因で遅くなっているのかをいろいろ調べてみたという。

06

そして、上の3項目を対策として紹介。まず、ゲーム内でものすごい数の画像を使っていたので、SpritePackerという機能を使用。複数の画像をひとつにまとめることで、ロードするファイル数を減らした。その結果、「格段に時間が短縮できた」(渡辺)

また、複数の画像をひとつにまとめる対策に比べると効果は低いものの、サウンドデータの設定を行い、起動時にあまり読み込まないようにして時間を短縮させる対応も。さらに、起動直後に呼ばれるシーンは最小構成にして、メインのシーンは非同期読み込みすることで、体感的な起動速度を上げるといった対応も紹介した。

この対応によって、「ゲームをプレイする分には支障のないところまで持っていけた」とは渡辺氏。「(これらの対応策は)我々が考えたテクニックでなく、ネットなどで調べたもの」(渡辺)と加えた。

07
▲ネイティブプラグインの実装について、「本当はやりたくなかったけど、SNS投稿、ローカル通知などのプラグインは自前で実装した」と渡辺氏。
08
▲オブジェクト実行順によるミスの事例と対応策についても語られた。
09
10
▲シーンファイルの競合の話では、Unity5.3から追加されたマルチシーンを利用してUI、ゲームデザイナーが調整するパラメーター、エンジニアがいじる部分に分けるだけで「相当事故は減ると思う」と渡辺氏はコメントした。

渡辺氏が明かす“作って良かった便利なもの”

11

ここで渡辺氏は、作って良かった便利なものとして、UI座標設定スクリプトを紹介。

12

UI座標設定スクリプトとは、アーティストがUIを置いてほしい場所にPhotoshop上で配置し、内製スクリプトからその座標を出力。エンジニアはオブジェクト名をPhotoshop上での名前と同じにする。そして、オブジェクトに座標設定用のスクリプトを追加するだけで、実行時に自動的に座標が正しい場所に移動するというものだ。

13

そのほか、各種エディターの拡張や、Prefabをうまく使うことがUnityのキモであること、便利だったUnityのサービスについて持てる知識を、本講演で渡辺氏は来場者に伝えた。

14
15
16
17
18
▲最後にUnityについてよく質問されることを紹介した渡辺氏。スライドを用いてその答えを発表した。
19
20
▲“エンジニアの腕が鈍るのでは?”という問いに、「やらなくていいことを増やす」と渡辺氏。
DSC_0575

 

もっと心にしみる育成ゲーム『昭和駄菓子屋物語2』

メーカー
GAGEX
配信日
配信中
価格
無料
対応機種
iOS、Android

Amazon人気商品ランキング 一覧を見る

最新記事

この記事と同じカテゴリの最新記事一覧