crowds 構造体には次のメソッドがあります。 これらのメソッドは character studio の Crowd(群集)機能に影響します。
crowd の[計算]ロールアウトで[計算]をクリックした場合と等価。.solve により、現行の他の crowd パラメータ設定すべてに基づき計算が開始されます。
[スキャッタ]オブジェクト アイコンをクリックすると表示される[オブジェクトをスキャッタ]ダイアログ ボックスの[クローン]タブで、[クローンを生成]をクリックした場合と等価。他の現行 crowd パラメータ設定すべてに基づいて、クローンが作成されます。
[スキャッタ]オブジェクト アイコンをクリックすると表示される[オブジェクトをスキャッタ]ダイアログ ボックスの[位置]タブで、[位置を生成]をクリックした場合と等価。他の現行 crowd パラメータ設定すべてに基づいて、位置が作成されます。
[スキャッタ]オブジェクト アイコンをクリックすると表示される[オブジェクトをスキャッタ]ダイアログ ボックスの[回転]タブで、[方向を生成]をクリックした場合と等価。他の現行 crowd パラメータ設定すべてに基づいて、回転が作成されます。
[スキャッタ]オブジェクト アイコンをクリックすると表示される[オブジェクトをスキャッタ]ダイアログ ボックスの[スケール]タブで、[スケールを生成]をクリックした場合と等価。他の現行 crowd パラメータ設定すべてに基づいて、スケールが作成されます。
[オブジェクトをスキャッタ]ダイアログ ボックスの[すべての操作]タブで[スキャッタ]ボタンをクリックした場合と等価。他の現行 crowd パラメータ設定すべてに基づいて、オブジェクトがスキャッタされます。
[オブジェクトを代理オブジェクトに関係付け]アイコンをクリックすると表示される[オブジェクト/代理オブジェクトの関係付け]ダイアログ ボックスで、[オブジェクトを代理オブジェクトに位置合わせ]をクリックした場合と等価。他の現行 crowd パラメータ設定すべてに基づいて、オブジェクトの位置合わせが行われます。
[オブジェクトを代理オブジェクトに関係付け]アイコンをクリックすると表示される[オブジェクト/代理オブジェクトの関係付け]ダイアログ ボックスで、[オブジェクトを代理オブジェクトにリンク]をクリックした場合と等価。他の現行 crowd パラメータ設定すべてに基づいて、オブジェクトがリンクされます。
[オブジェクトを代理オブジェクトに関係付け]アイコンをクリックすると表示される[オブジェクト/代理オブジェクトの関係付け]ダイアログ ボックスで、[代理オブジェクトコントローラをオブジェクトに割り当て]をクリックした場合と等価。他の現行 crowd パラメータ設定すべてに基づいて、コントローラの割り当てが行われます。
[スムージング]ロールアウトの[スムージングするオブジェクトを選択]ボタンをクリックすると表示される[スムージング]ダイアログ ボックスで、[OK]をクリックした場合と等価。他の現行 crowd パラメータ設定すべてに基づいて、オブジェクト モーションのスムージングが行われます。
[優先順位]ロールアウトの[グリッドへの距離/割り当て]をクリックした場合と等価。<Crowd.priority>.grid に指定されたグリッドからの距離に基づき、<Crowd.priority>.delegates で指定されたデレゲートに優先順位を割り当てます。
[優先順位]ロールアウトの[オブジェクトへの距離/割り当て]をクリックした場合と等価。<Crowd.priority>.object に指定されたオブジェクトからの距離に基づき、<Crowd.priority>.delegates で指定されたデレゲートに優先順位を割り当てます。
[優先順位]ロールアウトの[優先順位をランダムに割り当て]をクリックした場合と等価。<Crowd.priority>.delegates に指定されたデレゲートにランダムな優先順位を割り当てます。
[優先順位]ロールアウトの[優先順位を一意にする]をクリックした場合と等価。<Crowd.priority>.delegates に指定されたデレゲートの優先順位が一意であることを保証します。2 つのデレゲートが同じ優先順位を共有している場合、どちらかに新しい優先順位が付与されます。
[優先順位]ロールアウトの[優先順位を増分]をクリックした場合と等価。<Crowd.priority>.delegates に指定されたデレゲートの優先順位を、<Crowd.priority>.increment の値だけ増加させます。
crowd 関数には、2 つのパラメータを定義する必要があります。最初に渡すパラメータは現行の crowd で、2 番目に渡すパラメータは計算フレームです。
これらは、下記のオブジェクトの ArrayParamater を含むプロパティのすべてで実行できます。これらの操作を元に戻す、およびやり直すことも可能です。
<Crowd>.behaviors-- array of Behavior objects <Crowd>.teams-- array of CrowdTeam objects <Crowd>.assignments-- array of Assignment objects <Crowd>.cogcontrols-- array of CognotiveController objects <Crowd.scatter>.ObjectsToScatter-- node array <Crowd.objAssoc>.objects-- node array <Crowd.objAssoc>.delegates-- node array <Crowd.smooth>.objects-- node array
チームまたは認識コントローラを、MAXScriptの deleteitem $crowd01.teams[1] 1 または deleteitem $crowd01.cogcontrols[1] 1 を使用して削除する場合、ある割り当てから引き続き参照される場合があります。このことで問題が発生することはありませんが、奇妙なことなのであまり行うべきではありません。
次の MAXScript 操作は、後の Crowd の失敗の原因となります。 |
Crowd ArrayParameter 要素を undefined に設定することは、絶対にしないでください。 Crowd ArrayParameter 要素を、適切なタイプのオブジェクト以外に設定することは、絶対にしないでください。 |