今回つくったもの
「クリスマス村の夜」というオンラインゲームを制作した。他のプレイヤーとクリスマス村を散策しつつ、空から降ってくるプレゼントを集めるという内容。
https://unityroom.com/games/a-night-in-the-christmas-village
記憶が鮮明なうちに、何を思ってつくったか、何に気をつけたか、反省すべき点はどこかなどを書き残しておきたいと思う。ちょっと取りとめのない文章になってしまったので、記事のタイトルは自分が強調したいことにフォーカスして付けた。
今回の製作テーマ
正直なところ、別にクリスマスのゲームが作りたかったわけではなく、たまたまクリスマスが近かったのでこういうゲームになった。私の中でのテーマは
-
- オンラインゲームをつくる
- モデリングとアニメーションを自分でつくる
という2点だった。オンラインゲームに関しては、単純につくり方のプロセスに興味があったから。PhotonというAssetを使えば簡単にできるという話を聞いたので、今回挑戦してみた。また、モデリングに関しては、Blenderの基礎的な使い方を勉強したかったので、今回はAssetのモデルを使わずにゲームをつくることにした。とはいえ、いきなりBlenderでゼロからモデルをつくるのは少し敷居が高く感じたので、MagicaVoxelで作成した3DのVoxelモデルをimportして、アニメーションをつけた。
製作にあたって心がけたこと
とにもかくにも締め切りを決める。これ大事。遅くとも12月25日までには公開することを目標に作業を進めた(最終的に30分程度遅れちゃったけど)。今までのUnity 1週間ゲームジャムの振り返りでも締め切りの大切さは語っているが、明確な締め切りを決めずにダラダラ続けると「あの処理も入れたい」「この処理も入れたい」という気持ちが無限に湧いてきて、いつまでもゲームをリリースできなくなる。「イマイチなところがあっても後でアップデートすればいいや」という気持ちで、勇気をもって公開することが大事だと思う。
ちなみにアップデートは高確率でやらない。でもいいじゃん、公開しないより。
こだわりポイント
モデリングは全て自分で行う
今回モデルを自分でつくると決めたのは、MagicaVoxelとBlenderの操作に習熟することが主目的だった。目的に沿うように、極力アセットは使わない方向で行った。結果的にMagicaVoxelのモデリング速度はかなりあがった。また、Blenderに関しては全くの素人だったが、今回のゲームづくりを通して、基本的な操作やアニメーションづくりのプロセス(BoneやKey Frameの設定など)をググりながら学ぶことができた。
余談だが、私は趣味の創作に関して教科書的な本を読むことはほとんど無い。なぜなら分厚い本を読み終わるまでに、自分が飽きてしまうことを知っているから。何か目標を決めて、それに対して必要なことだけググって実装していく方法が自分の性にあっている。
ゲームプレイの敷居を下げる
オンラインゲームをつくるにあたり、なるべくゲームを始めるまでのプロセスを簡単にしたかった。個人製作のカジュアルゲームを遊ぶ多くの人は「ブラウザでパッと開いてパッと遊び、少し楽しんだらさようなら」というのが基本的なスタンスではないかと思う。大手ゲーム会社や有名クリエイターがつくったゲームならいざ知らず、私のような無名の一般人がつくったゲームであれば、遊んでもらえるだけでも御の字である。
せっかくゲームのページを開いてもらったのに、ログインだのルーム作成だのとゴチャゴチャさせて、訪れた人がUターンしてしまわないようなつくりにすることを心がけた。また、ネットでのチャットは抵抗感がある人もいると思うので、今回は実装しなかった。まぁ実装する時間も無かったんだけどさ。
勉強になった&今後に活かしたい点
ゲーム中のモデルを全部自分でつくってたらメチャ大変
今回はMagicaVoxelとBlenderの練習のために自分でモデリングしたとはいえ、サンタ、トナカイ、雪だるま、家、木、プレゼントを全てモデリングするのはなかなか骨がおれる作業だった。自分でモデリングするものが増えるほどゲームに愛着が湧くのは確かだが、作業効率・ゲームクオリティ・ゲームへの愛着を高いレベルで実現するためには「主要なキャラはモデリングするけど、舞台とか小物はアセットで済ます」という姿勢も必要かなと思った。
例えば、もし今回のゲームを作り直すとしたら「サンタ、トナカイ、雪だるまは自分でつくるけど、家、木、プレゼントはアセットで済ます」とするのが、作業効率・クオリティ・愛着を最適化する選択な気がする。
オンラインゲームづくりにはローカルとオンラインという2つの視点が必要
Photonを使って別々のプレイヤーが操作するキャラクターが同期して動いた時は「な~んだ簡単じゃん」と思ったが、本番はその後だった。自分が操作するローカルのキャラクターと、別のプレイヤーが操作するキャラクターの処理を切り分けるのが大変だった。
たとえば「自分の画面だけにUIで文字を出したいのに、他のキャラクターを操作しているプレイヤーにもその文字が見えてしまう」など、細かい部分での調整が面倒だった。一つ一つを見ていけば対策はあるし、大した処理ではないが、ローカルとオンラインという2つの視点が必要だなぁと感じた。
最後に
長くなったが、自分の狙った内容は実現できたので、今回のゲームづくりの目標は達成できたと思う。名前も知らないプレイヤーと自分がつくった箱庭を歩くのはとても楽しい体験だったし、自分でキャラクターや小物をモデリングしただけあって、非常に愛着の湧くゲームになった。本当はもう少し効果音やエフェクトなどの演出面も詰めたいところだが、次のゲームのネタもあるので、今後はそちらに取り組みつつ、気が向いたらこのゲームもアップデートしたい。毎年クリスマスにアップデートするとか良いかも。
おまけ:私のクリスマス
クリスマスは家で奥さんと2人でパーティをした。奥さんの料理もケーキも美味しくて、とても楽しいクリスマスだった。私は料理は得意ではないが、ステーキの焼き方だけはそこそこ自信が持てるようになってきた(笑) ずっとPCに向かっていると煮詰まってしまって効率も悪いので、これからも楽しいイベントを挟みつつ、ゲームづくりを楽しんでいきたい。↓こちらが料理。私はステーキを焼いただけ。