シェーダー上の画像合成を効率的に実現するシステムを開発いたしました。
マテリアルの組み合わせを、コードではなく画像合成で
3Dシーンのルックを開発する際、既存のマテリアルでは機能が不十分なため、別のマテリアルを組み合わせたくなる時があります。しかし、マテリアルの実装コードは複雑なため、容易に実施することは困難な状況でした。そこで、コードではなく画像処理ソフト上で、2つの画像を任意の合成モードで掛け合わせることにいたしました。
シェーダ上の画像合成で、高品質なルックを効率的に
上記の問題を解決すべく、レンダパスとしてそれぞれの素材を描画した後に、画像合成する方式を実現いたしました。単純な画像合成システムを用いた場合でも高品質なルックを実現できますが、GPUとメモリの間でデータを頻繁にやりとりする形式ではリアルタイム性に問題が生じるため、レンダパス合成には高速性が必要となります。そこで、シェーダベースにてレンダパスの画像合成システムを構築いたしました。
高速な画像合成
WebGLを使用し、高速な合成処理を実施します。
多彩な合成メソッド
画像編集ソフトと同様の多彩な合成メソッドをサポートします。画像編集ソフト上で開発した結果を、同様に再現することが可能です。
レイヤー状のレンダパス
容易に入れ替え可能なレイヤー状パスとなっております。各レンダパスはレイヤー的に登録され、簡単に順番やメソッドを入れ替えることが可能です。
オブジェクト・マテリアルごとのレンダパス構築
オブジェクト、マテリアル毎の切り替え処理をサポートします。目的部位ごとに、柔軟にルックを開発することが可能です。
