2008年6月22日日曜日

etc - シェーダー云々

とりあえず動画とか。未だに色とか未調整。
video

本当はモデリングとかアニメーションとかバリバリやりたいんですけど、プログラムのほうで、まだやることがあり、全然Blender触ってません。

今後シェーダーとか適用できるように

以下妄想====>

周知の通り、BlenderはOpenGLで描画されており、XSIのようにリアルタイムシェーダーとかありません。しかし、DirectX側で自前のシェーダーと連携することならアイデア次第で可能なはずです。

まず、思いつくのがマテリアルのノードと連携ってのですが、これは何かめちゃくちゃシェーダー書かないといけないような気がするので却下。次に、Textオブジェクトにシェーダー名を書いて連携というのを考えたんですが、調べたところ、Textオブジェクトには文字列自体は保存されてなくて、Curveが入ってるだけなので却下。

残るはEmptyです。Emptyに自前のシェーダ名を書き、parentにオブジェクト(例えば服の一部など)を設定します。parentが無いEmptyは全オブジェクトに影響するシェーダーということにします。さらにそのEmptyのchildとして、パラメーターを設定できることにします。そして、適当にlocationキーなどを打ちます。マテリアルキーなどと違って、NLAで確認できるという利点があります。そのキーの有効範囲だけ、DirectX側で指定したシェーダーを適用するようにします。

こうして、自前のあらかじめ用意したシェーダーを、特定部位に時間指定で適用できるように

<====妄想ここまで

なればいいのになー。



ところで、XSIのファイルフォーマット、ちらっと見たところ、物凄いサポートされててうらやましいー。

0 件のコメント: