v8.0 (2010)
指定されたカスタム ファイルの内容をシーンに読み込みします。 カスタムファイルのタイプは、読み込みカスタムコンバータイベントに登録されている必要があります(ファイル名の拡張子の指定方法については、「PluginRegistrar.RegisterConverterEvent」を参照)。
This command fires the following events:ファイルの拡張子を一致させるためのカスタム インポータである siOnBeginFileImport イベントおよび siOnEndFileImport イベントがこの順番で実行されます。
このコマンドが呼び出されると、FileType コンテキスト属性(siOnBeginFileImport に属する)、siOnCustomFileImport および siOnEndFileImport イベントに siFileTypeCustom 値が設定されます。
警告: 一致するファイルの拡張子とともに登録されているカスタムインポータイベントがない場合は、コマンドは失敗し、エラーがログに記録されます。
ImportCustomFile( FileName, [Target], [Reference], [Name], [Frame], [UserData] ); |
| パラメータ | タイプ | 説明 |
|---|---|---|
| FileName | 文字列 | 読み込みするカスタム ファイルの完全パス名 |
| Target | 文字列 |
カスタム ファイルから読み込みされたコンテンツの親。 デフォルト値: Scene_Root |
| Reference | Boolean |
参照モードが読み込みされるかどうかを指定します(適用可能な場合)。 この情報には、リファレンス コンテキスト属性(siOnBeginFileImport および siOnEndFileImport イベント向け)からのみアクセスできます。
デフォルト値: False |
| Name | 文字列 |
読み込み中に作成されたリファレンス モデルの名前。 この情報には、名前コンテキスト属性(siOnBeginFileImport および siOnEndFileImport イベント向け)からのみアクセスできます。
デフォルト値: "" |
| Frame | Integer |
カスタム ファイルのコンテンツの読み込み先となるフレーム。 この情報には、カスタム コンバータの読み込み イベント コールバックからのみアクセスすることができます。
デフォルト値: 現在のフレーム。 |
| UserData | パラメータ依存 | カスタム コンバータの読み込み イベント コールバックからアクセス可能にする必要がある任意のデータ。 |
/*
First of all, an import converter event must be registered with the extension of the file to import.
*/
function XSILoadPlugin( in_reg )
{
in_reg.Author = "ABC" ;
in_reg.Name = "ABC Text Converter plugin" ;
in_reg.Major = 1;
in_reg.Minor = 0;
in_reg.URL = "www.abc.com"
// Let XSI know that this plug-in implements custom import/export events for ABC files
in_reg.RegisterConverterEvent("ABCTextImport",siOnCustomFileImport, "ABC");
in_reg.RegisterConverterEvent("ABCTextExport",siOnCustomFileExport, "ABC");
return true ;
}
function ABCTextImport_OnEvent( in_ctxt )
{
Application.LogMessage("ABC Text Import Event called...");
Application.LogMessage("FileName: " + in_ctxt.GetAttribute("FileName"));
Application.LogMessage("Target: " + in_ctxt.GetAttribute("Target"));
Application.LogMessage("FileType: " + in_ctxt.GetAttribute("FileType"));
Application.LogMessage("Frame: " + in_ctxt.GetAttribute("Frame"));
Application.LogMessage("UserData: " + in_ctxt.GetAttribute("UserData"));
}
function ABCTextExport_OnEvent( in_ctxt )
{
Application.LogMessage("ABC Text Export Event called...");
Application.LogMessage("FileName: " + in_ctxt.GetAttribute("FileName"));
Application.LogMessage("Target: " + in_ctxt.GetAttribute("Target"));
Application.LogMessage("FileType: " + in_ctxt.GetAttribute("FileType"));
Application.LogMessage("Frame: " + in_ctxt.GetAttribute("Frame"));
Application.LogMessage("UserData: " + in_ctxt.GetAttribute("UserData"));
}
/*
Then, the ImportCustomFile command may be called from any script.
*/
ImportCustomFile("MyABCfile.abc", "Scene_Root", false, "myImportFile", 40, "ABCImportOptions");
//---------------------------------------------------------
// Output from this script:
// INFO : ABC Text Import Event called...
// INFO : FileName: MyABCfile.abc
// INFO : Target: Scene_Root
// INFO : FileType: 31
// INFO : Frame: 40
// INFO : UserData: ABCImportOptions
//--------------------------------------------------------- |