レンダリングエラーへの対処
とりあえず、Bipedを仕込む前にHairとルックアットコンストレイントを使ってみた。
ルックアットコンストレイントは左右の眼球のそれぞれに目の寄り具合用のダミーを個別に用意して設定。さらにこの二つのダミーの親となるダミーを用意してリンク、親のダミーを動かせば両目が追随するようにした。
ここで厄介な問題が浮上。動作試験として上記のデータで100フレームのアニメをレンダリングするのだが、いつも40フレームや80フレームあたりでレンダリングエラーが起き、maxごと落ちる。(一応リカバリ保存はできるが、それまでレンダリングした動画はお釈迦になる)
仕方ないので、動画はAVI一発出しをやめてBMPで連番保存。落ちたところで再起動し、落ちた次のフレームからレンダリングして、あとで連番BMPからAVIに変換することにした。フレーム指定で再レンダリングはできることから、多分データ自体はメモリがあるうちは正常に動作し、何かの要素の影響で計算の途中でメモリ消費が膨れ上がって落ちているのではないだろうか。
連番BMPから動画ファイル(AVI)への変換はmaxをリセットし、環境で環境マップにBitmap指定で連番のファイル名を入れ、シーケンスにチェックを入れて設定。あとはそのままレンダリングダイアログで総フレーム数を設定し、出力ファイル名(AVI)を指定してレンダリングすればいいことがわかった。

↑クリックで動画にリンクしてます。
Hairは衝突判定なしでやっているが風が弱めなのであまりめり込みは目立っていない。
エラーの原因だが、いろいろ試してみたところ、どうやらHairに影響するライトが多いのが原因らしい。(使用しているライトは4つ+インスタンス1つ)
環境/効果の効果からHairとFurを選択、ライトの項目で「レンダリング時にすべてのライトを使用」チェックボックスのチェックをはずし、Hairにあまり影響の無いライトを選択し、効果の「ヘアのプロパティを削除」ボタンでそのライトをHair計算から除外。結局2つのライトだけ残してあとはHairの計算からはずした。これでレンダリングエラーが起きなくなったところをみると、Hairは2つ程度のライトに留めたほうが無難という気がする。(因みにライト側のライト属性のライトヘアのチェックをはずしてもエラーが起きるので、面倒でもこちらの方法をとった)
原因は他にもあるのかもしれないが、とりあえずこれで今のデータではエラーが起きなくなったので良しとしよう。
The comments to this entry are closed.



Comments