| こんにちは。ToyStudioをいつも楽しく使わせていただいております。 SDKサンプルのコードなどを参考にスキンアニメーションのプログラムを組んでいたのですが、 ToyStudioで出力されたアニメーションxファイルを読み込む際に、エラーメッセージが吐き出されてしまいます。 ・エラーを出すだけで再生は問題ありません ・SDK付属のサンプルファイルtiny.xではこのエラーは出ません
エラー内容は
Assertion failure! (s:\gfx_sdknovember08\windows\directx\dxg\d3d11\d3dx9\mesh\skinmesh.inl 573): fabs(sum - 1.f) < 0.001 これが数十行出力されます。 エラーの出るタイミングを調べたところ、 メッシュの最適化であるConvertToBlendedMesh(〜〜〜) を実行した瞬間に出力されていることが分かりました。
なんとなく、xファイルの中の頂点のボーンに対する重みの設定が、全部足して1になっていない、というエラーなような気もします。
スキニングでいろいろいじり、出力したxファイルなのですが、 吐き出す時の設定などによって上記のようなことが起きたりするものなのでしょうか? もしくは、ほかの原因が考えられますでしょうか? ご教示いただければ幸いです。
一応その.toyファイル、メタセコイアファイル、吐き出したxファイルを添付いたします。
自分の環境は、 C++言語で VisualStudio2008 ExpressEdition DirectX9.0c Microsoft DirectX SDK (November 2008) です。
|