Things that go bump.
After the stairs yesterday, I spent a couple of hours trying to get collision detection working but got tired of all the bugs that were cropping up.Today I rewrote all the collision and it works perfectly: line-segement/polygon collision for finding the floor and ellipsoid/polygon collision for bumping into things. The dynamics need a bit of tweaking to feel like a "real" FPS, but all the basics are there: ramps, stairs, sliding along walls, jumping, falling, hitting your head on the ceiling, etc.
I also came up with a game design today, which makes me happy. I'm not going to share it yet though, 'cos it's a surprise :-)
[To the commentators: it's a model of the stairs, not procedurally generated.]