Summary
In this chapter, we have covered the basic concepts behind object animation in WebGL. Specifically we have learned about the difference between local and global transformations. We have seen how matrix stacks allows us saving and retrieving the Model-View matrix and how a stack allows us to implement local transformation.
We learned to use JavaScript timers for animation. The fact that an animation timer is not tied up to the rendering cycle gives a lot of flexibility. Think a moment about it: the time in the scene should be independent of how fast you can render it on your computer. We also distinguished between animation and simulation strategies and learned what problems they solve.
We discussed a couple of methods to optimize animations through a practical example and we have seen what we need to do to implement these optimizations in the code.
Finally, interpolation methods and sprites were introduced and the Runge's phenomenon was explained.
In the next chapter, we will play with...