FreelyApps

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


    ブログを
    https://freelyapps.net/
    に移転する予定です。
    リンク切れがある記事はこちらに移動した可能性もあります。

    タグ:Tips

      このエントリーをはてなブックマークに追加 Clip to Evernote
    Unityを再インストールするときに知っておいた方が良いことがあります。

    Unity自体を消してもUnityが自動で作成しているフォルダがあるので、それを残しておくとその設定が読み込まれます。完全にはじめからやり直すためにはそれらも消した状態でインストールをしなければなりません。インストール方法については以前の記事で説明しているので、それを参照してください。

    アンインストールでは消えないフォルダは以下の4つです。
    • C:/ProgramData/Unity
    • C:/Users/<ユーザー名>/AppData/Local/Unity
    • C:/Users/<ユーザー名>/AppData/RoamingLocalLow/Unity
    • C:/Users/<ユーザー名>/AppData/Roaming/Unity
    いずれも隠しフォルダなのでWindowsの設定で隠しフォルダを表示するようにしてください。

    C:/ProgramData/Unityの下にライセンスに関連するファイルが含まれています。公式での説明はこちらにあります。このフォルダを消すとライセンス認証用のファイル(ulfファイル)もなくなるので認証がやり直しになります。単なるアンインストールではこちらのフォルダが残るため、インストール後の初回起動時に行う設定がされません。Unityアカウントを作り直して、その新しいユーザーで認証したいといったときは役に立つと思います。

    C:/Users/<ユーザー名>/AppData/Local/UnityにはEditorのログとWebPlayerのアンインストーラが含まれています。

    C:/Users/<ユーザー名>/AppData/RoamingLocalLow/Unityにはブラウザのキャッシュ、GIのキャッシュ、WebPlayer関連のものが含まれているようです。このフォルダはよくわかりませんが、キャッシュ用のフォルダなのだと思います。

    C:/Users/<ユーザー名>/AppData/Roaming/Unityにはアセットストアからダウンロードしたアセットとエディターのレイアウト設定などが置いてあります。アセットストアからダウンロードしたアセットは.unitypackageの形式で置かれていて、これをダブルクリックするとプロジェクトのインポートできます。ダウンロードしたはずなのにUnityのウィンドウ上で確認できないアセットはここのフォルダからインポートすることで対応できます。

      このエントリーをはてなブックマークに追加 Clip to Evernote
    Unity で行った変更のいくつかはすぐにファイルに保存されているわけではありません。Unity 上では変更(プレハブの値の変更など)がすぐに反映されますが、それはおそらくLibrary フォルダ内への反映だと思われます。
    いずれにしろUnity を終了させたときに全ての変更がファイルに書き込まれます。

    バージョン管理を行っている場合は、Unity を立ち上げたままでコミットしてはならないということです。
    バージョン管理行っていない人はあまり気にしなくても問題ありません。 

      このエントリーをはてなブックマークに追加 Clip to Evernote
    GI(Global Illumination) はUnity 5 から使えるようになったライティングの機能です。
    光源からの光が物体に当たり、物体が反射する光がさらに周りの物体を照らす様子を再現するという機能です。
    具体的に言うと、青い立方体に白い光を当てた時周りにある物体は白い光と青い立方体が反射した青い光が当たりうっすらと青くなるということが起きます。どれくらいの影響があるかは反射光の相対的な強さ次第なので、調整が必要です。
    GI を使えば万能かというと違います。なぜならGI は現実の法則に則っていないからです。物理的な法則を計算するには計算しなければならないことが多すぎて現実的な時間では解けないのです。そのため、それらしい絵を作ることができるのがGI ということになります。

    GI の説明をしたところでなんですが、今回はGI を無効化する話になります。Unity 5 ではデフォルトでGI が有効になります。シーンごとにこれは設定できるものです。GI 自体もそれなりに重い処理なので、あらかじめテクスチャに計算結果を書き込んでおきそれを実行時に使うということをして高速化を図っています。
    そのテクスチャはシーン内の情報を書き込んだものなので、かなり大きなテクスチャになりがちです。シーンを多用したモバイル向けのアプリではこれを見過ごすことができないくらいの容量になっていくと思います。(私の場合だとシーンごとで1MB くらいとっていました)

    アプリの大きさが大きくなるのは提出できなくなる恐れもあるので困ります。Google Play に提出するなら50MB が限度です。描画の質を下げたとしてもGIを切ることで容量制限を回避できるので、GIを切ろうということになります。以下がその手順です。



    Menu からWindow->Lighting を選びます。

    lighting-window

    Lighting Window が開くので、ここのPrecomputed Realtime GI とBaked GI のチェックを外します。

    invalid-gi

    これによりGIを実行しなくなり、ビルドした後のファイルにGI用のテクスチャが作られなくなります。GIは当然機能しなくなりますが、出来上がったファイルの容量は小さくなります。

    AndroidやiOSではGIを切った方が容量的な問題を回避できるため、切っておいた方が良いと思います。GI用のファイルが作られる条件というのは、Lightmap Static なゲームオブジェクトがいる場合などになりますが、良くわからなければLighting Window から設定した方が簡単です。 【GI(Global Illumination) を無効化する】の続きを読む

    このページのトップヘ