Maya nParticleのキャッシュファイルを自前で作成したくなって、まずは読み込みから。

Devkitの中に「cacheFileExample.py」が入ってますが間違ってる箇所が多いので、必要のないものをバッサリ削って、整理して。で、いちから書きました。

One File/One file per object なmcxファイルの読み込みテストです。PythonスクリプトはTest for Reading mcx file[GitLab]へ置きました。

読み込み結果は長いので別ページ。

以下2フレーム分のコピーです、なんとなく読めた? バイナリデータの書き込みはこれからです、知らないことだらけ。Mayaへの読み込みにはxmlファイルも必要になるし道のりは長い。

消えないパーティクル、life foreverなやつのライフスパンってただ大きな値が入ってるだけなんですね。

1秒を6000ticksで計算してることも初めて知りました。たまに「unitConversion」ノードが自動的に作成されて「Converion Factor」に200と入力されている事があり、その値の意味がわかりませんでしたけど、30fps*200=6000ticks(1sec.)みたいな事?

-----Reading maya mcx-----
FOR8
header size 76
-----Header-----
tag: CACH
tag: VRSN size: 4 version: 0.1     
tag: STIM size: 4 start time: 0    
tag: ETIM size: 4 end time: 1      
--frame 1--
FOR8
frame data block size: 116
tag: MYCH
tag: TIME size: 4 time: 200
end of frame info position: 136
Data tag: CHNM
Data tag: SIZE /size: 4 /Array length: 1
Data channel name size: 22 /Channel name: nParticleShape1_count
Data format DBLA /Buffer length: 8
array('d', [0.0])
--frame 2--
FOR8
frame data block size: 1548
tag: MYCH
tag: TIME size: 4 time: 400
end of frame info position: 268
Data tag: CHNM
Data tag: SIZE /size: 4 /Array length: 3
Data channel name size: 19 /Channel name: nParticleShape1_id
Data format DBLA /Buffer length: 24
array('d', [0.0, 1.0, 2.0])
Data tag: CHNM
Data tag: SIZE /size: 4 /Array length: 1
Data channel name size: 22 /Channel name: nParticleShape1_count
Data format DBLA /Buffer length: 8
array('d', [3.0])
Data tag: CHNM
Data tag: SIZE /size: 4 /Array length: 3
Data channel name size: 25 /Channel name: nParticleShape1_position 
Data format FVCA /Buffer length: 36
array('f', [-0.014299958944320679, 0.00462706945836544, -0.013823986053466797, -0.013400747440755367, -0.005261476617306471, 0.008030020631849766, -0.00470898998901248, -0.006676089484244585, 0.005732767283916473])
Data tag: CHNM
Data tag: SIZE /size: 4 /Array length: 3
Data channel name size: 25 /Channel name: nParticleShape1_velocity 
Data format FVCA /Buffer length: 36
array('f', [-0.6126813292503357, 0.1829606592655182, -0.5922881960868835, -0.8443002104759216, -0.20108866691589355, 0.5059232115745544, -0.6279500126838684, -0.25145256519317627, 0.7644720077514648])
Data tag: CHNM
Data tag: SIZE /size: 4 /Array length: 3
Data channel name size: 29 /Channel name: nParticleShape1_acceleration
Data format FVCA /Buffer length: 36
array('f', [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0])
Data tag: CHNM
Data tag: SIZE /size: 4 /Array length: 3
Data channel name size: 30 /Channel name: nParticleShape1_worldPosition
Data format FVCA /Buffer length: 36
array('f', [-0.014299958944320679, 0.00462706945836544, -0.013823986053466797, -0.013400747440755367, -0.005261476617306471, 0.008030020631849766, -0.00470898998901248, -0.006676089484244585, 0.005732767283916473])
Data tag: CHNM
Data tag: SIZE /size: 4 /Array length: 3
Data channel name size: 30 /Channel name: nParticleShape1_worldVelocity
Data format FVCA /Buffer length: 36
array('f', [-0.6126813292503357, 0.1829606592655182, -0.5922881960868835, -0.8443002104759216, -0.20108866691589355, 0.5059232115745544, -0.6279500126838684, -0.25145256519317627, 0.7644720077514648])
Data tag: CHNM
Data tag: SIZE /size: 4 /Array length: 3
Data channel name size: 43 /Channel name: nParticleShape1_worldVelocityInObjectSpace
Data format FVCA /Buffer length: 36
array('f', [-0.6126813292503357, 0.1829606592655182, -0.5922881960868835, -0.8443002104759216, -0.20108866691589355, 0.5059232115745544, -0.6279500126838684, -0.25145256519317627, 0.7644720077514648])
Data tag: CHNM
Data tag: SIZE /size: 4 /Array length: 3
Data channel name size: 21 /Channel name: nParticleShape1_mass
Data format DBLA /Buffer length: 24
array('d', [1.0, 1.0, 1.0])
Data tag: CHNM
Data tag: SIZE /size: 4 /Array length: 3
Data channel name size: 26 /Channel name: nParticleShape1_birthTime
Data format DBLA /Buffer length: 24
array('d', [0.04333544765935452, 0.05074393202995968, 0.0590502852940529])
Data tag: CHNM
Data tag: SIZE /size: 4 /Array length: 3
Data channel name size: 20 /Channel name: nParticleShape1_age 
Data format DBLA /Buffer length: 24
array('d', [0.023331219007312144, 0.015922734636706987, 0.007616381372613765])
Data tag: CHNM
Data tag: SIZE /size: 4 /Array length: 3
Data channel name size: 32 /Channel name: nParticleShape1_finalLifespanPP
Data format DBLA /Buffer length: 24
array('d', [3.4028234663852886e+38, 3.4028234663852886e+38, 3.4028234663852886e+38])
Data tag: CHNM
Data tag: SIZE /size: 4 /Array length: 3
Data channel name size: 27 /Channel name: nParticleShape1_lifespanPP
Data format DBLA /Buffer length: 24
array('d', [3.4028234663852886e+38, 3.4028234663852886e+38, 3.4028234663852886e+38])

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です