Q100333: TeleParameter の表示名を変更して、別のパラメータから値を受け取っていることを示す方法

フォローする

まとめ

この記事では、TeleParameter の表示名と、 Katana内で内部的に参照される名前 (スクリプト アクセスなど) を変更する方法について説明します。

TeleParameter パラメータ タイプの詳細な説明とその作成方法については、次の記事を参照してください: Q100292: Katanaの TeleParameters

詳しくは

TeleParameter は、ラベルを含め、参照しているパラメータの外観を引き継ぎます。

mceclip0.png

ユーザー パラメータの名前は通常、パラメータ ラベルのすぐ上にあるレンチ アイコンをクリックし、[パラメータの名前を変更…] を選択することで変更できます。

これは TeleParameters でも可能ですが、これは UI に表示される名前には影響しません。

mceclip3.png

これは、パラメーターがリンク先のパラメーターの名前によって引き続き参照されるためです。

fovParam = NodegraphAPI.GetNode('CameraCreate').getParameter('fov')

ただし、ユーザー パラメータは独自のノード上に一意の名前で引き続き存在します。この名前は UI には表示されませんが、次のように Python 経由でパラメーターにアクセスするために使用できます。

teleParam = NodegraphAPI.GetNode('CameraCreate').getParameter('user.CameraFov')

注:ユーザー パラメータの値は、参照されるパラメータ (この例では「CameraCreate.fov」) を指す文字列式です。

ユーザー パラメータのラベルは、パラメータ ラベルの真上にあるレンチ アイコンをクリックし、[ウィジェット オプション…] を選択することで、UI で変更できます。

mceclip5.png

あるいは、NodegraphAPI を使用して設定することもできます。

teleParam = NodegraphAPI.GetNode('CameraCreate').getParameter('user.CameraFov')
teleParam.setHintString(repr({'widget': 'teleparam', 'label': 'CameraFovTele'}))

    私たちはそれを聞いて申し訳ございません

    理由をお聞かせください