Unityで簡単なゲームを作ってみたら自分の非力さを痛感させられた

この記事はだいぶ前に書かれたものなので情報が古いかもしれません
世界の国旗から2を例にUnityを使った簡単な脱出ゲームの作り方をYouTubeで公開しています。興味があればぜひ! → 動画一覧
シルエットルームからの脱出1

この記事を三行にまとめると

簡単な脱出ゲームを作ってみました
もうね、素材が全っ然集まんねえのよ
良い勉強になったように思います
先日知り合いが「Unity面白いよ」と言っていたので、ちょっと僕も触ってみようかと思いまして……実際に簡単な脱出ゲームを作ってみました。

シルエットルームからの脱出1

ゲームそのものの面白さはともかく、動作自体は問題ないはずなので、もしよかったら遊んでみてください。そして不具合があるようだったらご一報ほしいっす。



実際にUnityを触ってみた感想ですが、僕がすでにプログラマーとしてプログラミングの経験がすでにあるということを差し引いても、ゲームを製作する際に一番厄介なのはプログラミングの学習コストではないと思いました。

もうね、素材が全っ然集まんねえのよ。

例えば脱出ゲームの場合、一般的なパターンは部屋の至るところにある謎を解いたりアイテムをゲットしながら脱出を目指すという設定です。だから脱出ゲームを作るためには部屋の家具とか壁、床、天井などのグラフィック素材が必要になるわけですが、これがなかなかそろえられんのよ。フォトショップやイラストレーターなんかを使ってパパパーッと自作できりゃ良いんですが、残念ながらそんな技術もセンスもないので、素材はどこからか調達してこないといけない。しかしこれが思うようにいかなかった。

素材自体はネット上に豊富にあります。フリーで利用できる素材も無数にある。でもたとえいらすとやさんクラスに豊富な素材が提供されているサイトであっても、自分が望む素材が全てピンポイントでそろうとは限らないんですな。例えば時計のイラストはいくらでも見つかるけど、時計の針がクローバーの形をしているイラストは簡単には見つからない、とかね。さらに針がクローバーの形をしていて本体はダイヤの形をしているイラストとなるともっと見つからない。こっちが欲しいと思っている素材を探すのではなく、用意されている素材にこちらがアイデアを寄せればある程度は何とかなると思いますけど。

ドアとか机とかもそう。ドアや机のイラストはいくつも見つかるけど、同じドアのイラストで閉まっている状態と開いている状態の両方の素材が欲しいとかってなると、意外と簡単には見つからないんですよ。どっちかしかないことも少なくない。机も引き出しが二つある場合に、全部閉まってる状態とそれぞれの引き出しが開いてる状態の素材がそろっていることはあまりない。

いろんなサイトを巡回すればそろえることはできなくもないんですが、でもたくさんのサイトから素材を集めると今度は統一感が出なくなってしまう。床は写真素材なのにテーブルはアニメっぽいイラスト、みたいな感じでちぐはぐになっちゃう。だから素材はなるべく一つのサイトでそろえる方が理想的なわけですが、一つのサイトだけで欲しい素材を全部そろえるのは至難の技ということが今回よく分かりました。

今回の脱出ゲームを作る際にも、Unityの使い方を覚えたりコードを書いたりする作業より何より、素材を集めるのに一番時間がかかりました。たぶん製作にかかった時間の半分くらいが素材集めだったわ。どっかのMMORPGもビックリなくらい素材集めに奔走したわ。ネットという広大なフィールドを駆け回ったよ。

最終的にはシルエットACさんというサイトの画像を利用させてもらうことにしました。

シルエットAC

シルエットACさんの素材は写真やイラストっていうよりも図形やピクトグラムに近い感じなので、これなら足りない素材を自分で足せるかなと思いまして……ほら、色も白黒でシンプルだし、イラストは描けなくても図形の描画だったら何とかなるし。フォトショを使っても良いし、Unityにも一応、簡単な図形の描画機能はある。

そんな感じでできたのが上記のシルエットルームからの脱出1です。

MILD ESCAPEさんNeutralさんロバミミさんのようにUnityやFlashで脱出ゲームを作ってる方はたくさんいらっしゃいますが、彼らはいったいどうやってあれだけの素材を用意しているんですかね。自作にしろ集めてくるにしろ、たぶんかなりの労力を割いてると思うんですよね。すごいっす。マジ尊敬するっす。



あくまでも僕がUnityを使ってみた印象の話なので人によって手間のかかる箇所は違うと思いますが、でもプログラムが全く分からない人でも、Unityでゲームを作ろうと思った時に一番時間がかかるのはたぶんプログラムの部分ではないような気がします。プログラミングを覚えるのも楽ではないかもしれませんが、でもUnityはC#という言語でスクリプトを書くんですけど、よほど複雑な処理を必要とするゲームでなければそんなにコードを書かなくてもゲームが作れますし、サンプルコードみたいなのは検索すればいろいろ出てきますので、C#をマスターしなければどうあがいてもゲームが作れないってことはないと思います。僕もC#に関しては初心者ですが、今回はあまりコードを書かずに済みました。ドアをクリックしたら開くとか入力されたパスワードの正否を判定するとか、そんな程度です。

とりあえず一つゲームを作ってみて感触はつかめましたので、次はもうちょいゲーム自体のクオリティを高められるようにしたいと思います。脱出ゲームの醍醐味と言えば部屋をいろいろ移動しながらアイテムを集めるところだと思うのですが、今回は部屋の移動もないしアイテムもない謎解きオンリーのゲームになってしまいましたからね。もう少し頑張りたい。

でも素材を集めるのは大変だから、きっと次もシルエットACさんのお世話にはなると思います。シルエットACさん、ありがとうございます。この場を借りてお礼を申し上げます。



それからもう一つ。脱出ゲーム大百科さんという脱出ゲームを紹介しているサイトがあるんですが、こちらで本作を紹介していただきました。ありがとうございます。

上記のサイトは月間のPVが百万を超えるモンスターサイトですから、そこで紹介してもらえたらアクセスが増えるのは当然なわけでして……載せてもらってから半日足らずでうちの一週間分くらいのアクセスをあっさり超えてしまいましたわ。

んで、たぶん脱出ゲーム大百科さんで紹介していただいたおかげだと思うんですが、脱出ゲームのまとめサイトとか攻略サイトはわりとたくさんあるみたいで、それらのサイトにもババーッとリンクを貼ってもらえたようです。何せ公開した数時間後には「シルエットルームからの脱出」でGoogle検索すると、その手のサイトがすでに検索の上位に出てきてましたからね。Youtubeに攻略動画を載せてる人までいたよ。僕自身のサイトがまだ検索に引っかからないと言うのに……。

こういうのを見ると、アクセスの多いサイトの力ってすごいなと改めて感じさせられます。リンクを一つ貼ってもらうだけでこの拡散力ですからね。僕自身はほとんど影響力を持ってない人間ですから、SNSとかで情報を発信してもそれでアクセスが急増するようなことはまずないので、そのへんの力の差って僕が思っているよりもずっと大きいものなんだなって思いました。



そんなわけでですね。今回は単純にゲーム作りについて学んだだけでなく、大手サイトの影響力とかSEO的なこと、あるいはオンラインでの情報の拡散についても改めて勉強させられた気がします。

ほら、僕も一応、曲がりなりにも小説とか出版してますので、そういう自分の作ったコンテンツを認知してもらうための施策はいろいろ考えなきゃいけないわけで……今回のことはそういう意味でも良い勉強になったように思います。



追記(2020/02/02)

そんな僕ですが、最近YouTubeでUnityを使った簡単な脱出ゲームの作り方を公開し始めました(ページの上の方でも言ってますが)

動画作りに関しても完全に素人なんでまだまだ勉強が必要なレベルですが、Unityやプログラミングに興味があるという方は良かったらのぞいてみてください。

Unityで2D脱出ゲームを作ろう
 もしかしたら何か関連しているかも? 
 質問や感想などお気軽にコメントしてください