(Terragen4) Terragen RPCを試す そのX High Level APIまとめ
Terragen RPCでのHigh Level APIをまとめました。
バージョン0.9.1のリファレンスを元にまとめています。
Terragen RPC — Terragen RPC 0.9.1 documentation
各APIには細かい制約や注意事項がありますが、まだAPIは変わることが確実であり、不完全であることから、ここでは詳細に記述しません。
そもそも実際にコードを書く際は公式に用意されたドキュメント原文を参照するべきですので、あくまでこんなAPIがあるよ、といった参考程度にどうぞ。
カテゴリ分けは私がやったものです。
(本記事の)変更履歴
2022/11/5 初版
2022/11/6 誤記訂正
主要な用語
名称 | 型 | 意味 |
---|---|---|
path | str | ノードの場所を指す(/Render Camera 等) |
node_or_nodes | Node | list of Node | Nodeクラスのインスタンス(GUI上のノードやグループに相当)またはそのリストを指す。 |
class_name | str | Nodeの種類。‘group’, ‘camera’, ‘sunlight’, ‘image_map_shader'など。TGDファイルやTGCファイルに記録される際の名称。 |
param_name | str | パラメータ名 |
filename | str | ファイルパス(TBC 相対パスでもいけるか?) |
values | str | number | tuple of numbers | list of numbers | 値 |
value_string | str | 値(文字列) |
API
カテゴリ | API名 | 引数型 | 返り値型 | 説明 |
---|---|---|---|---|
プロジェクト | project_filepath() | - | str | 現在開いているプロジェクトのファイルパスを返す。 |
^ | new_project() | - | - | 新規プロジェクトを作成する。 |
^ | open_project(filename) | str | - | filenameで指定されたプロジェクトを開く。 |
^ | save_project(filename) | str | - | filenameで指定された名前でプロジェクトをファイルに保存する。 |
クリップファイル | insert_clip_file(filename) | str | bool | クリップファイルの内容をネットワークに追加する。(GUIでの“Insert Clip File…”と同様の効果) |
^ | insert_clip_file_after(filename, input_node) | filename: str | bool | input_nodeで指定したノードの出力に、クリップファイルの内容を結合する(GUIでの“Insert Clip File…”->"Add"と同様の効果) |
^ | ^ | input_node: Node | ^ | ^ |
^ | insert_clip_file_before(filename, output_node, output_param='input_node') | filename: str | bool | output_nodeで指定したノードの、output_paramで指定したパラメータにクリップファイルの内容を挿入する(GUIでの“Insert Clip File…”と同様の効果) |
^ | ^ | output_node: Node | ^ | ^ |
^ | ^ | output_param: str | ^ | ^ |
ノード操作 | root() | - | Node | None | ルートノードを返す。 |
^ | node_by_path(path) | str | Node | None | pathで指定したノードを返す。 |
ノード選択 | current_selection() | - | list of Node | ネットワーク上で選択されているノードを返す。 |
^ | select_just(node_or_nodes) | Node | list of Node | - | 現在選択されているノードを選択解除し、node_or_nodesで指定したノードを選択状態にする。 |
^ | select_more(node_or_nodes) | Node | list of Node | - | 現在選択されているノードに加えて、node_or_nodesで指定したノードを選択状態にする。 |
^ | select_none() | - | - | ノードの選択を解除する。 |
ノード作成 | create_child(of_node, class_name) | of_node: Node | Node | None | of_nodeで指定したノードに、class_nameで指定した種類のノードを作成する。 |
^ | ^ | class_name: str | ^ | ^ |
ノード削除 | delete(node_or_nodes) | Node | list of Node | - | node_or_nodesで指定したノードを削除する。 |
Nodeクラスのメソッド
カテゴリ | API名 | 引数型 | 返り値型 | 説明 |
---|---|---|---|---|
全般操作 | name() | - | str | ノードの名前を返す。 |
^ | path() | - | str | ノードのパスを返す。 |
^ | parent_path() | - | str | 親ノードのパスを返す。 |
^ | parent() | - | Node | 親ノードを返す。 |
^ | children() | - | list of Node | 子ノードを返す。 |
^ | children_filtered_by_class(class_name) | str | list of Node | 子ノードのうち、class_nameで指定された種類のノードを返す。 |
パラメータ | param_names() | - | list of str | ノードの持つパラメータ名の一覧を返す。 |
パラメータ値取得 | get_param(param_name) | str | str(現状) | 指定したパラメータの値を返す。(本来はそのパラメータに応じた型の値を返すが、現状はget_param_as_stringと同じ動きをする) |
^ | get_param_as_string(param_name) | str | str | 指定したパラメータの値を文字列型で返す。 |
^ | get_param_as_int(param_name) | str | int | 指定したパラメータの値を整数型で返す。 |
^ | get_param_as_float(param_name) | str | float | 指定したパラメータの値を実数型で返す。 |
^ | get_param_as_tuple(param_name) | str | tuple of 1, 2, or 3 floats | 指定したパラメータの値をタプルで返す。 |
^ | get_param_as_list(param_name) | str | list of 1, 2, or 3 floats | 指定したパラメータの値をリストで返す。 |
パラメータ値設定 | set_param(param_name, values) | param_name: str | - | 指定したパラメータの値を設定する。 |
^ | ^ | values: str | number | tuple of numbers | list of numbers | ^ | 指定したパラメータの値を設定する。 |
^ | set_param_from_string(param_name, value_string) | param_name: str | - | 指定したパラメータの値を文字列で設定する。 |
^ | ^ | value_string: str | ^ | 指定したパラメータの値を設定する。 |