ここでは CRI Atom Craft パッケージに含まれている「CRI Atom Craft ロボット」機能のサンプルスクリプトを紹介します。
サンプル名 | サンプルファイル名 | ユーザー変数の使用の有無 |
---|---|---|
キューIDの重複確認 | check_overlap_cueid.py | 無 |
キュー名の重複確認 | check_overlap_cuename.py | 無 |
AISACグラフのコピー&ペースト | copy_and_paste_aisac.py | 有 |
オートメーションのコピー&ペースト | copy_and_paste_automation.py | 有 |
スイッチキューをセレクターから作成 | create_switch_type_cue_from_selector.py | 有 |
キューシート内で使用している波形ファイルの列挙 | listup_audiofiles_in_cuesheet.py | 無 |
カテゴリが登録されていないキューの列挙 | listup_category_not_registered_cue.py | 有 |
片方のマテリアルフォルダーにしか存在しないマテリアルを列挙 | listup_files_exist_oneside_folder.py | 無 |
選択キューから指定したカテゴリを削除 | remove_category.py | 有 |
選択キューのカテゴリを置き換え | replace_category.py | 有 |
仲間はずれのマテリアルを検索 | search_different_materials.py | 有 |
サンプル名 | サンプルファイル名 | ユーザー変数の使用の有無 |
---|---|---|
プロファイラーのログ収集を開始(リモート実行) | start_profiler_logging.py | 無 |
サンプルスクリプトは全てローカル実行用となっており、次の方法で実行します。
スクリプトリストやメニューにてアイコン付きで表示されているスクリプトは、スクリプトエディター用のユーザー変数機能を使用しています。
スクリプトを正しく動作させるにはスクリプトエディターを使用したユーザー変数への設定が必要となります。
設定内容については、各サンプルスクリプトの説明を参照してください。
サンプルのスクリプトファイルは以下のフォルダーにあります。
必要に応じて、サンプルコードを改変して使用してください。
サンプルコードを改変する際は、ユーザースクリプト検索パスで指定したフォルダーにコピーすることをおすすめします。
これは以下の理由からです。
このサンプルスクリプトは、GUI のツリーなどで選択しているキューシート内に、キューIDが重複しているキューがあるかを確認します。
複数のキューシートを選択した場合、最初のキューシートだけ重複確認を行います。
重複が見つかった場合、該当するキューの情報をスクリプトログウィンドウと csv ファイルに出力します。
関数名 | 説明 | モジュール |
---|---|---|
get_selected_objects | GUI のツリーなどで選択中のオブジェクトを取得します | project モジュール |
find_objects | 再帰検索を行い一致したオブジェクトをリスト形式で取得します | project モジュール |
get_value | 指定したオブジェクトのパラメーターを取得します | project モジュール |
get_object_path | オブジェクトのパス文字列を取得します | project モジュール |
warning | 警告のログを出力します | debug モジュール |
log | 標準のログを出力します | debug モジュール |
get_child_objects | 親オブジェクトを指定して、複数の子オブジェクトを取得します | project モジュール |
このサンプルスクリプトは、GUI のツリーなどで選択しているキューシート内に、キュー名が重複しているキューがあるかを確認します。
複数のキューシートを選択した場合、最初のキューシートだけ重複確認を行います。
重複が見つかった場合、該当するキューの情報をスクリプトログウィンドウと csv ファイルに出力します。
関数名 | 説明 | モジュール |
---|---|---|
get_selected_objects | GUI のツリーなどで選択中のオブジェクトを取得します | project モジュール |
find_objects | 再帰検索を行い一致したオブジェクトをリスト形式で取得します | project モジュール |
get_value | 指定したオブジェクトのパラメーターを取得します | project モジュール |
get_object_path | オブジェクトのパス文字列を取得します | project モジュール |
warning | 警告のログを出力します | debug モジュール |
log | 標準のログを出力します | debug モジュール |
get_child_objects | 親オブジェクトを指定して、複数の子オブジェクトを取得します | project モジュール |
このサンプルスクリプトは、コピー元 AISAC 内の AISAC グラフを、ペースト先 AISAC にペーストします。
スクリプトエディター用のユーザー変数機能を使用しているため、以下の項目をユーザー変数にて設定後、「適用」ボタンを押してから実行してください。
ユーザー変数 | 説明 | 変数タイプ |
---|---|---|
SOURCE_AISAC | コピー元の AISAC オブジェクト | object |
DEST_SEQUENCE | ペースト先の AISAC オブジェクト | object |
AUTOMATION_GRAPH_TYPE | コピー&ペーストする AISAC グラフのタイプ | string |
ペースト先のAISACに同タイプのグラフが存在していた場合、ペースト処理による上書きは行われません。
関数名 | 説明 | モジュール |
---|---|---|
get_aisac_graph | AISACグラフを取得します | project モジュール |
get_value | 指定したオブジェクトのパラメーターを取得します | project モジュール |
copy_object | オブジェクトをコピーします | project モジュール |
warning | 警告のログを出力します | debug モジュール |
log | 標準のログを出力します | debug モジュール |
このサンプルスクリプトは、コピー元シーケンスオブジェクトのオートメーションを、ペースト先シーケンスオブジェクトにペーストします。
スクリプトエディター用のユーザー変数機能を使用しているため、以下の項目をユーザー変数にて設定後、「適用」ボタンを押してから実行してください。
ユーザー変数 | 説明 | 変数タイプ |
---|---|---|
SOURCE_SEQUENCE | コピー元のシーケンスオブジェクト(キュー or トラック) | object |
DEST_AISAC | ペースト先のシーケンスオブジェクト(キュー or トラック) | object |
AISAC_GRAPH_TYPE | コピー&ペーストするオートメーションのタイプ | string |
ペースト先のシーケンスオブジェクトに同タイプのグラフが存在していた場合、ペースト処理による上書きは行われません。
関数名 | 説明 | モジュール |
---|---|---|
get_automation | オートメーションを取得します | project モジュール |
get_value | 指定したオブジェクトのパラメーターを取得します | project モジュール |
copy_object | オブジェクトをコピーします | project モジュール |
warning | 警告のログを出力します | debug モジュール |
log | 標準のログを出力します | debug モジュール |
このサンプルスクリプトは、選択したセレクター内のセレクタラベルがトラックに適用されている状態の、スイッチキューを作成します。
スクリプトエディター用のユーザー変数機能を使用しているため、以下の項目をユーザー変数にて設定後、「適用」ボタンを押してから実行してください。
ユーザー変数 | 説明 | 変数タイプ |
---|---|---|
SELECTOR | キューに設定するセレクター | object |
CUE_NAME | 作成するキュー名 | string |
MATERIAL_FOLDER | (オプション)ウェーブフォームリージョン登録に使用するマテリアルフォルダー | object |
キューの作成先(キューシート、キューフォルダー)は GUI のツリーなどから選択してください。 マテリアルフォルダーを指定した場合、名前の一部がラベル名と一致するマテリアルをウェーブフォームリージョンとして登録します。
キューの作成先に既に同名のキューが存在している場合、新規作成による上書きは行われません。
マテリアルの検索は指定フォルダー直下のみ行います。
関数名 | 説明 | モジュール |
---|---|---|
get_selected_objects | GUI のツリーなどで選択中のオブジェクトを取得します | project モジュール |
get_child_objects | 親オブジェクトを指定して、複数の子オブジェクトを取得します | project モジュール |
get_value | 指定したオブジェクトのパラメーターを取得します | project モジュール |
create_object | タイプを指定してオブジェクトを作成します | project モジュール |
set_value | 指定したオブジェクトのパラメーターを設定します | project モジュール |
create_waveform_region | ウェーブフォームリージョンを作成します | project モジュール |
warning | 警告のログを出力します | debug モジュール |
log | 標準のログを出力します | debug モジュール |
このサンプルスクリプトは、GUI のツリーなどで選択中のキューシートで使用している波形ファイルの列挙を行います。
波形ファイルの名前とファイルパスをスクリプトログウィンドウに出力します。
関数名 | 説明 | モジュール |
---|---|---|
find_objects | 再帰的にオブジェクトを検索し、条件に合致したものを全て取得します | project モジュール |
get_selected_objects | GUI のツリーなどで選択中のオブジェクトを取得します | project モジュール |
get_value | 指定したオブジェクトのパラメーターを取得します | project モジュール |
warning | 警告のログを出力します | debug モジュール |
log | 標準のログを出力します | debug モジュール |
このサンプルスクリプトは、GUI のツリーなどで選択中のキューに対して、指定カテゴリが登録されていないキューの列挙を行います。
列挙したキューの名前をスクリプトログウィンドウに出力します。
スクリプトエディター用のユーザー変数機能を使用しているため、以下の項目をユーザー変数にて設定後、「適用」ボタンを押してから実行してください。
ユーザー変数 | 説明 | 変数タイプ |
---|---|---|
SEARCH_CATEGORY | 検索するカテゴリ | object |
関数名 | 説明 | モジュール |
---|---|---|
get_selected_objects | GUI のツリーなどで選択中のオブジェクトを取得します | project モジュール |
get_value | 指定したオブジェクトのパラメーターを取得します | project モジュール |
get_categories | キューに設定してあるカテゴリを取得します | project モジュール |
warning | 警告のログを出力します | debug モジュール |
log | 標準のログを出力します | debug モジュール |
このサンプルスクリプトは、GUI のツリーなどで選択中の2つのマテリアルのフォルダーに対して、片方のマテリアルフォルダーにしか存在しないマテリアルの列挙を行います。
同じマテリアルであるかの判定には、選択したフォルダーからの相対パスを使用します。
比較をしたい2つのマテリアルフォルダーを選択して実行してください。
関数名 | 説明 | モジュール |
---|---|---|
find_objects | 再帰的にオブジェクトを検索し、条件に合致したものを全て取得します | project モジュール |
get_selected_objects | GUI のツリーなどで選択中のオブジェクトを取得します | project モジュール |
get_object_path | ツール上のデータ構造を示すパス文字列を取得します | project モジュール |
get_value | 指定したオブジェクトのパラメーターを取得します | project モジュール |
warning | 警告のログを出力します | debug モジュール |
log | 標準のログを出力します | debug モジュール |
このサンプルスクリプトは、GUI のツリーなどで選択中のキューから指定したカテゴリを削除します。
スクリプトエディター用のユーザー変数機能を使用しているため、以下の項目をユーザー変数にて設定後、「適用」ボタンを押してから実行してください。
ユーザー変数 | 説明 | 変数タイプ |
---|---|---|
REMOVE_CATEGORY | 削除するカテゴリ | object |
関数名 | 説明 | モジュール |
---|---|---|
get_selected_objects | GUI のツリーなどで選択中のオブジェクトを取得します | project モジュール |
get_value | 指定したオブジェクトのパラメーターを取得します | project モジュール |
get_categories | キューに設定してあるカテゴリを取得します | project モジュール |
set_categories | キューにカテゴリを設定します | project モジュール |
warning | 警告のログを出力します | debug モジュール |
log | 標準のログを出力します | debug モジュール |
このサンプルスクリプトは、GUI のツリーなどで選択中のキューのカテゴリ設定を置き換えます。
スクリプトエディター用のユーザー変数機能を使用しているため、以下の項目をユーザー変数にて設定後、「適用」ボタンを押してから実行してください。
ユーザー変数 | 説明 | 変数タイプ |
---|---|---|
REPLACE_FROM | 置き換え元カテゴリ | object |
REPLACE_TO | 置き換え先カテゴリ | object |
関数名 | 説明 | モジュール |
---|---|---|
get_selected_objects | GUI のツリーなどで選択中のオブジェクトを取得します | project モジュール |
get_value | 指定したオブジェクトのパラメーターを取得します | project モジュール |
get_categories | キューに設定してあるカテゴリを取得します | project モジュール |
set_categories | キューにカテゴリを設定します | project モジュール |
warning | 警告のログを出力します | debug モジュール |
log | 標準のログを出力します | debug モジュール |
このサンプルスクリプトは、GUI のツリーなどで選択中のマテリアルフォルダー以下にある全てのマテリアルから、「仲間はずれ」のマテリアルを列挙します。
仲間はずれと判定されたマテリアルの名前をスクリプトログウィンドウに出力します。
「仲間はずれ」は、他の多くのマテリアルと異なる設定値を持っているかどうかで判定します。
より具体的には、検索対象のマテリアルのうち、同じ設定値を持っているものの比率が BORDER_RATIO
未満の場合に「仲間はずれ」と判定します。
判定には以下のフィールドを使用します。
スクリプトエディター用のユーザー変数機能を使用しているため、以下の項目をユーザー変数にて設定後、「適用」ボタンを押してから実行してください。
ユーザー変数 | 説明 | 変数タイプ |
---|---|---|
BORDER_RATIO | 仲間はずれの判定基準とする比率 | number |
関数名 | 説明 | モジュール |
---|---|---|
find_objects | 再帰的にオブジェクトを検索し、条件に合致したものを全て取得します | project モジュール |
get_selected_objects | GUI のツリーなどで選択中のオブジェクトを取得します | project モジュール |
get_actual_value | 指定したオブジェクトの実際に適用されるパラメーターを取得します | project モジュール |
get_value | 指定したオブジェクトのパラメーターを取得します | project モジュール |
warning | 警告のログを出力します | debug モジュール |
log | 標準のログを出力します | debug モジュール |
このサンプルスクリプトは、リモート実行時に対象のアプリケーションとインゲーム接続を行い、プロファイラーのログ取得を行います。
更に、取得したログをCSV形式で出力します。
関数名 | 説明 | モジュール |
---|---|---|
open_project | 指定したプロジェクトを開きます。 | project モジュール |
start_ingame_preview | 指定したIPアドレスに対してインゲーム接続を開始します | preview モジュール |
stop_ingame_preview | インゲーム接続を終了します | preview モジュール |
start_profiler_logging | プロファイリングを開始します。 | profiler モジュール |
stop_profiler_logging | プロファイリングを停止します。 | profiler モジュール |
export_alllog_to_csv | プロファイリングした全てのログをCSV形式で出力します | profiler モジュール |
initialize | 通信機能の初期化を行います | 通信 モジュール |
finalize | 通信機能を終了します | 通信 モジュール |
connect | CRI Atom Craft との接続を行います | 通信 モジュール |
disconnect | CRI Atom Craft との接続を解除します | 通信 モジュール |
warning | 警告のログを出力します | debug モジュール |
log | 標準のログを出力します | debug モジュール |