★ TouchArcade needs your help. Click here to support us on Patreon.

Is 440k triangles/second a good value?

07-23-2010, 06:02 AM
#1
Joined: May 2010
Posts: 18
Send a message via Skype™ to Bersaelor
Is 440k triangles/second a good value?

Hey there,

I wondered whether the 440000 trangles/second that I consistently get on an iPod Touch 2 Gen (MBX GPU) with my 3D engine using OpenGL ES is an acceptable value. I.e. whether I can stop optimizing
I mean I did turn on 4-sample multisampling and gl_Normalize which both means more computation and I use texCoords, normals and colors.

What do you gals/guys think?

The full report with the results table can be found here.

Last edited by Bersaelor; 07-23-2010 at 10:28 AM.
07-23-2010, 10:56 AM
#2
Do you mean 440k/30 frames to = the actual amount of triangles per frame? Because 440K a frame is well into PS3/360 territory and totally unfeasible on the iPhone.

I see there you have some lower values. To be honest that won't run on a 3G iphone at all. Try to aim for 5k max for best performance, maybe a little more.

What engine/setup are you using?

07-23-2010, 11:55 AM
#3
Joined: May 2010
Posts: 18
Send a message via Skype™ to Bersaelor
Quote:
Originally Posted by Jack Shiels View Post
Do you mean 440k/30 frames to = the actual amount of triangles per frame? Because 440K a frame is well into PS3/360 territory and totally unfeasible on the iPhone.
As I said , triangles/second. Because then you can compare the Performance of different 3D engines with just one value, whereas if you tell someone the FPS you have to tell him the triangles/frame too.
440k triangles per second can be computed by multiplying 22045 triangles per frame times 20 fps.
If you know your basic math and understand the table you can compute that the way my 3D Engine works, I can draw up to 14600 triangles at 30 FPS.

The Engine and Setup are described in the post and yes its running very well on an iPhone 3G

The Question was, whether I 440k triangles/sec is not enough yet, compared to other Engines, and therefore whether there still exist som tricks that I might have overseen to draw even more triangles.

Last edited by Bersaelor; 07-23-2010 at 11:57 AM.
07-23-2010, 01:42 PM
#4
Joined: Feb 2009
Location: San Francisco Bay Area
Posts: 172
www.glbenchmark.com shows results of around 500k triangles/second so I'd say your 440k performance figure is close enough, especially since actual performance will vary a lot once you've got your game logic running. You can always go back and optimize your 3-D engine some more if it turns out to be a significant bottleneck to your game's performance.
07-23-2010, 02:38 PM
#5
Joined: May 2010
Posts: 18
Send a message via Skype™ to Bersaelor
Quote:
Originally Posted by dansu View Post
www.glbenchmark.com shows results of around 500k triangles/second so I'd say your 440k performance figure is close enough, especially since actual performance will vary a lot once you've got your game logic running. You can always go back and optimize your 3-D engine some more if it turns out to be a significant bottleneck to your game's performance.
Thanks, I was looking for a comparison like that
I think the antialisasing and normalization of the vertex normals might also affect the FPS, so 10% less then optimal is acceptable.
07-24-2010, 03:50 PM
#6
Joined: Jan 2010
Posts: 174
Taking a number like that and using it as an engine comparison is fairly useless. Commercial grade engines do a lot more than just draw polygons fast, to be frank that's the easy part.

Fast triangles = one draw call, all your geometry in one buffer, one texture being used. There is no real magic to it. So I wouldn't worry about it too much.

Finding a way to draw a simple scene quickly is simple. Finding a way to draw a complex scene quickly is complex. When you have 20 textures, 10 skinned meshes to deform, a static background, lighting, particle effects firing, lots of different blends, multiple shaders (if you're supporting that) - that is when you need to worry about optimizing.
07-24-2010, 05:28 PM
#7
Joined: Sep 2009
Location: xor eax, eax
Posts: 755
Quote:
Originally Posted by Venan View Post
Taking a number like that and using it as an engine comparison is fairly useless. Commercial grade engines do a lot more than just draw polygons fast, to be frank that's the easy part.

Fast triangles = one draw call, all your geometry in one buffer, one texture being used. There is no real magic to it. So I wouldn't worry about it too much.

Finding a way to draw a simple scene quickly is simple. Finding a way to draw a complex scene quickly is complex. When you have 20 textures, 10 skinned meshes to deform, a static background, lighting, particle effects firing, lots of different blends, multiple shaders (if you're supporting that) - that is when you need to worry about optimizing.
Can't agree better!
I was also very happy when upon displaying a relatively complex scene I reached nearly the maximum 60 fps on the iPod Touch. But soon, when physics and further game logic has also been involved, the fps dropped to alarming values. I had to tweak and optimize a lot to get decent framerates.
07-24-2010, 06:59 PM
#8
Joined: May 2010
Posts: 18
Send a message via Skype™ to Bersaelor
Quote:
Originally Posted by Venan View Post
Taking a number like that and using it as an engine comparison is fairly useless. Commercial grade engines do a lot more than just draw polygons fast, to be frank that's the easy part.

Fast triangles = one draw call, all your geometry in one buffer, one texture being used. There is no real magic to it. So I wouldn't worry about it too much.

Finding a way to draw a simple scene quickly is simple. Finding a way to draw a complex scene quickly is complex. When you have 20 textures, 10 skinned meshes to deform, a static background, lighting, particle effects firing, lots of different blends, multiple shaders (if you're supporting that) - that is when you need to worry about optimizing.
Yeah, you are right. The problem is, that with adding more and more features/meshes to the game I have to draw more triangles and still don't wanna loose fps.
Also I'm some of my geometrys are custom build from the gamestate and which and how many units are shown on the screen is also up to the game that is played.
So since I'm using OpenGL ES 1.1 and this thread is only about the FPS I get, will essentially only using the GPU I just wanted to have a comparison to know I didn't miss any performance trick