CRIWARE Unity Plugin Manual
Last Updated: 2024-04-24
[CriFs]ファイルの読み込み
サンプル内容
概要
単純なファイル読み込みのサンプルです。
操作方法
[Loading Style: ORDINARY]、[Loading Style: COROUTINE]ボタン
ファイルの読み込みに、従来方式(Oridinary)を使うのか、コルーチン方式(Coroutine)を使うのか指定します。
[Load Text File]ボタン
ローカルにあるテキストファイルを読み込み、表示します。
[Load Image File (Local)]ボタン
ローカルにあるイメージファイルを読み込み、表示します。
[Stop Loading]ボタン
「ORIDINARY」の時のみ、ファイル読み込みを中止できます。
[Reset]ボタン
読み込んだアイテムをクリアします。
シーン情報
ミドルウェア
ファイルマジックPRO (CRI File System)
サンプル
Basicサンプル
格納場所
/cri/unity/samples/UnityProject/Assets/Scenes/crifilesystem/basic
シーンファイル
Scene_01_LoadFile.unity
プログラムの解説
従来方式
各フレームの更新時に、ポーリングによって読み込み終了を確認する方法です。
従来のコンシューマゲーム開発で使われている読み込み方法です。
コルーチン方式
コルーチンによって、読み込み終了をyeild命令によって待ちます。
読み込み処理をシンプルに記述することができます。
コルーチン方式の読み込み手順
private
IEnumerator LoadTextFile(
string
path)
{
/* Issue a request for file loading. */
var request = CriFsUtility.LoadFile(path);
ファイルのロードリクエストを出します。
バックグラウンドで非同期にロード処理が行われます。
/* Sleep until the processing is completed . */
yield
return
request.WaitForDone(
this
);
ロード処理終了まで待ちます。
if
(request.error == null)
{
/* The request.bytes stores the loaded data. */
using
(var st =
new
StreamReader(
new
MemoryStream(request.bytes), Encoding.UTF8)) {
this.loadedText = st.ReadToEnd();
}
}
errorがnullならロード成功です。
テキストファイルの場合は文字列化を行います。
/* Check whether the file loading is successful. */
if
(request.error == null)
{
this.textures[n] =
new
Texture2D(0, 0);
/* The request.bytes stores the loaded data. */
this.textures[n].LoadImage(request.bytes);
画像ファイルの場合はテクスチャにロードします。
Copyright (c) CRI Middleware Co., Ltd. 1.8.10