|Previous||Table of Contents||Next|
Across the lake from Vermont, a few miles into upstate New York, the Ausable River has carved out a fairly impressive gorge known as Ausable Chasm. Impressive for the East, anyway; you might think of it as the poor mans Grand Canyon. Some time back, I did the tour with my wife and five-year-old, and it was fun, although I confess that I didnt loosen my grip on my daughters hand until we were on the bus and headed for home; that gorge is deep, and the railings tend to be of the single-bar, rusted-out variety.
New Yorkers can drive straight to this wonder of nature, but Vermonters must take their cars across on the ferry; the alternative is driving three hours around the south end of Lake Champlain. No problem; the ferry ride is an hour well spent on a beautiful lake. Or, rather, no problemonce youre on the ferry. Getting to New York is easy, but, as we found out, the line of cars waiting to come back from Ausable Chasm gets lengthy about mid-afternoon. The ferry can hold only so many cars, and we wound up spending an unexpected hour exploring the wonders of the ferry docks. Not a big deal, with a good-natured kid and an entertaining mom; we got ice cream, explored the beach, looked through binoculars, and told stories. It was a fun break, actually, and before we knew it, the ferry was steaming back to pick us up.
A friend of mine, an elementary-school teacher, helped take 65 sixth graders to Ausable Chasm. Never mind the potential for trouble with 65 kids loose on a ferry. Never mind what it was like trying to herd that group around a gorge that looks like it was designed to swallow children and small animals without a trace. The hard part was getting back to the docks and finding theyd have to wait an hour for the next ferry. As my friend put it, Let me tell you, an hour is an eternity with 65 sixth graders screaming the song You Are My Sunshine.
Apart from reminding you how lucky you are to be working in a quiet, air-conditioned room, in front of a gently humming computer, free to think deep thoughts and eat Cheetos to your hearts content, this story provides a useful perspective on the malleable nature of time. An hour isnt just an hourit can be forever, or it can be the wink of an eye. Just think of the last hour you spent working under a deadline; I bet it went past in a flash. Which is not to say, mind you, that I recommend working in a bus full of screaming kids in order to make time pass more slowly; there are quality issues here as well.
In our 3-D animation work so far, weve used floating-point arithmetic. Floating-point arithmeticeven with a floating-point processor but especially without oneis the microcomputer animation equivalent of working in a school bus: It takes forever to do anything, and you just know youre never going to accomplish as much as you want to. In this chapter, well address fixed-point arithmetic, which will give us an instant order-of-magnitude performance boost. Well also give our 3-D animation code a much more powerful and extensible framework, making it easy to add new and different sorts of objects. Taken together, these alterations will let us start to do some really interesting real-time animation.
Three-dimensional animation is a complicated business, and it takes an astonishing amount of functionality just to get off the launching pad: page flipping, polygon filling, clipping, transformations, list management, and so forth. Ive been building toward a critical mass of animation functionality over the course of this book, and this chapters code builds on the code from no fewer than five previous chapters. The code thats required in order to link this chapters animation demo program is the following:
As always, all required files are in this chapters subdirectory on the CD-ROM.
|Previous||Table of Contents||Next|