スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

マテリアルの受け渡し

メタセコで素材の設定を行ったとしてそれをエルフレイナでXファイルにする。

コンテントパイプラインでそれを受け取りエフェクトにパラメータを設定してやる。

effectMaterial.Effect = new ExternalReference(effectFile);
effectMaterial.OpaqueData.Add("ModelDiffuseColor", basicMaterial.DiffuseColor);
effectMaterial.OpaqueData.Add("ModelSpecularColor", basicMaterial.SpecularColor);
effectMaterial.OpaqueData.Add("ModelEmissiveColor", basicMaterial.EmissiveColor);

といった感じで設定できる。

ここでメタセコのデータがこちらまで届いていないことが分かる。

結論からいうとエルフレイナのXファイル書き出しを行った時点でスペキュラなどの値はデフォルトに一律設定されてしまうようだ。

また
Xファイル内で
Material {
1.000000;1.000000;1.000000;1.000000;;
0.000000; ←ここが SpecularPower
1.000000;1.000000;1.000000;; ←ここが SpecularColor
0.400000;0.400000;0.400000;;


SpecularPowerが0の場合上記の方法でエフェクトに登録しようとエラーになるバグがあるようだ。
0で無ければエラーにはならないし、basicMaterial.SpecularPowerを使わずに数値で0を設定すればエラーにならない。
多分XNA側の問題だろう。
try
{
effectMaterial.OpaqueData.Add("SpecularPower", basicMaterial.SpecularPower.Value);
}
catch (Exception)
{
effectMaterial.OpaqueData.Add("SpecularPower", 0.0f);
}
で切り抜けよう。


さて、素材パラメータを手動で設定する作業がどこかで必要になる。
以前ブログで紹介した「モデルじゃなくてテクスチャごとにするべきだった!」のところを結局いじることになる。
テクスチャごとにXMLファイルを用意して高さ情報から素材感を表すパラメータ、光の当たり方などのデータを全部持たせることにした。柔軟性もあるし作ってしまえば満足の仕様。うん。よし。

おおまかな「表示する」ためのプログラムまわりが出来てきたように思える。
@ちょっとでモーションにいけそうな気がしないでもない。
そして猫ペイント楽しい。

もやっと。
スポンサーサイト

モーションを探せ!(BVH)

昨日の続きというわけでモーションを探す作業をしていたらBVHはフリーが多いというものの日本のサイトではそこまで数が置いていないようだ。
海外のサイトでいろいろ探してみたものの苦手な英語を翻訳してみるとダウンロードはフリーでも使用する場合はサイトのURLと会社のロゴを載せろ~的なものばかり。
うやむやなものも結構あるけどどうなんだろこれ・・・

そんななかオープンソースで セカンドライフのモーションを作るソフト というものの記事が目に止まった。
最初はスルーしていたのだがどうやら書き出し形式がBVH。
これはもしや!と思いDLしてみたところBVHサンプルが100個くらい入っている。ナイスだ私の
海外ソフトなのだが「avimator」というソフトでBVH読み込みと書き出しが付いている。もちろんフリー。

とりあえずこのソフトでBVHも書き出せるようだがモーション付けは確実にエルフレイナの方が上っぽいのでそれ以外は触れないでおいた。
他にもサイトを巡ってちらほらダウンロードして欲しそうなモーションはかき集めてみた。

これをもとにモーション作成に入るぞ~ってとこで今日は終了。

地味に音楽も作った。
複数の曲をバラバラに進行させてもおかしくならないように「音楽メモ帳」たるノートを作成したのだが、それでも混乱するときがある。
コード(和声学の表記であるⅠ→Ⅱ→ⅤとかとアルファベットのC→Dm→G7が混じっててなんかすっごいことになってるのは秘密)やテンポ、作成しだした日などが書かれているのだが、作り出したときのコンセプト?みたいのを書いておけばよかったと後悔している。
こうなったら途中ですっごい転調をかませてごまかしきる技を身に着けよう・・・
そもそもゲーム音楽って自分は即効OFFにするのでそうされるのがオチなのだろうな、と、少し寂しい。

ねよっと。

エルフレイナ最強伝説のはじまりの予感

前回Blenderで生きていくと大きなことを言ったのにいきなり方向転換したあしゃです。こんばんわ。

いやー本まで買って真剣に取り組みました。
blender.jpg
↑ほら。がんばってる。
モデリングからはじめてモーションまで一通り?済ませたとこでふと疑問に思ったことがあります。
(なんで最初に考えなかったのかが不思議)

「Xファイルに吐き出したときどこまで情報ついてくるの?」

「・・・・・」


しまった!あんまり考えてなかった~~
調べてみると、結構残酷な結果です。
要するに 自前で管理形式ファイル作って吐き出すのと同じような苦労が伴いますよ ってことみたい

たしかにクロス(布みたいにひ~らひら)とか重力計算(ストーンっておちます)とかソフトボディ(揺れます)とか地面に足が埋め込まないぜ!とかIK+間接の動く方向固定で楽々モーション作成とかもうそれはそれは、今後あると助かる機能がいっぱいです。

しかーし。XNAに取り込めなきゃ意味が無くね?(心の中でエコーがかかった風にいってます)って話なのです。自力でコンテントパイプラインとXファイルの仕様書を片手に闘い、よれよれになった所にシェーダ君のパンチをくらうのもいいかもしれませんが、、、っと、諦めかけたとき朗報が。

エルフレイナのシェア版の1.2βがBVHファイル読み込めるらしいよ。

神が舞い降りました。
「エルフレイナ」とはそもそも作者がXNAの製作系の本を出すなどXNAに通ずる方であり、XNAとソフトの相性も群を抜いた存在。
ただ、外部形式を参照する力がなく、手作業でモーションを入れるにしても角度、移動、拡大といったような基本の設定を弄るソフトでリグやIKを素晴らしく使いこなそう!といったようなアプローチが見られず使用は断念しておりました(一応購入はしております。2000円くらいだったからねっ♪)
しかしBVHが読み込めるとなると話が違ってきます。

そもそもフリーモーションを拾ってきてそれを元にモーション付けというのがモーション作成の目標過程でした。
これに一気に近づくわけで、形式が違って読み込めないモーションがあったとしても ~ファイル→BVHファイルが可能なソフトを経由させることで全部エルフレイナで管理できるわけです。
さらに、エルフレイナは一つのモーションに複数のモーションを入れることができるために非常に管理に優れています。個人的に統合ソフトには持ち得ない「モデルの被破壊性」が最大のお気に入りとなりそうです。

そんなこんなでBlenderにお別れを告げようかと思ったのですが、モーションはよしとしても、モデリングのとき気に入った機能が使えないというのがどうも悔しいのでメタセコで探したところ「同じ機能がほとんどありました」あらら。
・(Blender)サーフェイスモデファイアから実体化 → (メタセコ)オブジェクトに曲面を設定できる。
・(Blender)鏡面リアルタイム作成→ (メタセコ)これもオブジェクトごとにあるのね。。
・(Blender)Nun「.」で現在選択しているものを中心に視点を変える→ (メタセコ)Ctrl+W


単にしらなかっただけなのね。

なかったのはZで透明半透明、押し出し最中に方向をXYZで選べる、ナイフのループカットの入れる位置を切る前に確認しながら入れられる。などですが↑の欲しい三つがあって比較的どうでもよいのが無いだけだったので良しとしました。



時間じゃないけどお決まり台詞っぽくなってきたので一応。

ねよっと。

プロフィール

あしゅ

Author:あしゅ
ぷぃぷぃ日常。
いつのまにか雑記ブログに。

カテゴリ
最新記事
検索フォーム
最新コメント
リンク
このブログをリンクに追加する
ブロとも申請フォーム

この人とブロともになる

カウンター
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。