カスタム オペレータは、文字列パラメータに直接接続することはできません。 カスタム オペレータから文字列パラメータに対して読み書きを行うには、そのパラメータを所有するオブジェクト(たとえば、CustomProperty または CustomProperty など)に接続します。
シーン データにまったく影響を与えない場合を除き(たとえば、PickObject など)、オペレータの内部からコマンドを呼び出すことはできません。
ジオメトリやシーン オブジェクト(CreatePrimやAddNull など)を生成するコマンドや、トポロジを変更したり項目をクラスタに追加するあらゆるコマンドは、シーン データを変更し、Softimage の動作を不安定にするおそれがあるため、呼び出しは厳禁です。
シーン グラフは、オペレータが評価されるタイミング以外のタイミングで読み込むことはできません。 ただし、シーンが最初から最後まで注意深く評価されている場合は、回避策として、オペレータ内にデータをキャッシュすることができます。 この回避策を実装する方法の例については、「ParticleOp の例」を参照してください。
オペレータが評価されるタイミングが再生コントロールによって設定された現在の時間であると想定すること、またはフレームごとに評価が1つしかないと想定することはできません。 OperatorContext.Time または OperatorContext::GetTime を使用して、現在の評価時間を取得できます。
可能であれば、各ポート グループにポートを 1 つずつ使用して、接続を明確にしておくことをお勧めします。 ダイナミック オペレータについては、数多くのインスタンスを含む 1 つのポートを定義できます。 詳細については、「スタティック オペレータとダイナミック オペレータ」を参照してください。
グループまたは階層に追加(または削除)されたオブジェクトは、カスタム オペレータがプリミティブに書き込む出力ポートを定義している場合にのみ、カスタム オペレータに自動的に接続(または切断)されます。 これは、グループ/ブランチ オペレータ機能の既知の制限事項です。
PortGroup が Filter を定義し、オペレータがブランチ グループ接続をサポートしている場合、フィルタにはグループ フィルタが含まれている必要があります。 これにより、オペレータをブランチ内のオブジェクトやグループ オブジェクト上に適用する場合、ApplyOp コマンドまたは Operator.Connect メソッドによって入力オブジェクトを評価できるようになります。