今回もUnity一週間ゲームジャムに参加しました。お題は「あつめる」です。
投稿したゲームはこちらです。
普段なら平日の仕事の暇な時に(笑)作っておくんですが、今回はずっと忙しく、締切一日前の土曜日まで全く手を付けられませんでした。
なので、一から作っていたのでは間に合わないと判断し、前回の「つながる」用に作ったプロジェクトフォルダをまるまるコピーして改造する、という形にしました。
前回は完全に2Dゲームだったのですが、今回はクォータービューにしたかったので3Dにしました。
クォータービューは元祖とも言える「ザクソン」から始まり、ナムコのメルヘンメイズやメガドライブのランドストーカーなど、ちょっと癖があるけど好きな人は大好き、みたいなゲームが多い気がします。
中でもサミー(当時はセガサミーではない)のViewpointはコンシューマに移植されておらず、曲の良さもあって今でもカルト的な人気があります。
3Dにするということでアセットを充実させなければ、と思い、アセットストアを探して下記を購入しました。
マインクラフトのようなキューブ毎の地形がたくさん入ったアセットです。
その中から水のキューブを選び、地形としました。
そして、水つながりでペンギンのアセットを購入(と言っても無料でした)
アニメーション付きのかわいいコウテイペンギンが無料とは!
そして、ペンギンなので水中を泳がせたいなと思って水を表現する方法を探しました。
いろいろあるのですが、Standard Assetを使うのが一番手軽そうだったので試してみました。
これを使って水中を表現したかったのですが、水の下にあるものが見えないくらい歪んでしまうので水中の表現は諦めて、地形の周りが海、という状態にしました。
また、タピオカとウニの3Dモデルは、Google Polyからお借りすることにしました。いつもはPolyからモデルファイルをダウンロードしてUnityにインポートしているのですが、Unity内から直接インポートできるアセットがあると聞いて、今回はじめて使ってみました。
ところが、WebGLビルドの際にScripting Backendを切り替えても警告が消えずにビルドできない状態になり困りました。これは、PolyのSettingsで、警告をoffにすることで回避しました。
今回はあらかじめダウンロードしたモデルしか使っていませんが、Toolkitを使うとAPIを経由してランタイムでのダウンロードができるらしいので、警告を無視するとその際に問題になるのかもしれません。
そして新たに、TextMeshProで日本語を表示することもやってみました。あらかじめ使いたい文字を決めておいて、それを使ってテクスチャを生成する、という方法になり、使いたい文字が増えた場合は再生成が必要と、結構面倒でした。(テクスチャ生成に時間がかかる)
それ以外は今回は新たな挑戦はなく、Collider2Dを通常のColliderにする関係でOnTriggerEnterに書き換えたり、ステージ生成のロジックを変更したりと、思った通り比較的短時間で完成できました。土曜日中にほぼ作り終え一旦アップロードし、日曜日の午前にバグとりや微調整、という余裕をもったスケジュールになりました。
その分今回は前回に比べてゲーム性の追求をほぼやっていないので面白さは微妙ですが、「既存の資産を活かしつつ短期間で作る」という訓練にはなったと思います。
ということで、今後もUnity1week皆勤を続けていきたいと思います。