ユーザ データとは

 
 
 

ユーザデータとは、Autodesk Softimage シーン内のコンポーネントまたはオブジェクトに格納する任意のデータを指します。 ユーザ データは、BLOB(Binary Large OBject)またはデータ値(整数、ブール値、文字列など)として保存できます。

ヒント:

www.msdn.microsoft.comでは、BLOB をバイナリ データ(グラフィックス、サウンド、コンパイルコードなど)を含むデータ列のタイプと定めています。

これらのデータ形式は、主に以下の 4 つのカテゴリに分類されます。

バイナリ ユーザ データを格納できるエレメント

Autodesk Softimage では、あらゆるシーンオブジェクトやマテリアル、シェーダ、アクションのユーザ データをサポートしています。また、ポイント、頂点、ノット、セグメント、エッジ、カーブ、ファセット、サーフェイスなど、あらゆるサブコンポーネント エレメントのユーザ データもサポートしています。

注:

SI|3D と Autodesk Softimage はどちらもユーザ データをサポートし、SI|3D のユーザ データを Softimage に読み込むことができます。 詳細については、「SOFTIMAGE|3D のユーザ データを読み込む」を参照してください。

ユーザ データは、UserDataBlobs または UserDataBlobs を使用するとオブジェクトに格納され、UserDataMaps または UserDataMaps を使用するとコンポーネントに格納されます。

バイナリ ユーザ データの一般的な使用方法

ユーザデータは、SI|3D や Autodesk Softimage、独自仕様のソフトウェア、あるいはゲームのプラットフォームやプラグインに存在するため、シーンデータ間で送受信できる情報として使用できます。

シナリオ

ユーザ データを使った実行方法

ポリゴンにフラグを追加する

ゲームでは、メッシュ内の特定のポリゴンに適用する必要があるさまざまなレンダリング機能をリアルタイムで使用します。 たとえば、自動車のウィンドウに対して反射するレンダリングを実行したり、放射カラー エフェクトをエンジンの排気エリアに追加したりすることができます。

また、ポリゴンを選択し、選択したポリゴンに衝突回避のタグを付ければ、廊下の天井からつり下げたくもの巣をプレイヤーと衝突させないようにすることができます。

メッシュ内の頂点にタグを付けて番号付けする

特定の方法でエフェクトがメッシュ内を移動しなければならない場合があります。 この処理は、エフェクトがメッシュ内を進む順番で頂点にフラグを付けることで実現されます。 たとえば、稲妻の衝撃は、メッシュ上のフラグが付いたポイント間をジャンプするよう設定できます。

変数のウェイティングをメッシュの指定された領域に組み込む

ボーンの回転に基づいて、変数のウェイティングをポイントに割り当てておくと便利です。 これで、キャラクタの肘や膝をアニメートしやすくなるため、ポリゴンが不完全に交差することはなくなります。 ポイント上のこれらの注釈情報を使用して、エンジンは変数のセットからポイントを読み取り、エンジン内でアクションを実行できます。

mental ray までシェーダ情報を伝える

オブジェクトのシェーダ情報を格納するように記述できます。この情報は後でレンダ(mental ray など)で取得することができます。

プラグインがシーン内で独自の状態を維持する

状態情報は簡単なデータ値(CustomProperty オブジェクトの使用により)またはバイナリ値(UserDataBlob の使用により)としてシーン内部に格納できます。このため、カスタム コマンドやそのほかのプラグインが実行されるたびに、前回の終了状態から継続することができます。