It's Half-Life based game (GoldSource engine), it's very simple and derived from Quake engine. FPS is low when I look at many triangles (for example it's a bit higher when I look on the floor). It may be connected to unoptimized CPU->GPU transfers. AFAIK this engine batches all triangles on every frame, so more triangles -> lower performance because of this bottle-neck. This was for sure the case for fglrx, but mesa could have introduced another bottle-necks. Also note that I play this game through wine (but still OpenGL). I'll try to start the game from console to find some interesting wine messages (if any).
Edit: Nothing much interesting in console, only this (may be produced by mesa):
repeated few times.
warning: Unknown nb_ctl request: 4