| サンプルを作り直していただいてありがとうございます。
こちらでもDirectX SDK付属のMeshViewで再保存してみましたところ、元の Xファイルに対して微妙な誤差が確認できました。
> ToyStudioで作ったXファイルをMeshViewで保存しなおすと > FrameTransformMatrixに微妙な誤差が生じるのですが、 > 何故ですか?
恐らく、XファイルがDirectXライブラリー側でロードされる際には、4×4アフィン 行列から、移動(x,y,z)、回転クォータニオン(x,y,z,w)、スケール(x,y,z)の 各パラメータにに変換されてメモリー上に保持されているのだと思います。 それが再度保存する際にアフィン行列にまた変換されるため、元のファイルの 行列の値に対して誤差が生じているのだと思います。
> 全く同じ値で保存しなおす事はできますか?
MeshView側で行列からパラメータに変換され、再度行列に変換されるので、多少の 誤差は避けられないように思います。
※私の方で変換チェックを行ったファイルを一応添付しておきます。1331809491mv.x がMeshViewで再保存されたもので、読みやすいように行列は改行されています。
|