Something that came out of the Quake 2 versus Unreal battle of years and years ago was the obvious distinctions between both engines. Whilst they were both capable of coloured lighting, shadows, water, details and vast swathes of area (well, Unreal moreso), both engines had a distinct look and appearance.

Quake 2, when it looked cool

Of course, this was primarily due to the game themes; Quake is traditionally grey and brown, whereas Unreal was intended to be opposite and add in sparks of colour and variety. However, the pattern continued through other games, to the extent that it was generally very easy to determine which engine some new FPS was using just by seeing a screenshot or two.

These days, there are a few Quake-style BSP engines (notably Source and Q3-derived engines) and the various incarnations of the Unreal engine, but they are all capable of presenting the same basic geometry. It’s the effects that are overlaid on top that typically ruin the game, like the revolutionary procedural liquids of Unreal or the real-time shadows of Doom 3.

Unreal, when it looked new

It’s not all that simple though. The most interesting difference, in my opinion, is how the style of each engine affects the architecture and designs that are created. The simple difference is that Quake-style engines require the designer to create an enclosed space within a big empty universe, whereas Unreal-style engines require the designer to cut out spaces of a big solid universe. For this reason, ‘Unreal designers’ seem to favour large, well connected designs whereas ‘Quake designers’ end up creating more intricate locations. Creating a large and sparse area in Unreal is fairly easy, but the same in Quake requires careful planning.

The difference in the two paradigms obviously affects the game too. Counter-Strike would have been a very different game if it were on the UT engine rather than the HL1 engine (which was the big decision at the time), simply because the style of the engine would have encouraged larger, vaster areas than HL1. Dust was born out of the natural leads that the HL1 engine puts on the designer, and I understand is a little trickier to make in Unreal. I’m not sure we would have seen something like Italy or Militia without the HL1 engine.

Of course, who knows what CS has missed out on by not going with Unreal? The point is, it is important to understand the benefits and restrictions of the tools you work with. Ultimately, Quake and Unreal-style engines are equally flexible, but their construction styles encourage fairly different results given the same task. They might be as capable as each other, but they will twist and contort your thinking in ways you may never have expected.