前回は、ヘアーパーティクルシステムをつかって芝生を表現するモデルをつくりました。今回はそれを実際にレンダリングしてみたいと思います。
Contents
しかし、オブジェクトの表面全体に配置すると、オブジェクトのサイズによってはパーティクルの数がとても多くなってしまい、レンダリング時間が長くなってしまうというデメリットがあります。
そのため、本物に近い表現を維持しながら、できるだけパーティクルの数を減らす必要があります。
では、実際、本物に近い表現を維持するためにはどのくらいのパーティクルが必要で、そのときのレンダリング時間はどのくらいになるのでしょうか?
それを今回は芝生のモデルを使いながら確認してみたいと思います。
まず、親パーティクルだけの状態でレンダリングしてみます。
パーティクル数が増えるとレンダリング時間も増えますが、パーティクル数に比例して増えるようではありません。実際に 5000 → 10000 では、パーティクル数は2倍になっていますがレンダリング時間はそれほど変化ありません。
レンダリング画像を見ると、このサイズのモデルで芝生の質感を表現するには「10000」程度のパーティクル数が必要なようなので、トータルのパーティクル数は「10000」として、子パーティクルをつかってレンダリング時間を比較してみます。
このモデルでは、親パーティクルと子パーティクルの割合を変化させても、レンダリング時間に大きな変化はありませんでした。
実際に確認してみたいと思います。
さすがにモデルのサイズが大きいので、100万個以下のパーティクル数であれば表面が完全に覆われていません。
1000万個であれば、十分に芝生の質感を表現できます。レンダリング時間もこの程度であれば問題はないでしょう。
次に、1000万個のパーティクルに「粗さ」のプロパティを追加した場合のレンダリング時間を確認してみます。
画像のサイズに対してヘアープロパティの長さが短いからか、「粗さ」のプロパティを追加してもレンダリング画像の変化はあまりなく、どの場合もそれなりに芝生を表現できています。
この結果からフルサイズのサッカーコートでも1000万個程度のパーティクルを設定すれば、レンダリング時間を考えても十分に対応できそうです。

Contents
1. パーティクルシステムのレンダリング
芝生を表現するためにつかった「ヘアーパーティクルシステム」という機能ですが、設定をするだけで細かいたくさんの毛のようなものを表現することができます。しかし、オブジェクトの表面全体に配置すると、オブジェクトのサイズによってはパーティクルの数がとても多くなってしまい、レンダリング時間が長くなってしまうというデメリットがあります。
そのため、本物に近い表現を維持しながら、できるだけパーティクルの数を減らす必要があります。
では、実際、本物に近い表現を維持するためにはどのくらいのパーティクルが必要で、そのときのレンダリング時間はどのくらいになるのでしょうか?
それを今回は芝生のモデルを使いながら確認してみたいと思います。
2. 1m×1m芝生マットのレンダリング
それでは前回つくった 1m×1m の芝生マットをレンダリングしてみたいと思います。まず、親パーティクルだけの状態でレンダリングしてみます。
親パーティクル数 | 子パーティクル数 | レンダリング時間 |
---|---|---|
1000 | 0 | 32秒 |
5000 | 0 | 50秒 |
10000 | 0 | 52秒 |
パーティクル数が増えるとレンダリング時間も増えますが、パーティクル数に比例して増えるようではありません。実際に 5000 → 10000 では、パーティクル数は2倍になっていますがレンダリング時間はそれほど変化ありません。
レンダリング画像を見ると、このサイズのモデルで芝生の質感を表現するには「10000」程度のパーティクル数が必要なようなので、トータルのパーティクル数は「10000」として、子パーティクルをつかってレンダリング時間を比較してみます。
親パーティクル数 | 子パーティクル数 | レンダリング時間 |
---|---|---|
10000 | 0 | 52秒 |
100 | 100 | 54秒 |
10 | 1000 | 54秒 |
このモデルでは、親パーティクルと子パーティクルの割合を変化させても、レンダリング時間に大きな変化はありませんでした。
3. サッカーコートをレンダリングしたらどうなるか
それでは、フルサイズのサッカーコートをヘアーパーティクルをつかってレンダリングして、芝生の質感を再現したら、どのくらいのパーティクル数が必要で、レンダリング時間はどのくらいになるのでしょうか?実際に確認してみたいと思います。
親パーティクル数 | 子パーティクル数 | レンダリング時間 |
---|---|---|
100 | 100 | 37秒 |
100 | 1000 | 40秒 |
100 | 10000 | 1分01秒 |
100 | 100000 | 2分55秒 |
1000 | 10000 | 2分56秒 |
さすがにモデルのサイズが大きいので、100万個以下のパーティクル数であれば表面が完全に覆われていません。
1000万個であれば、十分に芝生の質感を表現できます。レンダリング時間もこの程度であれば問題はないでしょう。
次に、1000万個のパーティクルに「粗さ」のプロパティを追加した場合のレンダリング時間を確認してみます。
粗さ | レンダリング時間 |
---|---|
なし | 2分55秒 |
均一 | 3分05秒 |
終端 | 3分11秒 |
ランダム | 3分16秒 |
画像のサイズに対してヘアープロパティの長さが短いからか、「粗さ」のプロパティを追加してもレンダリング画像の変化はあまりなく、どの場合もそれなりに芝生を表現できています。
この結果からフルサイズのサッカーコートでも1000万個程度のパーティクルを設定すれば、レンダリング時間を考えても十分に対応できそうです。
コメント