A Key-Pose Caching System for Rendering an Animated Crowd in Real-Time
Abstract
We present a method to accelerate the visualization of large crowds of animated characters. Linear-blend skinning remains the dominant approach for animating a crowd but its efficiency can be improved by utilizing the temporal and intra-crowd coherencies that are inherent within a populated scene. Our work adopts a caching system that enables a skinned key-pose to be re-used by multi-pass rendering, between multiple agents and across multiple frames. We investigate two different methods; an intermittent caching scheme (whereby each member of a crowd is animated using only its nearest key-pose) and an interpolative approach that enables key-pose blending to be supported. For the latter case, we show that finding the optimal set of key-poses to store is an NP-hard problem and present a greedy algorithm suitable for real-time applications. Both variants deliver a worthwhile performance improvement in comparison to using linear-blend skinning alone.
BibTeX
@article {10.1111:j.1467-8659.2010.01715.x,
journal = {Computer Graphics Forum},
title = {{A Key-Pose Caching System for Rendering an Animated Crowd in Real-Time}},
author = {Lister, W. and Laycock, R.G. and Day, A.M.},
year = {2010},
publisher = {The Eurographics Association and Blackwell Publishing Ltd},
ISSN = {1467-8659},
DOI = {10.1111/j.1467-8659.2010.01715.x}
}
journal = {Computer Graphics Forum},
title = {{A Key-Pose Caching System for Rendering an Animated Crowd in Real-Time}},
author = {Lister, W. and Laycock, R.G. and Day, A.M.},
year = {2010},
publisher = {The Eurographics Association and Blackwell Publishing Ltd},
ISSN = {1467-8659},
DOI = {10.1111/j.1467-8659.2010.01715.x}
}