募集要項

  • ■ボイスの募集は終了しました。

    非常に沢山のご応募ありがとうございました!

     結果はこちら
2017年8月
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

« 【Unity Tips】Mayaからのマテリアルアニメーション出力1 | トップページ | 【Unity Tips】 マテリアルをTRSで操作するスクリプトを作ってみた »

2014年3月 8日 (土)

【Unity Tips】Mayaからのマテリアルアニメーション出力2

結論から言えば、エクスポーターは出来て、
Unityでスクリプトを介して値の反映はできました。
…が、若干問題有りな状態です。

まず、Mayaから持っていける値として今回実装したのが、
Material.mainTextureOffset = new Vector2 (,);//UVのオフセット情報
Material.mainTextureScale= new Vector2 (,);//UVのスケール(タイリング)情報
Material.color = new Vector4(,,,);//マテリアルのカラー(アルファも)

の合計8パラメータ。

エクスポーターは↓な感じ
0001
マテリアル名を基準として参照し、UV、カラー情報をまとめて出力したり、
部分的に出力したりできる感じにしました。
一度でも出力したら、出力情報はシーン内に残るようになっていて、
再度出力する場合はそのまま出力すればいい感じにしてます。

で、UnityとMayaの挙動比較です。
(再生タイミングややずれてますが面倒なのでそのままで(;´∀`))
左がUnityで、右がMayaです。
一応UVのオフセット、スケール、カラー、アルファ情報が
Unity側で反映できてるのが分るかと思います。


で、何が問題かといいますと、
各情報を、空のオブジェクトのTransformに入れて参照しているのですが、
回転値を使用した値で微妙に誤差が出ました…。
内容としては

1:回転を参照したバラメータがMayaと値が微妙に違う
2:回転は接線情報が持ってこれないので、キーの前後の値に誤差が出る

の2点。
一応ある程度正しくは動くのですが…地味にもやもやします。
以前カメラのカット切り替え等で起こってた問題に近いですね。

上記「2」の問題に関しては、アニメーションの圧縮を無しにすれば正しく動作はしますが、
アニメーション容量が200fで圧縮有りで18k、圧縮無しで92kとなっており、
これは圧縮はしたいなぁ・・・という感じ。
「1」に関しては、オイラーとクォータニオンの変換時の誤差っぽいので
回避は無理そうです。
使用する値自体は0-1なので、極端にずれることは無さそうですが、
それでも微妙な差は出るようです。

また、それらとは別に、mainTextureOffsetのUは*-1しないといけないだとか、
回転も、360度補正+αしたりは必要です。

で、現状で思いつく対策は↓くらい。

①Mayaから出力できるパラメータを減らす
 ⇒カラーのRGBを持って行けなくする感じ(アルファだけは可とか)。
  ※移動、スケールの各値に代入するとして最大6種

②UVの位置&スケールアニメーションと、カラーアニメーションのデータを分ける
③誤差を許容する(様子見)

くらいでしょうか。

…とりあえず色々と悩んだ結果、
③の様子見にしようかと思います。
マテリアルのアニメーションに関しては、
比較的滑らかに動かす事が多いため、
許容できる誤差の場合がほとんどなのでは?と考えた為です。
上の動画もほとんど気になりません・・・よね?(`Д´≡`Д´)??

一応、できる範囲の対策、という事で
誤差が目立ち難い「カラーのRGB値」を回転情報へ持って行き、
「UVのオフセット&スケール値&アルファ情報」は誤差のほぼ出ない
移動、スケールに紐付けるという対応はしたりしてます。

で、しばらく使ってみて、やはり誤差が厳しいようなら、
②のファイル分割を検討しようかと思います。
決して面倒だからとかじゃないですよ?ヾ(゚ω゚)ノ゛

という訳で一応は一段落したので、
次は、Untiy上で手動でマテリアルのカスタムパラメータの
アニメーション反映処理とかその辺りを作ろうかと思います。

« 【Unity Tips】Mayaからのマテリアルアニメーション出力1 | トップページ | 【Unity Tips】 マテリアルをTRSで操作するスクリプトを作ってみた »

Unity Tips」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/1500357/55291587

この記事へのトラックバック一覧です: 【Unity Tips】Mayaからのマテリアルアニメーション出力2:

« 【Unity Tips】Mayaからのマテリアルアニメーション出力1 | トップページ | 【Unity Tips】 マテリアルをTRSで操作するスクリプトを作ってみた »

Twitter等

  • にほんブログ村 ゲームブログ ゲーム制作へ

メールフォーム

  • 直接コンタクト取りたい方はこちらからどうぞ

サイト内検索
ココログ最強検索 by 暴想