/Mid-level Smoke Control for 2D Animation

Mid-level Smoke Control for 2D Animation

Alfred Barnat, Zeyang Li, James McCann and Nancy Pollard
Conference Paper, Proceedings of Graphics Interface, Newfoundland, Canada, May, 2011

Download Publication (PDF)

Copyright notice: This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author’s copyright. These works may not be reposted without the explicit permission of the copyright holder.


In this paper we introduce the notion that artists should be able to control fluid simulations by providing examples of expected local fluid behavior (for instance, an artist might specify that magical smoke often forms star shapes). As our idea fits between high-level, global pose control and low-level parameter adjustment, we deem it mid-level control. We make our notion concrete by demonstrating two mid-level controllers providing stylized smoke effects for two-dimensional animations. With these two controllers, we allow the artist to specify both density patterns, or particle motifs, which should emerge frequently within the fluid and global texture motifs to which the fluid should conform. Each controller is responsible for constructing a stylized version of the current fluid state, which we feed-back into a global pose control method. This feedback mechanism allows the smoke to retain fluid-like behavior, while also attaining a stylized appearance suitable to integration with 2D animations. We integrate these mid-level controls with an interactive animation system, in which the user can control and keyframe all animation parameters using an interactive timeline view.

BibTeX Reference
author = {Alfred Barnat and Zeyang Li and James McCann and Nancy Pollard},
title = {Mid-level Smoke Control for 2D Animation},
booktitle = {Proceedings of Graphics Interface, Newfoundland, Canada},
year = {2011},
month = {May},