ERATO Proceedings Istanbul 2006.pdf - Odeon
ERATO Proceedings Istanbul 2006.pdf - Odeon
ERATO Proceedings Istanbul 2006.pdf - Odeon
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
2 Crowd Engine Resume<br />
The crowd engine which is also called VRCrowd has as a goal to render and animate at least 1000<br />
digital actors in real time. It is responsible for updating the animation and to render the spectators.<br />
The input needed per template [Ulicny2004] is two or three meshes with decreasing level of detail,<br />
four or more different textures that have different clothing styles and color key areas described in<br />
their alpha channels [deHeras2005,deHerasVSMM2005]. Given this data the VRCrowd engine can<br />
start rendering the humans, but still we need scripting and scenarios as well as audio to make the<br />
experience complete. In collaboration with the Danish Technical University (DTU) we defined<br />
camera placements for audio recordings that have the characteristics of that specific listening<br />
location. This process is called auralization, described in [Lisa2004] and relies on a sound wave ray<br />
tracing. The engine has come a long way since we started the project and its first apparition was in<br />
[Ulicny2004]. We were then using static key-framed meshes and simple whole mesh color variety.<br />
At the end of the project we have fully dynamic animation and per texel accurate color modulation<br />
[deHeras2005].<br />
Variety comes through textures and modifiable color areas. These areas defined by the artist in each<br />
texture for each color area such as the dress, jewels and hair. Each of these areas can then be<br />
modified individually and their color ranges are described in an HSB space as detailed in our work<br />
[deHeras2005]. Examples of this variety can be seen in the Fig 1, where there are 4 different<br />
templates visible: two for the patricians and noblemen. The nobles have four textures per template<br />
and the patricians have eight and using the color variety on each such texture we get a greater effect<br />
of variety. This means we work very little on creating variety and spend more time on scenario<br />
authoring and tuning.<br />
To be able to have smooth animation transitioning and updates we have all animation clips stored as<br />
quaternions and interpolate the key frames using spherical linear interpolation for each individual in<br />
the crowd for each animation that is active. To further smooth the interpolation when transitioning<br />
we use a cosine function to weight which animation clip is being more important.<br />
With the use of programmable graphics hardware we deform the mesh in the vertex shader and light<br />
it with Phong shading and apply the color variety at fragment level. This was extensibly described in<br />
[deHeras2005].