ジャンプ先: 概要. 戻り値. 関連. フラグ. Python 例.
dynExport(
[objects]
, [allObjects=boolean], [attribute=string], [format=string], [maxFrame=time], [minFrame=time], [overSampling=int], [path=string])
注: オブジェクトの名前と引数を表す文字列は、カンマで区切る必要があります。これはシノプシスに示されていません。
dynExport は、取り消し可能、照会不可能、および編集不可能です。
パーティクル データがディスク ファイルに書き出しされます。
キャッシュ書き出し(-format cache)の場合は、現在の dynGlobals ノードの 3 つのアトリビュートも設定されます。useParticleRenderCache アトリビュートは true に、min/maxFrameOfLastParticleRenderCache アトリビュートは最小フレームと最大フレームに設定されます。
書き出しされた .pda ファイルや .pdb ファイルの名前は、object name.frame.extension という形式になります。extension は「pda」か「pdb」です。
.pdc ファイルの命名規則も同じですが、フレーム番号ではなく、時間の正確な表現が使用されます。
pda フォーマットと pdb フォーマットでは、すべてのパーティクル単位のアトリビュート、すべての整数型アトリビュートか浮動小数点型アトリビュートが既定で書き出しされますが、非表示のものや保存できないものは書き出しされませんpdc フォーマットでは、パーティクル オブジェクトが状態キャッシュで必要とする、すべてのアトリビュートが書き出しされます。
選択したアトリビュートのみを指定するには、-atr フラグ(多目的)を使用します。キャッシュに便利なようにすべてのアトリビュートが必要になるので、通常はこのフラグを pdc タイプで使用しないでください。
dynExport では、現在のフレームのデータ、または -mnf と -mxf で指定したフレーム範囲のデータが書き出しされます。開始フレームにまだ達していない場合は、dynExport によってシーンが再計算されます。要注意: dynExport を -prompt モードで使用すると、オブジェクトは自動的に強制評価されません。評価はスクリプトから実行してください。評価の近道として、それぞれのフレームで各パーティクル オブジェクトの「count」アトリビュートを要求することが挙げられます。ソルバは相互に独立して動作するので、書き出すそれぞれのオブジェクトで count アトリビュートを要求する必要があります。インタラクティブ モードの場合、オブジェクトは自動的に評価されるので、評価について気にすることはありません。
別のパーティクル オブジェクトにあるパーティクルに含まれる衝突から作成されるパーティクルの、パーティクル オブジェクトを書き出す場合には、空のキャッシュ ファイルを作成するのでないかぎり、従属チェーンに同時に含まれるパーティクル オブジェクトをすべて書き出したかどうかを確認する必要があります。
パーティクル単位のアトリビュート以外の場合、pda フォーマットと pdb フォーマットでは、パーティクルごとに同じ値が書き込まれます。パーティクル単位のアトリビュート以外では、float、double、doubleLinear、doubleAngle、byte、short、long、enum を書き出せます。前から 4 つは「Real」(PDB パーティクル)として、後の 4 つは「Integer」として書き出しされます。
pda フォーマットと pdb フォーマットの場合、「particleId」と「particleId0」は、それぞれ「id」と「id0」という名前で整数として書き出しされます。その他すべてのアトリビュートはロング ネームで書き出しされます。
getParticleAttr, particle
allObjects, attribute, format, maxFrame, minFrame, overSampling, path
ロング ネーム(ショート ネーム) |
引数タイプ |
プロパティ |
attribute(atr)
|
string
|
|
|
書き出すアトリビュートの名前。指定したオブジェクトに指定したアトリビュートが含まれない場合、dynExport はエラーとなり、書き出しは実行されません。
|
|
minFrame(mnf)
|
time
|
|
|
書き出す開始フレーム。書き出し操作では、最小フレームから最大フレームのシーンが書き出し中に再生されます。
|
|
maxFrame(mxf)
|
time
|
|
|
overSampling(os)
|
int
|
|
|
allObjects(all)
|
boolean
|
|
|
セレクション リストが無視され、すべてのパーティクル オブジェクトが書き出しされます。オブジェクト名も指定した場合、-all フラグは無視されます。
|
|
path(p)
|
string
|
|
|
ワークスペースのサブディレクトリである「particles」ディレクトリを指定し、書き出し済みファイルを格納できます。既定では、ワークスペース パーティクル ディレクトリにファイルが格納されます。-path は、このディレクトリの相対パスです (注: これは、パスがワークスペース ルート ディレクトリの相対パスだった、Maya の以前のバージョンからの変更です)。「particles」ディレクトリは、プロジェクト ウィンドウかワークスペース -fr コマンドを使用して任意の場所に設定できます(この方法で、書き出しに絶対パスを使用することができます)。 -path フラグでは、「/」や「¥」を含む文字列が処理されません。すなわち、ディレクトリ階層の 1 レベル下のみが処理されます。存在しないパスを指定した場合、可能であればそのパスが作成されます。パスを作成できない場合、警告が表示され、エラーになります。パーティクル データ ディレクトリが定義されていないプロジェクトを使用すると、dynExport では、「particles」という既定のディレクトリが作成されてワークスペースに追加されます。
|
|
format(f)
|
string
|
|
|
目的のフォーマット。「binary」(「pdb」)、「ascii」(「pda」)、「cache」(「pdc」)のうちいずれかになります。 pdc フォーマットは、Maya パーティクル システムでパーティクル データをキャッシュするために使用します。pda フォーマット オプションと pdb フォーマット オプションは、その他のソフトウェアが関係するパイプライン用です(たとえば、社内で作成したプログラムにデータを送信する場合など)。Maya では pda フォーマットと pdb フォーマットを読み込めません。 pdb フォーマットの正式な説明はありませんが、ExploreMe/particles/readpdb ディレクトリに、この pdb フォーマットを読み取る小さくてシンプルな C プログラム「readpdb」のソースと Makefile が含まれています。ファイルを書き出すプラットフォームで、readpdb をコンパイルして実行する必要があることに注意してください。
|
|
フラグはコマンドの作成モードで表示できます
|
フラグはコマンドの編集モードで表示できます
|
フラグはコマンドの照会モードで表示できます
|
フラグに複数の引数を指定し、タプルまたはリストとして渡すことができます。
|
import maya.cmds as cmds
cmds.dynExport( 'particle1', mnf=5, mxf=10, os=2, atr=('position', 'velocity'), p='PDB' )
# Export position and velocity attributes for particle1
# for frames 5 through 10 at every half frame interval,
# to files in subdirectory "PDB" of the workspace root
# directory. The default format (binary) will be used.