【Unity】取得できるパス一覧


本棚

UnityでScriptからファイルの保存や取り出しなどを行うときパスを取得することがよくあります。

そのパスがどのフォルダでどのBuild設定の時に使えるのかをメモしました。
●●はUnity Build時の名前です。

Application.dataPath

ゲームデータのフォルダパスを返す

Application.dataPath
動作環境 パス フォルダ設定 備考
Unity Editor ./Assets Read and Write
Linux player ./●●_Data Read and Write 大文字,小文字の区別有り
Mac ./Contents Read and Write
Windows ./●●_Data Read and Write
iOS ./●●.app/Data ReadOnly
Android .apkのパス Read and Write 例外としてBuild時に
分割バイナリを実行する場合
.apkではなく.obb
Web Player プレイヤーの
データフォルダの絶対URL
Read and White
WebGL 再生プレイヤーの
データフォルダの絶対URL
Read and Write

主にUnityのAssets以下のファイルを読み取る時に使用しています。
ほとんどのフォルダパスの最後が/で閉じられていないのに注意。

Application.streamingAssetsPath

StreamingAssetsフォルダへのパスが含まれています

Application.streamingAssetsPath
動作環境 パス フォルダ設定 備考
Unity Editor ./Assets/StreamingAssets ReadOnly
Linux player ./●●_Data/StreamingAssets ReadOnly 大文字,小文字の区別有り
Mac ? ReadOnly
Windows ./●●_Data/StreamingAssets ReadOnly
iOS ./Data/Raw ReadOnly
Android ? ReadOnly
Web Player プレイヤーの
データフォルダの絶対URL
ReadOnly
WebGL ? ReadOnly

UnityプロジェクトのAssetsフォルダ内にStreamingAssetsフォルダを追加している場合、ビルド時にパスがそれぞれの動作環境ごとにコピーされそのパスを取得することができる。

いくつかのプラットフォームではWeb上でファイルにアクセスできなかったり、Androidでは.apkファイルの中に圧縮されていたりしてアクセスすることができないがWWWやUnityWebRequestなどを使用して通信することによって取得できる。

ほとんどのフォルダパスの最後が/で閉じられていないのに注意。

Application.temporaryCachePath

一時的なデータ、キャッシュのディレクトリパスを返します

Application.temporaryCachePath
動作環境 パス フォルダ設定 備考
Unity Editor ? Read and Write
Linux player ? ?
Mac ? ?
Windows ? ?
iOS /var/mobile/Containers/Data
/Application/(app)/Library/Caches
Read and Write
Android ? ?
Web Player ? ?
WebGL ? ?

iOSで実機ビルド時はCaches(データを保存できる一時的なディレクトリ)のパスです。
iOSではデータの一時保存など行う時こちらを使用します。

一時的なフォルダなので永久的に残るものではなく容量次第で自動的に削除されたりするので、実装時はデータは存在しない前提で考えます。

Application.persistentDataPath

永続的なデータディレクトリのパスを返します

Application.persistentDataPath
動作環境 パス フォルダ設定 備考
Unity Editor ? ?
Linux player ? ?
Mac ? ?
Windows ? ?
iOS ./Documents Read and Write
Android ? ?
Web Player ? ?
WebGL ? ?

iOSで実機ビルド時はDocuments(アプリケーションが実行されている間データを維持して保存することが予想されるディレクトリ)のパスです。

アプリケーションの更新ごとにファイルが削除されることはないがユーザーの操作などによりデータが消えてしまうことがあるので注意。(AndroidではSDカードを削除すると保存していたデータにアクセスすることはできなくなる)

Application.absoluteURL

Web Playerファイルの絶対パス

Application.absoluteURL
動作環境 パス フォルダ設定 備考
Unity Editor ? ?
Linux player ? ?
Mac ? ?
Windows ? ?
iOS ? ?
Android ? ?
Web Player Web Playerファイルの絶対パス ?
WebGL ? ?

実行時にパスが正しいかどうかを判別することでデータファイルの著作権侵害から守るために使用できます。

Application.srcValue

WebPlayerゲームデータのHTMLからの相対的なパスを返します

Application.srcValue
動作環境 パス フォルダ設定 備考
Unity Editor ? ?
Linux player ? ?
Mac ? ?
Windows ? ?
iOS ? ?
Android ? ?
Web Player Web Playerファイルの相対パス ?
WebGL ? ?

相対パスを取得することでHTMLの場所を判定します。

9 thoughts on “【Unity】取得できるパス一覧

Leave a Comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です