Version: 2019.1
JSON 形式にシリアライズ
ScriptableObject

ストリーミングアセット

Unity はビルド時に必要なアセットをプロジェクトに結合します。しかし、場合によってはターゲットとなるマシンの標準的なファイルシステム上にデータを配置し、パス名で参照した方がよい事もあります。例えば iOS 上で動画ファイルを展開する場合、 PlayMovie 関数で再生するためには、元の動画ファイルをファイルシステム上に置かなくてはなりません。

Unity プロジェクトにおける StreamingAssets と呼ばれるフォルダーに配置したファイルはビルド先のプラットフォームの、特定のフォルダーにそのまま何も変換されない状態で保持されます。フォルダー名は Application.streamingAssetsPath プロパティーを取得することができます。プラットフォームごとに配置されるフォルダーの場所は異なるため、常に Application.streamingAssetsPath を使用することをお勧めします。

Application.streamingAssetsPath によって返される場所はプラットフォームごとに異なります。

  • Most platforms (Unity Editor, Windows, macOS, Linux players, PS4, Xbox One, Switch) use Application.dataPath + "/StreamingAssets",
  • iOS は Application.dataPath + "/Raw" を使用します
  • Android は、圧縮された APK/JAR ファイル "jar:file://" + Application.dataPath + "!/assets" 内のファイルを使用します

Android や WebGL など、ストリーミングアセットファイルに直接アクセスできないプラットフォームでストリーミングアセットを読み取るには、UnityWebRequest を使用します。例は、Application.streamingAssetsPath を参照してください。

ノート: StreamingAssets フォルダーにある DLL ファイルはコンパイルに含まれません。

JSON 形式にシリアライズ
ScriptableObject