Unityな日々(Unity Geek)

Unityで可視化アプリを開発するための試行錯誤の覚書

外部データの読み込みTips

実行時に外部ファイルからデータを読み込みたい場合のTips

実行環境がUnityEditor(=ローカル)か独立したアプリケーション(=オンライン)かの区別は、Application.isEditorで行う。
ローカル実行の場合は、ファイルURLの先頭に"file://"をつける。

if (Application.isEditor)
    url = "file:///" + Application.dataPath + @"/" + transform.gameObject.name.Replace(" ", "_") + ".ini"; 
else
    url = Application.dataPath + @"/" + transform.gameObject.name.Replace(" ", "_") + ".ini"; 
				
    Debug.Log(url); 

    WWW request = new WWW(url); 
				
    yield return request;

Editor実行の場合、Application.datapathは、Assetフォルダへのフルパスを指す。たとえば、プロジェクトパスが、D:/_project/unity/roadsim/の場合、Application.datapathは、

D:/_project/unity/roadsim/Assets

となる。

Windows上でEXEファイルを実行する場合のApplication.datapathは、実行(EXE)ファイルと同レイヤーにある、実行ファイルと同名のアプリケーションフォルダであることに注意。


テキスト操作の小技として、ある文字列の特定の文字Aを別の文字Bに置き換えるには、

gameObject.name.Replace("文字A","文字B")

を使う。