Unityな日々(Unity Geek)

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

WWWクラスで外部ファイルを読みこむ

wwwクラスを使ってUnityで外部ファイルを読み込むことができる。

http://images.earthcam.com/ec_metros/ourcams/fridays.jpgの画像ファイルを読み込む例。

#pragma strict
var url = "http://images.earthcam.com/ec_metros/ourcams/fridays.jpg";

function Start () {
     // Start a download of the given URL
    var www : WWW = new WWW (url);

    // Wait for download to complete
    yield www;

    // assign texture
    renderer.material.mainTexture = www.texture;
}


ローカルファイルの場合は"file://"を使う。Macの場合、"file://ボリューム名/Users/...”となる。例えば下の通り。
この例では"XOOMS14"がボリューム名、"ay3844"はユーザ名。ユーザ名までのフルパス("file://XOOMS14/Users/ay3844/")はよく使うので、覚えておくと便利。

#pragma strict
var url = "file://XOOMS14/Users/ay3844/Documents/_development/unity/trial/trial01/publish/data/pict01.jpg";

function Start () {
     // Start a download of the given URL
    var www : WWW = new WWW (url);

    // Wait for download to complete
    yield www;

    // assign texture
    renderer.material.mainTexture = www.texture;
}

上の例は画像データのため、textureプロパティで取り出しているが、テキスト、ムービーなどリソースの種類に応じてプロパティがある。

プロパティ名 種類 対応クラス
text テキスト String
bytes バイトデータ Byte Array
texture 画像 Texture2D
movie 動画 Movie Texture