Since | 18.0 |
int usd_addtotransformorder(int stagehandle, string primpath, string name)
この関数は、Primのトランスフォーム順序にトランスフォーム処理を追加します。
トランスフォーム順序は、トランスフォーム処理のシーケンスになっており、それらの処理のフルネームが文字列配列としてxformOpOrder
アトリビュートに格納されています。
そのため、この関数は、xformOpOrder
アトリビュートに新しいオペレーション名を追加します。
Note
Primトランスフォームを扱ってオペレーション接尾辞をパラメータとして受け取るようなほとんどのVEX関数とは異なり、この関数はフルオペレーションネームを受け取ります。 オペレーション接尾辞が分かっているのであれば、usd_transformnameを使ってフルネームを取得することができます。
stagehandle
書き出し先のステージのハンドル。
現在のところ、唯一有効な値は0
のみです。
この値は、ノード内の現在のステージを意味します(今後は、この引数を使用することで他のステージへの書き出しが可能になります)。
primpath
Primのパス。
name
トランスフォーム処理のフルネーム。usd_transformnameを使用することで、オペレーション接尾辞からフルネームを取得することができます。
Returns
成功するとstagehandle
の値、失敗すると-1
。
Examples ¶
// 以下で使用されているUSD_XFORM_TRANSLATE定数とUSD_AXIS_Z定数は、 // "usd.h"VEXヘッダで定義されているので、そのヘッダをincludeしてください。 #include <usd.h> // 1番目のステップ(移動)を作成します。 string step_suffix = "step"; usd_addtranslate(0, "/geo/cone", step_suffix, {1, 0, 0}); // 次に、トランスフォーム順序にそれを追加して、同じステップ移動を繰り返します。 string step_name = usd_transformname(USD_XFORM_TRANSLATE, step_suffix); usd_addrotate(0, "/geo/cone", "first_rotation", USD_AXIS_Z, -30); usd_addtotransformorder(0, "/geo/cone", step_name); usd_addrotate(0, "/geo/cone", "second_rotation", USD_AXIS_Z, 45); usd_addtotransformorder(0, "/geo/cone", step_name);
See also | |
usd | |
usd_transform |