This is the best book I have read in years! If you know the basics of ActionScript and you know sine and cosine, this book opens up whole dimensions of possibilities for both games and business applications of Flash.
It is clearly written and reads more smoothly than most programming books. While it does assume a basic literacy with ActionScript, it does not leave you flailing with complex 3D concepts. You may have to pull out your definitions of sine and cosine, but beyond that, it is pretty light lifting.
The genious of the book is that it violates commmon assumptions, and this results in simple, elegant techniques that are also powerful for a wide range of problems. The common assumption is that Flash doesn't do 3D. Don't believe it anymore. If you are willing to use some basic limitations to your application (such as keeping your polygon count down), you can have some smoothly flowing, useful 3D applications with relatively little effort. And unless I'm mistaken, those applications will run equally well on a browser running on a Mac, Windows or Linux.
The solutions are simple and eclectic. The authors have created a variety of 3D engines - each optimized for a given purpose. The engines are simple enough that (in theory) you can take the source and enhance it to your needs. Each technique is backed up by source code that you can download from the publisher's web site. But don't shortchange yourself with only the sample code - the explanations in the text are worth the cost of the paper book.
Here are my favorite techniques:
* ch 8 (P 195) - Drawing API and Math for 3D - here they explain and provide a working polygon 3D engine. The demos work smoothly (at least 20-30 frames per second) on my cheap Dell laptop. The demos include a oragami bird and a rocket ship with at least 10-20 polgons each. It doesn't support bitmapped textures, but it does offer fill color and shading support.
* ch 9 - 3D Slice Engine - this is the more clever, powerful and non-obvious technique of the book. Check out "dad.swf" in the binary samples from the web site to get an idea of the power of this approach - the author has made a 3D talking head of his father from a photograph! The idea here is that if you can view your 3D world as a topographical map, then you can model it with a set of parallel planes, where each plane represents a certain cut through the entire 3D model. This approach, though not immediately intuitive, is extremely powerful in Flash because it plays on the strenghths of Flash. Each plane is represented by two "movieclip" objects, with one embedded in the other. The first one handles scaling, and the second handles rotation, within the scaled clip. The hidden surface problem is finessed because the planes are parallel - so you only reverse the rendering order once every 180 degrees of change in viewer angle. This enables you to handle full bitmap detail of your scenes, and the result is pretty dazzling! The basic rendering engine requires only about 50 lines of ActionScript!
* Ch 6 - Parallax Scrolling - This name is misleading - it really goes beyond a scrolling 2D game model. In the Wyvern's Claw" example, it explores the idea of building a 3D world like a movie set - with a set of strategically placed flat surfaces (like the fronts of buildings in the studio sets). Each surface is a movieclip, and your script manages the proper scaling and shading as the viewer moves through. The demo then shows an animated walk-through of a small town rendering in such a way. This seems very cool for a potential game.
I'm already using the Chapter 9 slice engine for a work-related project - multidimensional data browsing. So for me, the book was not only stimulating to read but valuable!