A Data-driven Approach for Synthesizing High-resolution Animation of Fire Syuhei Sato Takuya Morita Yoshinori Dobashi Tsuyoshi Yamamoto Hokkaido University DigiPro '12 Proceedings of the Digital Production Symposium Introduction • Animators try to create the desired motions by repeating fluid simulations with different parameters until a satisfactory result is obtained. – Expensive computational cost Relative Work • Control the fluid simulation to create the desired motion • Covert the low resolution into high resolution • Control the high resolution with low resolution • Combining noise into low resolution Less realistic than those obtained by physical simulations Motivation • Similar flow pattern at different times and positions on different scales during animations of gaseous objects. • Preprocessing step: database of highresolution velocity field(2D) • High resolution velocity field is synthesized from the low resolution with linear combination of the precomputed velocity field. Features • The database is created by 2D fluid simulation. We use 2D velocity fields to add small-scale detail to the 3D lowresolution velocity field. This results in a significant reduction in computational costs for both precomputation and the run-time process. • Using our synthesis method recursively, animations can ideally be synthesized with arbitrarily high resolution. • The method is highly suitable for parallel computation. The low-resolution velocity field is subdivided into small blocks and the high-resolution velocity field can be synthesized in parallel for each block. Overview Database Construction • Constructed by 2D fluid simulation – Divide into nb X nb blocks – Apply PCA(principal component analysis) to get PVF(principal velocity fields) • Cannot synthesize detailed turbulence in 3D simulation if such turbulence is not included in 2D simulation. Synthesizing a High-resolution 3D Velocity field • A low resolution 3D fluid simulation is executed and converted into high resolution by PVF. • Each output velocity is generated slice by slice and each slice is divided into blocks. – The blocks overlap in order to reduce the discontinuity. Converter Compute the weight for PVF • Apply the above process three times: xyz – Horizontal component in 2D: u is used for horizontal components in 3D: x, y – Vertical component in 2D:v is used for vertical components in 3D: z • Solve three minimization problems Recursive Synthesis • The method fails when the resolution ratio is too high. From the experience, the ratio should less than 4 • Solution: vl(input) is converted to v1, then v1 is converted to v2….. Results