なんでかタイトルがにゃらん調w
前回の記事
で、3dsmaxでエクスポートしたリグドメッシュがなんでかSecondlife(SL)でカルシウム不足とみなされてボーン情報がガン無視される件のお話です
あ、なんか備忘録っぽくなってきたにょ( ´艸`)
前回の記事でもちょこっと書きましたけど、
3dsmaxでリグドメッシュを.daeで書き出した場合、ウェイト設定されていないボーンに関しては.daeへ出力されない仕様の様なんですね。。
例えば、頭部分だけリグドメッシュで出力したい場合、頭ってheadとneckのボーンにウエイトかけるじゃないですか。
てか、頭のオブジェクトにカカトの骨とかウエイト付けなんてしませんもw
でもそーすると、3dsmaxのColladaエクスポーター君で普通に.dae出力しますと、headとneckに関しての骨情報しか出力してくれないんですね。
出力した結果の.daeファイルをテキストエディターで開いてみますと、
<Name_array id="headMeshController-Joints-array" count="2">
mNeck mHead</Name_array>
と、骨情報がmNeckとmHeadしか存在しないことになってます 。
これがカルシウム不足ですw
こういう場合、
困った時のBlender
という事で、Blenderに一旦持っててですね・・
とか今回はしませんヾ(≧▽≦)ノ
だって面倒ですもんw
ちょっとウエィトとか形状を確認したいのに、いちいちBlenderへ戻ってとか面倒ですよね・・
全部Blenderで作ってれば問題ないですけど^^;
・・
で、この3dsmaxでのカルシウム不足現象を回避するには、
全ボーンのウエイトつけてやる
くらいしかあたしには回避方法がみつかりませんでした・・
や、だから頭にかかとボーンとか関係ないしw
だけど、3dsmax使って、全身メッシュのものがアップできて、部分メッシュだけだとNGなのはそういう事なんですよね。
全身メッシュは当然、全ボーンのウエイト設定しますも。。
ところが、現在の26基本ボーン設定のものならまだしも、Project Bentoの160ボーンのものなんて全ボーン設定しないでしょ普通w
あ、フィットメッシュでも調整用のボーン入れると全50個くらいだったかしら。。
こーなってくると、3dsmaxの.daeエクスポーター自体をなんとかしないとダメっぽい気がするんですけど、とりあえず回避方法があるのでそれで凌ぎます。
最終的にほんとに困ったらBlender先輩がいますしw
・・・
さてさて、とりあえずは上記の「頭」部分のメッシュだけアップロードできるようにしてみますね
まずは、スキンモディファイヤのロールアップの拡張パラメータ箇所の「リンクするボーンの制限」のところをSL基本アバター骨格ボーン数の26に設定します
で、スキンモディファイヤの「ウエイトテーブル」開きまーす
とりあえず頂点#0がmNeckに対して1.000でウェイト設定されてますので、この頂点#0のウェイトを、
mHead以外の全ボーン(24個)にちょこっと値をいれてやります。0じゃダメです ←これ重要w
そうすると、ウエイト値が正規化されていれば当然mNeckのウエイト減りますよねw
頭がカカトにつられて動いちゃうってことでしょ・・
それじゃこまるので、mNeckのところの頂点#0の値を1.0に修正してあげます
そうしますと・・
さっきに入力したところが全部「0.000」になります。
当たり前っちゃ当たり前ですw
ところが、この状態でmax形式で保存しますでしょ、再度読み込んでも・・
あら不思議w ちゃんと値が「0.000」のまま残ります
この状態で.dae出力してあげますと、
<Name_array id="headMeshController-Joints-array" count="26">
mNeck mSkull mToeLeft mToeRight mEyeLeft mEyeRight mCollarLeft mCollarRight
mShoulderLeft mShoulderRight mElbowLeft mElbowRight mWristLeft mWristRight mChest mTorso
mPelvis mHipLeft mHipRight mKneeLeft mKneeRight mAnkleLeft mAnkleRight mFootLeft
mFootRight mHead</Name_array>
ちゃんと26個のボーン情報が出力されてます
ですので、SLにもカルシウム不足と思われず、
全身メッシュのときとは異なりまして、アップロード時点で「頭」変な向きでプレビューに表示されてますけど、
この状態でちゃんと「アバターモデル専用」オプションが表示されまして、
「スキンの重さを含む」にチェックいれれるようになってます。
で、これをアップして装着しますと
ちゃんと頭に装着されまーす
てかね、カルシウム不足回避方法わかったけど
こんな作業、スキニングの度にやるの面倒ですよ
やっぱBlender先輩・・
あ、いあ、この辺を効率よくこなす術(?)は、また次回のネタです( ´艸`)
(つづく)