Adaptive Subdivision モディファイア(開発中)
投稿日時 2008年04月06日 | カテゴリ: テストビルド
|
元記事:Adaptive Subdivision Modifier (in development) at BlenderNation
Kernon氏による記事です。
以前に、別の奇妙なアイデアが浮かびました。今ここにあるのがその、Python でマイクロポリゴンを実装した物です。非常に遅く、信じられないほどメモリを消費するため、おそらく今まで作られた中で最低のマイクロポリゴン実装だと思いますが、少なくとも動作はします。
更に開発が進行した状態 モーションブラー用に少し最適化しました。
下のサンプルは、深度画像がマッピングされています。
私は単に Suzanne を置き、Zバッファから直にデプスマップを生成し、その後ディスプレイスメントモディファイアを適用しました。それぞれのサイズごとに二つの違うUVレイヤを使用しているため、これら二つは正確にしなければなりません。使用した画像は下にあります。
別のサンプル
レンダリング時間:6分、12,000,000マイクロポリゴン Python スクリプトとしては悪くないでしょう。
最初のリリース(コードは C に変換され、テストビルドにモディファイアとして統合されています)。
これは最初のテストビルド(Windows用)で、まだ未解決の問題がいくつか残っています。 [wiki]-現時点ではまだモーションブラー補正と最適化はありません。モディファイアは、通常のモーションブラーとベクターブラー用にそれぞれのサブフレームが計算されますが、現時点では全く動作しません。 -レンダリング時、Vector Blur もしくは Speed Vector がOFFの状態でも、モディファイアは常にフレームごとに三回計算されます。なぜ Blender がこんなことをするのか分かりません。奇妙です。 -ビューポートでは、一定時間ごとに変更される、アニメーションするカメラの位置と角度が、どういうわけか常に1フレーム遅れになります。モディファイアがその原因なのかどうか分かりませんが、G.scene->camera->obmat が単純に古い値を返してきます。 -何人からのエンドユーザのために、Meshツール機能の奇妙な挙動を回避するための見えない部分のハックが必要になりました。Blender 開発者たちとこのことについて話をする必要があります。 [/wiki] 遅くはなってしまいましたが、動作はすると思います。 バイナリのダウンロードは Graphocall.org から。
また、他のプラットフォームでビルドしたい人のために、パッチも作成しました。古いコードがたくさんありますが、問題が解決した時に後ほどクリーンアップする予定です。
更なる詳細と、開発進行を追いたい人は、こちらの BlenderArtists のスレッドにどうぞ。
つまり、右の図のように、カメラの近辺では細かく、遠く離れていると荒く自動分割してくれるモディファイアというわけです。初めから高いポリゴン数で作成するのもいいのですが、遠いところではムダにメモリを食うため、こういう処理を行うことにより、メモリと速度が節約できます。
|
|