私はiPhoneアプリの開発から着手したので、XcodeでObjective-cを覚えながらSpriteKitも覚えながらゲームを作りました。
後にAndroidにも対応したかったので、AndroidStudioでJavaを覚えながらゲームを作りました。
その別々に作った両OS対応アプリをアップデートしようとした時に、とてつもなく手間がかかって次回はUnityで…となって今に至ります。
アプリをこれから作り始める人には、いろんなパターンがあると思いますが、私はどんな場合でもとりあえずUnityをオススメします。
例え、Objective-cに精通しててC#が分からない状態でも、勉強の必要があってもUnityがオススメです。
その理由をまとめてみます。
なんでUnityを選ばないのか?
色んな開発者がいるので、中にはUnityは使わないという方もいらっしゃいます。
その理由は様々ですが、メモリ管理の問題や容量が無駄に大きくなったりなど、アプリのクオリティを重視して選ばないという方が多いです。
そういう理由であれば、Unityを選ばないという選択肢は正解だと思います。
しかし、環境構築が簡単だから、既存のスキルで開発ができるから、Apple純正の開発環境だからなどという理由でXcodeを選んでいたりする場合は一度考え直して欲しいと思っています。
勉強に数ヶ月費やしてもUnityを覚えろ!
UnityのメリットはiOSとAndroidの両OSに対応できます。
別々で開発する場合は、少なくても2つの開発環境と言語を覚える必要がありますし、移植するのも簡単ではありません。
プログラムの経験が浅ければ、ソースの管理も上手くできないことを考えると1つのアプリに対して1つのコードで済むというのはメリットがとても大きいです。
アプリをアップデートしていくつもりであるならば、両OSに対応するためのコストはどんどん積み重なっていくわけなので、数ヶ月勉強にコストをかけたとしても収益を得られる時期までのトータルコストを考えたらUnityの方が断然有利です。
両OSに対応しないなんて考えられない!
中にはとりあえずiPhoneだけでいいや、とかAndroidだけしか持ってないからiOSは開発しないという方もいらっしゃるかもしれませんが、単純にDL数や収益が1/2になるだけで済むというわけではありません。
ヒットする過程で、口コミは重要な要素ですが、どちらかに対応していないだけで拡散力は激減するので、相当な機会損失を被ることになります。
また、iOSとAndroidのDL数と収益がちょうど五分五分にならないことも多々あります。
これはアプリの内容だったり原因は様々ですが、開発する側からも出してみないと分からないこともあるので、とりあえず両OSで出してみないといけません。
Androidだったらこういう年齢層で…とか分析したり考えられる時間があればUnity覚えてしまった方が確実です。
ググってコピペで解決!
Unityのメリットの1つに、情報量が多いということがあります。
プログラム経験が豊富で、ググらなくてもガイドライン(英語)を読んで疑問を解決できるレベルであれば関係ないかもしれませんが、これからという方だったらググって解決できるかどうかは重要です。
Unityは人気があるというのもあって、ほとんど知りたいと思うことは色んなブログなどにコード付きで書いてあります。
この調べるコストを考えると情報量が多いかどうかで開発に必要な時間が大きく違ってきます。
私も数年前に、SpriteKitで広告を表示する方法がわからず、試行錯誤で何とか解決したことがありますが、ググっても全然出てこないわけです。
それがUnityだったら何個も参考にできる情報がありますし、そもそも広告会社がサンプルコードを用意してくれたりしているのでかなり助かります。
Unityだけじゃない?
もちろんUnityだけじゃなく、他にも良い開発環境はあります。
が、特に思い入れがあるわけじゃなければUnityでいいんじゃないでしょうか?
cocos使ってる人でも最近はUnity使い始めたって話もよく聞きます。
まとめ
まだまだ挙げようと思えばUnityをオススメする理由はありますが、思ったより長くなってきたのでこの辺りでまとめます。
というか両OSに対応できるという理由があればそれで充分過ぎると思うので、是非検討してみて欲しいと思います。
数年後はまた違った環境で開発した方が良いって状況になるかもしれませんが、もともと技術の陳腐化が激しい業界なので、またその時覚えようって感じで良いと思います。
また、一度覚えたことが全て無駄になるわけじゃないというのも付け加えておきます。
せっかくObject-c覚えたのに、1つアプリ作っただけでまた違う言語覚えるのは…という気持ちも分かりますが、その経験は必ず役に立つのでどんどん浮気していきましょう。
基本的にはUnityはネットでググれば使い方から高度な情報まで網羅されてる感じですが、本で形式的に勉強したい場合は下記の書籍がオススメです。
プログラムもこれからだったり、基本を押さえたい場合はこれ↓
ゲームの作り方が知りたい場合はこれ↓
その中間(Unityの使い方中心)の場合はこれ↓
それと、教えたくないレベルにオススメなのがこちら。(Unityとは関係ないですが、アプリ作るなら必見)
コメント