FreelyApps

個人によるアプリ開発の日記です。アプリの収入だけで生活できるようになるのが目標です。UnityでAndroid向けのゲームアプリを作成しています。


    アプリ『トランプ・ジン・ラミー』を公開しました。
    Android/iOS https://goo.gl/PYKFYG

    タグ:ツール

      このエントリーをはてなブックマークに追加 Clip to Evernote
    『走れユニティちゃん!』のアップデートを行いました。
    ver.1.1.0になります。

    更新したことは前回の記事で挙げたように敵にぶつかっても操作不能にならない条件を追加したことです。

    unitychan-KR-ver1.1.0

    上の画像の左上のところにハートの絵が出ています。
    これがHPのようなものです。HPが0でもゲームオーバーにならないですが、敵に当たると操作不能になります。
    HPがあるときは敵に当たってもそのまま走り続けられます。



    今回、アップデートについて一番大変だったのが画像の用意です。
    ハートの画像なのですが、自分で描いています。
    『走れユニティちゃん!』の絵は、基本的にユニティちゃんの公式ページからDLできるパッケージから持ってきています。
    その中にはハートの画像が含まれてなく、自前で何かを用意する必要がありました。
    フリー素材で使いやすそうなものがなかったため、自分で描くということを選びました。

    heart.png

    これを作るときに使ったエディターがあります。
    EDGEというツールです。
    ドット絵を描くためのツールでフリーソフトです。
    インストールがファイルの解凍だけですし、直感的に使えるので良いと思います。
    また解説動画などが多いので、困ったことがあっても調べられます。

    なんとかハートっぽい絵が描け、そんなに違和感なく馴染んでいると思います。
    このハートの絵を描くのに2時間くらいかかってます。
    時間がかかりすぎなのにそこそこの出来です。

    絵を描いて用意するというのはやはりハードルが高いです。
    納得いく絵やゲームに合ったものを使いたいということは当然あるのですが、それを行うには自分で描くしかありません。
    ただ見た目にこだわりすぎてもゲームができるわけではないので、ほどほどにしておくことが必要です。

    自分で絵を描いてみることで難しいということを実感しました。
    体験することで次回以降どうしようかと考えさせられるのだと思いました。

      このエントリーをはてなブックマークに追加 Clip to Evernote
    使っているPCとソフトウェアについてまとめておきます。
    徐々に変わってくるものだと思いますが、現時点2015/4/3での環境です。

    PC
    • 機種 自作のデスクトップパソコン

    • OS  Windows 7

    • CPU Core i7 3.4GHz

    • メモリ 16GB


    ソフトウェア
    • Unity 5.0.0p3

    • GIMP

    • Microsoft Visual C# 2010 Express

    • サクラエディタ

    • TortiseSVN

    • Google Chrome

    • Mozilla Thunderbird



    Unityを中心にバージョン管理ソフト、画像を編集するソフト、エディター、ブラウザ、メールクライアントといったところです。
    ゲームを構成するプログラム、絵、音に関係するソフトとそれ以外に大別できます。
    それ以外というのはバージョン管理ソフト、ブラウザ、メールクライアントになります。
    これらは、なくてもゲーム制作ができます。複数人で開発するとか、できたゲームを公開するとか、調べ物をするとか、外部とのやり取りなど対外的な活動で必須です。

    ゲームを構成する要素として、上ではプログラム、絵、音を挙げました。
    一般的にはそれが含まれています。プログラムというのはユーザーの入力・処理を行うので、プログラムがないゲームはあり得ません。
    珍しいとは思いますが、絵や音はないこともあります。演出的な意図や制作者の都合によるのでしょう。

    ソフトウェアの項目を見ると、FreelyAppsはプログラムに偏っています。それは単に個人の能力的な問題ですが、できる限り絵と音にも力を入れていきたいと思っています。

      このエントリーをはてなブックマークに追加 Clip to Evernote
    管理をする環境を用意するのが一番大変です。
    作業する準備は色々な方法がありますが、私がやっている手順で説明します。

    Subversionが管理するフォルダを作り、そのフォルダの下にUnityが管理するプロジェクトを作ります。Unity上で設定をすることでバージョン管理に対応したUnityのプロジェクトになります。
    バージョン管理に対応したというのは、元に戻したり、他のパソコンで作業できるようにしたりといったことが対応できるようになります。

    以下で具体的な手順を説明します。
    TortoiseSVNを使うことを前提にします。表示されている画像では日本語パッチを当ててないので、コマンド名は英語です。それ以外のクライアント等は適宜コマンドを変えてください。



    まずSubversionの管理するフォルダを2つ作ります。中身がなければ、どこにあってもかまいません。ひとつはリポジトリ、もうひとつは作業用のフォルダになります。
    リポジトリは作業の全データを保存するデータ置き場と考えてください。

    リポジトリの作成は、
    make-repo.png
    のようにリポジトリにしたいフォルダを右クリックし、Create Repository hereを押します。
    フォルダ構造をどうするか聞かれますが、そのままOKで大丈夫です。(SVNに詳しい人は自分なりの設定で良いと思います。)

    リポジトリができたら、作業用のフォルダを準備します。
    make-work.png
    作業用にしたいフォルダを右クリックして、SVN Checkoutを選びます。URL of repositoryというのがリポジトリの場所を表すので、先ほど作成したリポジトリを指定します。指定したら、OKを押してチェックアウトが完了します。

    作業用のフォルダには「.svn」というフォルダがあるだけになっていると思います。
    これはSVNが管理するフォルダなので、触らないでおきましょう。

    次にUnityのプロジェクトを作成します。
    プロジェクトを作る場所は、先に作った作業用フォルダの下にしてください。
    プロジェクトを作ってUnityを終了させれば、このようなフォルダ構造になっているはずです。

    作業用フォルダ┓
              ┣.svn
              ┗Unityのプロジェクトフォルダ┓
                                 ┣Assets
                                 ┣Library
                                 ┗ProjectSettings

    Unityのプロジェクトフォルダ以下を管理するのですが、このままだとできないのでUnityである設定を行います。Unityでこのプロジェクトを開き、メニューEdit->Project Settings->Editorを選びます。
    open-edit.png
    インスペクタ上で設定項目があるので、以下のようにします。
    Version ControlのModeをVisible Meta Filesにし、Asset SerializationのModeをForce Textにします。
    Version Controlの方は、バージョン管理に必要なmetaファイルを作る設定です。
    Asset Serializationは必須ではないのですが、Unityが作るファイル(シーン、プレハブ、マテリアルなど)をバイナリではなくテキストの形式(YAML)で保存するようにするものです。管理しやすくなるので、Force Textに設定しておいてください。
    versioncontrol-setting.png

    Unityを終了させ、Unityのプロジェクトフォルダ下にあるLibraryフォルダを消します。metaファイルがあれば、それから再作成されますので一旦消してください。

    作業用フォルダに戻り、SVNの管理にファイルを追加します。作業用フォルダで右クリックをし、Addコマンドを選びすべてのファイルを追加してください。
    svn-add.png

    追加が終わったら、右クリックしたメニュー中からSVN Commit...を選んでください。
    以上でUnityの作成したプロジェクトがSVNによって、管理されることになります。



    以下の内容はUnityのプロジェクトをSubversionで管理することの準備以降のことです。

    もう一度プロジェクトをUnity上で起動すると、Libraryフォルダが再度作成されます。SVNで管理する対象ではないので、Libraryは無視リストに入れておきましょう。名前で無視するという設定で良いと思います。

    ファイルが増えたときは、ファイルそのものとそれに対応するmetaファイルを追加してコミットしていってください。metaファイルを忘れると、Libraryフォルダを消したときに復元ができなくなってしまいます。
    定期的にSubversionの管理フォルダのトップで変更の確認かコミットを行えば、漏れがなくなるのでやっておくと良いです。

    Unityの公式ページにもバージョン管理について書いているので、読んでみる価値があります。

      このエントリーをはてなブックマークに追加 Clip to Evernote
    プログラムのソースコードはバージョン管理することが便利です。しなくてもプログラムできますが、しておくと後で必ず役に立ちます。

    どんなことをするかと言うと、ある時点でのプログラムを保存しておきます。この保存時にファイルには番号(バージョン)が振られます。どの番号のファイルも取得することができ、それに戻すこともできます。ファイルを消してしまっても番号を指定して取得することもできます。

    管理用の置き場があって、そこにすべてのファイルがバージョンごとに保管されているイメージで良いと思います。全部の履歴があるのだから、戻したり、見比べたりすることができるわけです。

    色々なバージョン管理用のソフトがあります。フリーソフトでも存在しています。
    私は、Apache Subversionというものを利用しています。コマンドラインでは分かりづらいので、クライアントとしてTortoiseSVNを使っています。
    クライアントは、コマンドとして命令しなければいけないものをアイコンのクリックとかのインターフェースにおきかえてくれる便利ツールです。
    Subversion(SVNとも)を使っているのは、慣れているからです。また無料であり、商用利用も可能なので面倒な問題がなさそうです。

    スクリプトだけがバージョン管理の対象かというとそんなことはありません。
    Unityの場合、プレハブやシーンなどすべてのアセットが対象です。
    ただし、スクリプトだけ管理する場合と違い設定すべきことがあります。それに関しては次回詳細を書いておこうと思います。

    バージョン管理というものがあり、それを使うと役に立ちます。
    新しいアプリを作るときは必ずすることにしています。しないと作れないほど便利です。 【スクリプトの管理について】の続きを読む

      このエントリーをはてなブックマークに追加 Clip to Evernote
    Unityでスクリプトを編集するときはMonoDevelopが基本です。
    良いところもありますが、私はこれをあまり使っていません。
    JavaScriptやBooでスクリプトを書くならこれでも良いと思いますが、C#の場合はVisual Studioを使う方が好きです。

    コメントを日本語で書きづらいのが、MonoDevelopの最大の欠点だと思っています。
    書けるけども確定するまで表示されないので、わかりにくいです。
    MonoDevelopを使うのは、デバッグのときとちょっとした編集の時です。

    Visual Studioを使うには、
    UnityのメニューのAssets->Sync MonoDevelop Projectを押せばVisual Studio用のファイルが作られます。
    Assembly-CSharp.csprojとか*.slnとかができるので、それを開けばスクリプトの編集が行えます。

    Visual StudioとUnityをもっと連携させる方法もあるようですが、とりあえず使ってみたいなら上記の方法が簡単です。

    このページのトップヘ