Xファイルアニメーションに対応
仕事でしばらくVS2005を使っていたので、すっかり2005になれてしまいました。C#2.0もListとかに慣れてしまって、もう2003で作る気になりません。
まず、CLKsGraphicsライブラリ(先月から作っていたグラフィックライブラリ)を2005へ移しました。ついでに、HLSLファイルもリソースとして読み込むようにして、DLL内に埋め込みました。Managedのバグで、日本語を含むパスのHLSLファイルを読めなかった問題も解決です。(それ以外にも方法はありますが、これが一番かっこいいですね。fxファイル読まれたくないし)
次に、まだ実装していなかったビルボードと2D描画用メソッドを追加しました。これは以前にも作ったことがあったので、ほとんどコピペで完了です。
最後に、Xファイルのアニメーションに対応しました。参考にしたのはここらへん。
http://www.microsoft.com/japan/msdn/directx/japan/dx9/mxd6.asp
ただ、サンプルのライブラリバージョンが低いので、結構修正を加えないと動いてくれませんでした。一応、複数アニメーションまで対応できました。アニメーションブレンドもそのうち実装したいところです。
今回のライブラリは、プログラマブルシェーダーをベースに開発しているので、ジオメトリブレンディングも自前で実装しました。スキンメッシュもしっかり影がおとせます。
こんな感じのものができました。かなり怪しいサンプルですが・・・
サンプルムービー 11Mb
お次は、シーングラフでも作ろうかなぁ〜〜〜