| Blender機能別: Blender2.37 透過処理のフィルタリング | |||
|
|||
元記事:Transparent Filtering透過処理のフィルタリングAlpha、transmit、filter、transparency…Blender は透明な物を "Alpha" 値(不透明度)の設定によりレンダリングしており、Alpha が0の場合、100%透明であることを意味します。この Alpha 値は、あるピクセルが覆っている他のピクセルと、どれだけブレンドするかを定義しています。 これは画像処理からの慣習であり、Blender の古いピクセルベースのスキャンラインレンダリングシステムと相性がいいのです。 しかしながら多くの「現実」の透明な素材 ― ガラスなど ― の材質の色は、背後にある物(もしくはライトや光)とブレンドされてはいないでしょう。ただし、同様にフィルタは適用すべきです。この演算は実際には乗算であり、ブレンドではありません。例えば半透明な赤い素材(RGB:1, 0, 0)はすべての緑と青を遮断します。 このようなフィルタを定義するには、二つのアプローチがあります。
![]() Povray: Filter 0.7、Transmit 0.7、両方を0.7 前者を選択する場合、自由な創作が可能になりますが、フィルタの決定に新しい RGB カラーをミックスするだけでなく、Material 自身に使用している同じ Texture にもこのフィルタを適用する必要がある、という欠点があります。更にこの方法では、Alpha自身は除外されており、基本的には全く違う演算になります。 この Povray のサンプルも奇妙です…この選択は単純な Alpha と Filter の加算で、簡単に実行不可能なオーバーフローに陥り、ユーザにとって編集がすばやくできる方法ではないことは明白です。 しかしながら、Alpha が従来どおりに役割を果たしつつ、後方互換性を保って追加できる方法であるという利点があります。 Blender: RGBA+Fさまざまな方法をテストしていく中で、最も論理的な選択肢が現れました。それは単一の新しい Filter 値を定める方法で、Alpha の mix 演算の透過部分にのみ演算を行うというものです。 Filter が0.0 で、背景色(もしくは光)が Material を通してそのまま「透過」し、1.0で「透過した」部分を完全にフィルタリングします。ここの「透過」量は今も Alpha で決定されることに注意して下さい。 これはまた、単体の "AlphaOver" 演算に従来どおり集中できることも意味し、5番目の色成分(F = Filter) を使用してフィルタリングを行います。 更にいいことに、RGBA + F カラーは五重奏で一貫性のある挙動をし、ピクセルベースの Alpha の加算と同じように上手く適用できます。
|
|
評価された記事: 9.33 (3 件の投票) このファイルの評価 |
| カテゴリに戻る | カテゴリの一覧に戻る |


サイト内検索








