hibitekitou
毎回結果が違うものなのかどうなのか。
xsi |2011-12-15
Tori と踊る男。 [Junki The Junkie's Junkyard]
そのあまりに素敵なダンスとカメラワークに魅了されつつ、そこで語られたRSMB…、もとい、リジットボディについて、ちょっとだけ検証してみました。
左メニューのCreate Rigid Bodiesから作成されるシンプルなICE Treeに重力を追加し、2012 SAPですとシミュレートのエンジンがBullet Physicsなので、2012まで標準であったPhysXエンジンと思われるSimulate Rigid Bodiesに差し替えて、シミュレートごとに結果が変わるのか、という事の検証結果です。
パラメータをいっさい変更しなくても、再生するごとに結果が変わってくるらしい、というその状況が本当なのか否か。
上図のように、シミュレートのエンジンの違いと、シェイプの違い(ICE標準のプリミティブかインスタンスか)の4パターンについて、再生するごとに結果が変わるかの簡単な結果が以下です。左右に並んでいるのが、再生の1回目と2回目の比較となります。
下に敷かれたグリッドにコリジョンした後の挙動が全部違いますね。
ってことで、シミュレート結果は、毎回だいたい似たような結果になるけれども、シミュレートごとに変わってくる、と言うことを許容しないといけない雰囲気です。
これ、シミュレートごとに完全に一致させる事はできるんですかね。
<追記>
11/12/17
まだ、下記シーンでの確認しかしていませんが、こんな現象になっています。
Play ControlのPrecisionのForomatが、テストをする前は24fpsでした。それを30fpsに変更。
シーンを再生して、シーンのフレームのお尻に行ったらスクリーンキャプチャして、カレントフレームをトップに戻し、また再生。というのを5回行います。その結果が以下の通り。
あれ?って思いませんか?
再生の回数が奇数の物と偶数のもの、それぞれで結果が似ているように見えます。Photoshopで差の絶対値で重ねると、真っ黒になりました。つまり、最低限シーンの最終フレームでの結果が再生の奇数回と偶数回それぞれで一致している事になります。
一度、formatを59.94fpsに変えて一回再生し、また30fpsに戻して、また5回再生してみました。
やはり偶数回と奇数回、それぞれで結果が一致しています。一致しているものの、59.94fpsに変える前の30fpsでのテスト時の結果とは違うものになっています。
これはどう考えればいいんですかね。
あるいはこのシーンでは再現しなかったのですけど、formatの値が59.94fpsだと安定せず、それを30fpsにしたら安定した、という事もありました(パラメータをいじらなければ、再生の度に結果が変わる、という事が皆無という状況)。この安定した状態が理想なんですけど、なんなんでしょうかね。
バグなのか、どこか設定がおかしいのか…。
追記>
そのあまりに素敵なダンスとカメラワークに魅了されつつ、そこで語られたRSMB…、もとい、リジットボディについて、ちょっとだけ検証してみました。
左メニューのCreate Rigid Bodiesから作成されるシンプルなICE Treeに重力を追加し、2012 SAPですとシミュレートのエンジンがBullet Physicsなので、2012まで標準であったPhysXエンジンと思われるSimulate Rigid Bodiesに差し替えて、シミュレートごとに結果が変わるのか、という事の検証結果です。
パラメータをいっさい変更しなくても、再生するごとに結果が変わってくるらしい、というその状況が本当なのか否か。
上図のように、シミュレートのエンジンの違いと、シェイプの違い(ICE標準のプリミティブかインスタンスか)の4パターンについて、再生するごとに結果が変わるかの簡単な結果が以下です。左右に並んでいるのが、再生の1回目と2回目の比較となります。
下に敷かれたグリッドにコリジョンした後の挙動が全部違いますね。
ってことで、シミュレート結果は、毎回だいたい似たような結果になるけれども、シミュレートごとに変わってくる、と言うことを許容しないといけない雰囲気です。
これ、シミュレートごとに完全に一致させる事はできるんですかね。
<追記>
11/12/17
まだ、下記シーンでの確認しかしていませんが、こんな現象になっています。
Play ControlのPrecisionのForomatが、テストをする前は24fpsでした。それを30fpsに変更。
シーンを再生して、シーンのフレームのお尻に行ったらスクリーンキャプチャして、カレントフレームをトップに戻し、また再生。というのを5回行います。その結果が以下の通り。
あれ?って思いませんか?
再生の回数が奇数の物と偶数のもの、それぞれで結果が似ているように見えます。Photoshopで差の絶対値で重ねると、真っ黒になりました。つまり、最低限シーンの最終フレームでの結果が再生の奇数回と偶数回それぞれで一致している事になります。
一度、formatを59.94fpsに変えて一回再生し、また30fpsに戻して、また5回再生してみました。
やはり偶数回と奇数回、それぞれで結果が一致しています。一致しているものの、59.94fpsに変える前の30fpsでのテスト時の結果とは違うものになっています。
これはどう考えればいいんですかね。
あるいはこのシーンでは再現しなかったのですけど、formatの値が59.94fpsだと安定せず、それを30fpsにしたら安定した、という事もありました(パラメータをいじらなければ、再生の度に結果が変わる、という事が皆無という状況)。この安定した状態が理想なんですけど、なんなんでしょうかね。
バグなのか、どこか設定がおかしいのか…。
追記>
コメント ( 2 )|Trackback ( )
« 皆既月食・Safari 5.1.2 »
引きの絵であれば、だいたい似た結果が得られればちょっとくらい変わってしまっても別に良いのですが、寄りの絵だとそうはいきません。 トーラスダンスの動画を見ると、カメラのすぐ近くまでトーラスが迫ってきているじゃないですか。これ、1個のトーラスがたまたまカメラのすぐ前の空間を占拠してしまい、何も見えなくなるような場合もあるんです。また、RBにありがちな、プルプルと振動を続けていつまで経っても挙動が安定しない奴がカメラの前にいたりする場合もあります。 こういうやつを排除するためになるべくパラメータを調整するのですが、上手く行った場合でも、キャッシュを取ってないと次の再生で同じように上手く排除できているとは限らず、非常に困ります。ほんとに困ります。
Rigid Body な破壊FXアーティストの人たちは、同じ悩みを抱えていないのか? と不思議で不思議で、夜も眠れません。大げさじゃないです。気になって眠れず徹夜で実験して胃を痛くしました。
どうなのでしょう・・・?
おっしゃる通り、他のソフトでの結果が気になるところなんですけど、使えるソフトでシミュレートに対応した物が無い…(^^;
ってことで、FXアーティストの方々、どうなのでしょう?