テクスチャフィルタリング使用時の植生のテクスチャ劣化を見ていて思いついた。
植生に低解像度のテクスチャを貼ってみるとどうなるだろうか?
素朴な疑問だが、レンダリングの高速化に貢献しそうなので検証してみる事にする。
■サンプル
このようなシーンを作成。レンダ設定は、1024X467、標準大気、品質ファイナルで統一。
植生はプリセットの『夏の桜』を2体。
テクスチャに手を加えずそのままレンダリングした場合、レンダ時間は42秒
■検証1 64X64グレイスケールトランスマップ
このようなトランスマップを植生の葉の部分に適用。
レンダ時間31秒 (-11秒)
かなりの高速化が見込めるか?
■検証2 64X64白黒2諧調トランスマップ
さらにデータを軽く、白黒の2階調にして見る。
レンダ時間43秒 (+1秒)
何故か、かえってレンダリング時間が延びた。
トランスマップの画像補完タイプを色々変更しても時間短縮に繋がらない。
ちなみにレンダリング速度はバイリニアで43秒、NONEで51秒と、補完したほうが早かった。
植生が複雑になると時間が延びる?
■検証3 8x8トランスマップ各種
今度はトランスマップを思いっきり簡略化し、8x8まで縮小。
グレースケール、2階調、各トランスマップを適用し、レンダリングを繰り返した。
こんなのを適用。
画像補完バイリニア、2階調のトランスマップが一番高速な結果となった。
テクスチャフィルタリングを使用するとやや速度が落ちる。
他の質感との兼ね合いでオンオフを検討すること。
8x8でも遠影には使えそう
■検証3 32x32、16x16トランスマップ各種
細かい検証結果は省略。
8x8と同様、白黒2階調、画像補完バイリニアが高速。
トランスマップ32x32でレンダ時間35秒、16x16でレンダ時間32秒
トランスマップだけでなく、テクスチャ、バンプマップも簡略化
32x32のトランスマップ使用。レンダ時間33秒、16x16で29秒
■まとめ
テクスチャを複雑にしても意味は無かった。
遠影目的にとどめれば、十分高速化に貢献してくれる。
簡易トランスマップは、使用は遠影のみに留め、8x8マップ使用が正しい使い方。
トランスマップの補完は必ずバイリニアにする。
8x8トランスマップ使用の植生で遠影アニメーションを作成。
(サンプル動画:約15秒、MP4、630Kb)
この程度の出来栄えになる。近付くと粗が見えるが、遠影なら十分効果的。
テクスチャを適用した植生でも、ちゃんと風にそよぐ。
目安
高速化に貢献
64x64 8bitGray、 32x32 1bit B/W
高速化に悪影響
64x64 1bit B/W
植生に低解像度のテクスチャを貼ってみるとどうなるだろうか?
素朴な疑問だが、レンダリングの高速化に貢献しそうなので検証してみる事にする。
■サンプル
このようなシーンを作成。レンダ設定は、1024X467、標準大気、品質ファイナルで統一。
植生はプリセットの『夏の桜』を2体。
テクスチャに手を加えずそのままレンダリングした場合、レンダ時間は42秒
■検証1 64X64グレイスケールトランスマップ
このようなトランスマップを植生の葉の部分に適用。
レンダ時間31秒 (-11秒)
かなりの高速化が見込めるか?
■検証2 64X64白黒2諧調トランスマップ
さらにデータを軽く、白黒の2階調にして見る。
レンダ時間43秒 (+1秒)
何故か、かえってレンダリング時間が延びた。
トランスマップの画像補完タイプを色々変更しても時間短縮に繋がらない。
ちなみにレンダリング速度はバイリニアで43秒、NONEで51秒と、補完したほうが早かった。
植生が複雑になると時間が延びる?
■検証3 8x8トランスマップ各種
今度はトランスマップを思いっきり簡略化し、8x8まで縮小。
グレースケール、2階調、各トランスマップを適用し、レンダリングを繰り返した。
こんなのを適用。
トランスマップ | 画像補完方式 | レンダリング時間 |
グレースケール 8x8 | 無し | 38秒 |
グレースケール 8x8 | バイリニア | 30秒 |
グレースケール 8x8 | バイリニア | 34秒(テクスチャフィルタリング50%) |
グレースケール 8x8 | ノーマライズ | 32秒 |
グレースケール 8x8 | ノーマライズ | 36秒(テクスチャフィルタリング50%) |
グレースケール 8x8 | バイキュービック | 35秒 |
グレースケール 8x8 | バイキュービック | 37秒(テクスチャフィルタリング50%) |
2階調 8x8 | バイリニア | 29秒 |
2階調 8x8 | バイリニア | 32秒(テクスチャフィルタリング50%) |
2階調 8x8 | 無し | 32秒 |
2階調 8x8 | 無し | 37秒(テクスチャフィルタリング50%) |
画像補完バイリニア、2階調のトランスマップが一番高速な結果となった。
テクスチャフィルタリングを使用するとやや速度が落ちる。
他の質感との兼ね合いでオンオフを検討すること。
8x8でも遠影には使えそう
■検証3 32x32、16x16トランスマップ各種
細かい検証結果は省略。
8x8と同様、白黒2階調、画像補完バイリニアが高速。
トランスマップ32x32でレンダ時間35秒、16x16でレンダ時間32秒
トランスマップだけでなく、テクスチャ、バンプマップも簡略化
32x32のトランスマップ使用。レンダ時間33秒、16x16で29秒
■まとめ
テクスチャを複雑にしても意味は無かった。
遠影目的にとどめれば、十分高速化に貢献してくれる。
簡易トランスマップは、使用は遠影のみに留め、8x8マップ使用が正しい使い方。
トランスマップの補完は必ずバイリニアにする。
8x8トランスマップ使用の植生で遠影アニメーションを作成。
(サンプル動画:約15秒、MP4、630Kb)
この程度の出来栄えになる。近付くと粗が見えるが、遠影なら十分効果的。
テクスチャを適用した植生でも、ちゃんと風にそよぐ。
目安
高速化に貢献
64x64 8bitGray、 32x32 1bit B/W
高速化に悪影響
64x64 1bit B/W