スクリーン空間での2回屈折を考慮した液体の実時間描画
概要
ゲームなどの対話的なアプリケーションにおいて、粒子の集合として表現された液体の動きをシミュレートし、その結果を描画する、ということが行われている。 この液体の描画では高速化のために液体前面でのみ屈折が計算されてきたが、前面のみの屈折では液体の厚みを表現できず写実性を損なうという問題がある。 そこで本論文では、粒子の集合として表現された液体に対して、液体の前面および背面を抽出し、液体の前面と背面の2 回の屈折を考慮した実時間描画手法を提案する。 液体を表現した粒子の集合から液面を実時間で抽出する既存手法と、ポリゴンメッシュに対し2回屈折を考慮して実時間描画を行う既存手法を組み合わせ、スクリーン空間において液体に対し2回屈折を考慮した実時間描画を実現する。 さらに液体背面と視線レイとの交点計算に割線法を用いることで高速化を図る。提案手法による結果を、液体の前面でのみ屈折を考慮した場合および、背面での屈折の交点計算に既存手法で用いられた二分探索法を利用した場合と比較し、写実的な画像が高速に生成できることを示す。
Abstract
In interactive applications such as games, particle-based liquids are often used for simulation. Such liquids are rendered with only a single refraction at the front-facing surface, which damages photorealism because it cannot express the thickness of liquid. In this paper, we propose an approach to render particle-based liquid with twice refraction at front- and back-facing surfaces in real time. We use two existing approaches, i.e., one is to generate the liquid surface from particles in real time, and the other is to render a polygon mesh with handling two-sided refraction in real time. We further accelerate the intersection calculation of the back-facing surface and viewing rays by the secant method.
Video