Best use of the GE?

With regards to this page about using the GE. Does it still reflect true? Or has it changed?

Game Creation Kit: Last modified 02/02/07 17:04:05 cw Prev Chapter 26. Blenders game engine Next
26.11. Performance and design issues
Computers get faster every month, nowadays nearly every new computer has a hardware accelerated graphics card. But still there are some performance issues to think about. This is not only a good design and programming style but also essential for the platform compatibility Blender provides. So to make a well-designed game for various platforms, keep these rules in mind

Don’t use properties in combination with AND/OR/Expr. controller as scripting language. Use the Python Controller.

Use as few inter-object LogicBrick connections as possible.

Use ALT-D (instanced mesh for new object) when replicating meshes, this is better than SHIFT-D (copies the mesh).
Alpha mapped polygons are expensive, so use with care.
]Switching off the collision flag for polygons is good for performance. The use of “Ghost” is also cheaper then a regular physics object.

Keep the polygon count as low as possible. Its quite easy to add polygons to models, but very hard to remove them without screwing up the model. The detail should be made with textures.

Keep your texture-resolution as low as possible. You can work with hi-res versions and then later reduce them to publish the game (see Section 25.3).

Polygons set to “Light” are expensive. A hardware acceleration with a “Transform and Lighting” chip will help here.

Instead of real-time lighting use VertexPaint to lighten, darken or tint faces to suggest lighting situations.

Thank you.

I ask because I created a scene with a kazillian alpha mapped planes in it. Depending on where you are facing the frame rate goes from 45 to 30.

However, it doesnt feel like there is a loss, when wandering around in the scene. It seems ok.

The most you see is 30 fps, and if you do not move your head or eyes while playing, even 20 fps is acceptable.

The above page, general guidelines, still hold true, and will probably forever hold true.

Don’t use properties in combination with AND/OR/Expr. controller as scripting language. Use the Python Controller.

Use as few inter-object LogicBrick connections as possible.

This is not always true. Depending on how you use your logic bricks, they can be just as good as python. I have a game that uses over 180 columns of logic brick and it still keeps a very good frame rate on even bad computers. Everything else basically holds true.

Keep your texture-resolution as low as possible. You can work with hi-res versions and then later reduce them to publish the game (see Section 25.3).

I recommend staying below 200 KB for a texture.

The tips in that page are generally worthwhile, though you should keep in mind that Carsten (the author) told me a while back that some of them are “design preferences” as opposed to “speed tips”. He makes no real distinction between the two in the list, so you are left to yourself to decide which is which. The “don’t use lots of expressions instead of using Python” one is a design preference, and not specifically speed related.

The alpha mapped planes thing is a speed tip. Alpha is more resource expensive than opaque. If your game runs well with alpha textures, then don’t worry about it.

PapaSmurf:
My previous research into the subject seemed to suggest that optimal framerate depends on clarity of image. The human eye can see flicker up to around 120 or 160 fps (can’t remember which) if the image is sufficiently clear. As low as 12 fps can appear smooth in computer games (even in recent not-quite-next-gen games).

Wow, thank you for the info, it all makes sense too!