Unityでゲーム作成、それ以前

皆さま、お久しぶりでございます。ブログ更新がずっと滞っておりましたことをお詫びいたします。また、見に来てくださると、幸いです。

さて、わたくし、実はそこそこいいおっさんの年齢なのですが、最近、ゲームにハマりまして。とくにSteam系のPCゲーム、これが面白くてですね、毎日やっておりました。

そこでふと、「ゲーム自分で作ったら面白いんじゃない?」と思い立ちまして、思い立ったが吉日野郎、急遽ゲームを作ることになりました。

さて、ではどうやって作るかとWebで物色しておりますと、Unityが凄い!という意見が多く、こりゃわたしもはじめて見るか!と、相成った次第です。

さて、そこそこ開発業務に携わってきた身、Unityを知らないわけではなかったのですが、ゲーム作成は初めて、さらにそれをUnityで作るのも初めてとあれば、やはりなんらかの指南が欲しく、とりあえずいくつか本を探して、とっつきやすそうなものを買いました。

今回はこちら

「Unityの寺子屋」という入門書です。目標であるスマホゲーム開発入門がタイトルにあり、作者のいたのくまんぼう氏もスマホゲームをいくつか当てているという点で選びました。このリンク先のAmazonのページではUnity入門向けの書籍が結構出ていて、見るだけでそこそこ「これいいかも」的な書籍が見つかるかもしれません。

というわけで、まずはこのUnity本にてお勉強の開始です。

Contents

統合開発環境Unity

Unityってなんぞや

それではまずUnityについてお勉強したことを簡単に発表します。

Unityは一言で言えば、マルチプラットフォーム向けのゲーム開発環境です。といっても、かならずしもゲームだけに限らず、高度なアニメーションや、AR、VRコンテンツなども作成できるため、様々な分野で活用されています。

また、マルチプラットフォームとは、Unity自身もそうなのですが(WindowsとMac及びLinuxで動きます)Unityで開発したゲームが、マルチプラットフォーム向けにビルドできるようになっているわけです。

わたしの以前の知識では、Android用の開発環境、iPhone用の開発環境、またPC向け、コンソール向け、などそれぞれ独自の開発環境が必要だったと思います。(一部マルチプラットフォームのものもありましたが)それが、一度にどのプラットフォームに向けてもビルドができるというのは、とんでもないカルチャーショックでした。

とにかく、Unityはとんでもなく高性能な統合開発環境だということです。

Unityでandroid向けもiphone向けも一緒に作れるんだ!

と、わたしも思っておりました。

これは間違っているわけではありません。Unityのビルドセッティング画面はこうなっています。

ご覧のように、iOSでもAndroidでもPS4でもXboxでWindowsでもなんでも来いです。

しかし! これはビルドできるというだけです。

Androidアプリは、Google Playに登録してビルドファイルをアップロードすれば、Windowsマシンからでもmacマシンからでも公開できます。

一方iphoneアプリは・・・、macマシンからでないと公開はできないのでございます(´;ω;`)

つまり、そこはUnityでは如何ともし難いので、mac持ってない奴は、mac買ってiphoneアプリ登録せなあかんで、ということ。

なかなか世知辛い世の中でございますなぁ。

どうせゲームを作るなら、たくさんの人に見てもらいたい、知人友人にもドヤりたいというのがありまして。

シェアは減ってきたと言っても、まだスマホ持ちの半数はiphoneです。やはりいずれはmac買って、iphoneアプリ申請が必要・・・お金ないっす(´;ω;`)

とまあ、先々のことはおいておいて、とにかくUnityの凄さが伝わったところで、勉強開始です!

UnityとVSCodeで開発

unityのテキストエディタ

unity自体は以下のような画面構成になっておりまして、ここで様々な設定やらアニメーションやら設置やらアタッチやらを行うわけです。

 

しかし、スクリプトを書くエディタに関しては、「勝手に選んでどうぞ」的なスタイルで、デフォルトエディタはMonoDevelopというツールです。

スクリプトを書くといっても、最近のバージョンのUnityはC#オンリーで書くので、C#がかけるエディタならなんでもOK、というわけで色々情報収集してみた結果、VSCodeが良さげだとなりました。

VSCodeってなに?

VSCodeはMicrosoftがフリーで出しているエディタで、結構な高性能、かつ多くの言語に対応しており、さらに拡張機能もたくさんという、MS最近頑張ってるなぁ的なエディタです。

VSCodeで検索すれば一発で出てきますし、インストールなどめっちゃ簡単なので、省略しますが、拡張機能には必ずC#を入れる必要があります。(当たり前ですが)

さらに拡張機能にはUnity向けのものも多くあり、お役立ち間違いなし。

わたしの環境での拡張機能は現在模索中なので、まだバチッとご紹介できないのですが、近いうちに紹介したいと思います。

Unity + VSCodeの罠

コード補完が効かない?

さあ、ここからが実は本題だったりします。

Unityをインストールして、VSCodeも入れて、本も開いて、さあサンプル作ってみるぞ! と勢い込んだわたしですが、スクリプトを書くところにきて、VSCodeがコード補完してくれていないことに気づきました。

コード補完は最近のエディタには大概入っているので、まさか天下のMS様のエディタができないはずはない、とさあ、調査開始です。

すると、最初に出てきたのは、Unityからみの設定についてでした。

どうやらプロジェクト内にある「.csproj」ファイルがいかんぞと、それを消して、Unityからもう一度開けと、さすれば道は開かれんと、こういうわけです。

プロジェクトフォルダ内にある、赤線を引いてある「.csproj」ファイルを削除します。(あとの操作でまた作成されるので、消しても大丈夫です)

AssetsメニューのOpen C# Project(赤丸)を押下すると、新しい.csprojファイルが作成され、VSCodeが立ち上がります。他のサイト様ではこれで補完が効くようになるとこのと。

どれどれと勢いよく立ち上げます。

・・・しかし、相変わらず補完されない!(´;ω;`)

OmniSharpがなんか言ってる

いろいろ調べていくうちに、そもそもVisualStudioではなく、VSCodeでは.NET Framework周りが違うらしく、VSCodeにてC#を書くためのOminiSharpがエラーを吐くという情報をゲットしました。

そして、ようやくコンソールを確認(笑)

おお、出てます! 何やら英語でいろいろ仰ってる!

どうやら、.NET Frameworkのバージョンが違うと言っているようですね。

親切にも「こっからダウンロードして入れろや」とURLまで出してくれています。では早速、URL先に飛びます。

このページのDeveloper Packをダウンロードしてインストールします。

するってえと

出た! ちゃんとコード補完もできるし、メソッドなんかのコメントもでてきました。

いやあ、為せば成るもんですね。

これでようやくまともにコードが書けるようになりました!補完なしではツラタンなダメプログラマです(´;ω;`)

そして、記事にすると結構サクサクと進みましたが、まぁまぁ調査やトライアンドエラーに時間がかかって、もうそれだけで疲れちゃいました。

まとめ

開発環境構築

現役のエンジニアの頃からそうでしたが、これが意外にハマる穴多いですし、ハマるとなかなか抜けられない。

同じような環境の例と解決策を見つけても、微妙な違いでうまく行かない、しょうがないから片っ端からトライアンドエラー→めっちゃ時間だけが消費される。

という「いつものこと」が起こります。しかし、それも勉強だ! という強い心で進みましょう。

さすれば、多分、道は開かれます。きっと、おそらく、まぁちょっとは無理かも。

今後の予定

基本的にはしばらく本を買ってはサンプル作って、色々慣れていく必要がありそうです。サンプル作りでハマったところなど、書いていけたら、皆さんのお役に立てるかもなぁと思っています!

結構すでに何冊かUnity本を買っていますので、本のレビューみたいなのも書いていこうかなと思っていますので、また見に来てくだいね!

ゆっちーぬ

マイニングPC(リグ)の自作をはじめたら、やめられないとまらない状態に。ここはHeavenですか? リグを一から作るためのパーツを紹介しています。 また、ethosの設定やNicehashプールでのマイニング方法なんかを解説していきます。

Share
Published by
ゆっちーぬ

Recent Posts

水冷PCおもらしの巻

皆様、お久しぶりです。ずいぶん…

3年 ago

低価格デジタルオシロスコープを物色してみる

いきなり涼しくなりましたね。皆…

6年 ago

ツールボックスめっちゃ便利よ

突然ですが、皆さん、ツールボッ…

6年 ago

アセンブリをアセンブラでアセンブル

夏の暑さも和らぎ、朝晩、涼しく…

6年 ago

水冷PCが渇水しているようです

京の都の水源は琵琶湖です。 今…

6年 ago