始まりました放浪軍師のアプリ開発。今回からゲーム開発やxR開発で最近脚光を浴びる Unity に手を出して行こうと思います!
実は去年の始めに Unity に手を出す宣言してから1年以上も空いてしまったのは内緒だ!
尚、私の Unity の知識は現時点では皆無と言ってよいので、 Xamarin の時のように右往左往しながら開発する様をお見せすることになると思います!なーに、最終的には習得できるさ!
Unity って何ぞや?
Unity とは、ゲーム開発や3Dに特化したゲーム開発環境(IDE)。今まで学んできた C# が使えるらしいので多分余裕でしょう!(フラグ)
インストール方法を調べる
当然ですがまず Unity をインストールせねばなりません。何を使うのかを調べてみました。
Unity Hub
Unity は Unity Hub というインストーラーを用いてインストールするのが一般的なようです。こちらからダウンロードできます。
使い方は非常に単純で、ただ指示に従って進めるだけです。もしわからない場合はググればいくらでも記事が出てくるようなのでそちらを参照してください。
Visual Studio
Unity は前述したとおり IDE ではあるのですが、C# のコードは VisualStudio でも記述できるようです。使い慣れた環境で開発できるのは非常にありがたいですね!連携方法は以下に載っています。
流行を調べる
さて、開発する前に調べたい事があります。それは Unity で開発する際の現在の流行です。これはプログラミングの世界では結構重要な事で、常に流行を気にかけておかないと、「これはレガシーコードだ!ぶっ転がせ!」という過激派プログラマがマサカリを持って襲ってくるので気を付けましょう(冗談です。半分)。ここで言う押さえたい流行を Xamarin.Forms で例えるなら MVVMパターン Prism ReactiveProperty あたりでしょうか?この辺を最初から押さえておけば、後から知るよりずっと楽できるはず!と思い調べてみました。
MV(R)P パターン
やはりありましたソフトウェアアーキテクチャパターン!最近の流行はどうやら MV(R)Pパターン というものらしいです。これは Model-View-Presenter に役割を分割して開発する方式で、MVVM に似たような概念で開発するようですね。当然ですがすごく重要かつ難しい部分になるかと思います。気になるのはMV(R)Pの(R)部分ですが、これは MVP を ReactiveProprety を使って構成するという事を指すそうです。このMV(R)P パターンについてはいくつか記事がありますが、 とりすーぷ (@toRisouP) | Twitter さんの以下スライドが分かりやすかったです。
www.slideshare.net
ReactiveProprety(UniRx)
あ、これ Xamarin.Forms でやった奴だ!ラッキー!と思ったんですが、
UnityとXamarinで使えるReactivePropertyは、同じ感覚で使えるだけの別のライブラリーから提供される同じ名前のクラス(作者は同じ)なのでお気をつけて
— かずき(Kazuki Ota) (@okazuki) 2020年1月22日
というお言葉を ReactiveProprety のメンテナーであるかずきさんに頂きました。どうやら元祖 ReactiveProprety とは似たようで違うらしいので注意が必要です。でもまぁ元祖の知識はかなり生きるでしょう!ありがたい!詳しくは開発者である neuecc (@neuecc) | Twitter さんの記事を見るのが良さそうです。
GitHub for Unity
バージョン管理システムである Git は最早必須と言って良いと思いますが、Unity から直接 GitHub と接続できる GitHub for Unity というものがあるようです。
Visual Studio 2019 同様、IDE から気軽に Commit できるというのは大きなメリットだと思いますので真っ先にインストールしたいところです。使い方については さぎのみや (@saginomiya8) | Twitter さんの以下記事が分かりやすそうでした。
ただ、どうにも評判がよろしくないというような記事をいくつか確認したのが気になるところ。とりあえず使ってみて、無理っぽかったら他のツールを使った方が良いのかもしれませんね。
Voiceer
VTuber 向けトラッキングシステム Luppet の開発者でもある ねぎぽよ❣️/ニアちゃん👉 (@CST_negi) | Twitter さんが公開されているツールでぼいしあと読むそうです。これは Unity で開発するにあたって尤も重要なもので、こいつはなんと!セーブした時やビルドした時などの要所で音声を流してくれます!
…え?どこが重要なんだって?そりゃもちろん音声協力しているのが AVATAR2.0 一期生 結目ユイ ちゃんだからに決まってるじゃないですか!
VTuberがあなたの開発を応援してくれるEditor拡張、「Voiceer」を作りました!😊
— ねぎぽよ❣️/ニアちゃん👉 (@CST_negi) 2020年1月7日
コンパイルが終わった時、セーブした時、ビルドが成功した時…その他いろんな場面で声で応援してくれます!!
これでVTuber大好きUnityエンジニアを無限に働かせることが可能!!!!
声:結目ユイさん(@musubimeyui ) pic.twitter.com/oomONF6X29
なお、音声は差し替えが可能で、同じく AVATAR2.0 一期生である巻乃もなかちゃんが Voiceer 向けのボイス集を無料公開中ですので、そちらを使うこともできます。(なお、この音声はGitHub等の公開リポジトリに含めることも可能との事です。音声ファイルをMITライセンスにする事をお忘れなく)
モダンな Unity プログラマなら絶対に入れるべきですよね!そして A2P ( AVATAR2.0 の愛称) は推すべきですよねっ!!!ねっ!!!
まとめ
…とまぁ必要っぽい情報は以上になります。Xamarin で学んできた知識が結構使えそうで嬉しい限りですね!なお、他にもこれは最初に押さえておいた方がいいよ!というものがあったら是非とも教えてくださいませ。
ではでは!放浪軍師の Unity によるアプリ開発。これより始動じゃあああ!!!!