Can anyone offer some general guidelines on what sort of 3D performance is possible on the Raspberry Pi, assuming a reasonably efficient Open GL - based program written in C? I realize this is a very broad question with lots of "it depends on screen resolution, texture size, etc" answers, but some kind of rough real-world numbers for triangles per second or vertex or pixel fill rates would be helpful. The sources I've found so far cover a tremendous range:

"40 million shaded polygons per second" is mentioned a couple of times on the Raspberry Pi website. I assume "shaded" means lit but not textured, and this number is the peak under theoretical optimal conditions, and probably not something achievable in real-world programs.

I've also seen the original Xbox used as a similar-performing comparison. According to Wikipedia, the first Xbox could do 115 million vertices/sec, 932 megapixels/sec. Assuming 32-pixel triangles, that's about 29 million triangles per second. I'm unsure if that means shaded and textured triangles. With 1-pixel triangles and triangle strips, you could theoretically reach the vertex-bound limit of 115 million triangles/sec.

I know Quake 3 can run at 60+ fps on the RPi, but I'm not sure how many triangles are in a typical Quake 3 scene frame. Some Googling suggests 10K to 100K textured polygons per frame, which implies 600K to 6 million shaded triangles per second.

Roy Longbottom did some OpenGL benchmarks on the Raspberry Pi, and got about 360K shaded triangles/sec, and about 250K shaded and textured triangles/sec. http://www.raspberrypi.org/forums/viewt ... 82#p370482

I've started some simple 3D performance tests of my own, and so far I've achieved about 1.1 million shaded and textured triangles per second under semi-realistic conditions. I can push it to about 6.7 million triangles per second by using 4x4 textures and a 568 x 320 frame buffer - not so realistic conditions. How much further can I likely improve this?