I've been working with Papervision very intensively for the last 5 months or so, and I've learned quite a bit about what is under the hood.
Also, I've been using it mainly in Flash (due to me designing everything in Flash as well, as developing). So, that being said, I primarily use MovieMaterials for all of my Primitives. With using MovieMaterials that opens up a whole other can of worms. CPU issues
Here's some ideas to get you going:
Set animated to false as much as possible. If you need it to animate occasionally, use some checks to turn the value on and off. Because when the material is set to animated = true, that material is being redrawn every frame.
Toggle the smooth and precise values on only when needed as well. This is especially true with smooth, because that is a major CPU killer.
When using objects that extend off of the screen make sure that you divide the segments appropriately. If you just instantiate something like: var ground:Plane = new Plane(groundMaterial) it's using it's default values (segmentsW:1, and segmentsH:1). That will cause the ground to be clipped by the Frustrum (basically it will disappear out of view when it should still be in view), because there aren't enough segments to subdivide. Usually (I say that loosely), a setting of segmentsW:5 and segmentsH:5 will do (unless you are dealing with something huge. . . then you would have to go higher).
Use flash 10, and turn on the Hardware Acceleration (direct not GPU, because GPU has toasted some of my test computers video drivers), which will not help with the rendering of the triangles, but it'll at least help with redrawing the screen. I've seen it decrease CPU load by over 30% in some cases, with smoother performance.
Oh, and lastly, do a reality check. Not everything has to be in 3d, try mixing 2d and 3d elements wherever you can.
I've finally jumped into this realm, and have already been having a lot of fun with it. I was really impressed with Bit-101's Art From Code site, so I've finally started playing with some Math.randomness.
Even though I'm late to the tea party, I might as well take a sip.
Basically what I am doing is generating random circles, with random colors, and scaling them with a you guessed it. . . a Math.random(). But then I also graph the scaling and the circle's x and y values and that gives me the cool line work on the left. What gave me the idea to do that is I've been really into visual complexity lately. And I've been trying to figure out how to create more visuals by graphing out data that my code is already creating. It kind of goes along with the ideas I used to have to make music that sounded like Autechre. Take a sample of your own song, and then play it at various octave intervals all at the same time.