“We’ve come a very long way since the days of Doom. But that groundbreaking title wasn’t just a great game, it also brought forth and popularized a new game-programming model: the game “engine.” This modular, extensible and oh-so-tweakable design concept allowed gamers and programmers alike to hack into the game’s core to create new games with new models, scenery, and sounds, or put a different twist on the existing game material.” The last part of this great series of articles over at ExtremeTech was published. If you read the entire article, you will learn what all the 3D game and graphics engine-related buzzwords are all about. The article is an easy read and not too technical.
Yeah! so why is the unreal engine able to produce better graphics and still be a lot faster then all the other engines?
I’ve allways wondered why i got better graphics running unreal on my old 3dfx voodoo 2 / k6-2 300Mhz, then what i get running Q3A, Medal of honor or soldier of fortune 2 with a geforce 3 / 1.2Ghz Athlon.
It’s even worse considering that i usually run the games in 32bit color, and the voodoo 2 would only do 16bit color.
Maybe Carmack isnt that good.
I remember very vividly that Epic had done A LOT of MMX assembly optimizations on Unreal. Because back then they were going against Quake2, they needed better graphics, and in order for these gfx to be able to run fast-ish they had done a lot of MMX optimizations. In fact, they were advertising the fact that in some loops they got up to 400% faster code with hand-written MMX assembly.
These days, the compiler does that for you (however a compiler won’t do as good MMX/3DNow!/SSE/SSE-2 optimizations as a *very knowledgable* assembly programmer would do – a luxury that Epic had), all the games are purely C or C++ with no assembly in it. The assembly died in big commercial games about 2-3 years ago, when the gfx cards made available became crazily fast and programmers do not feel the need to optimize anymore.
Getting the product out of the door and having a patch ready for the first day the box is on sale, is what matters these days.
yep, i remember that, i also remember that AMD itself made available a patch wich contained new opengl drivers for 3dfx cards (weird!) optimized for 3dnow!, Quake2 engine based games (including Half life) would run a lot faster but the graphic quality was the same.
About the speed of the Unreal engine (at the time of Unreal 1), I’m not sure I agree with you. It’s fast using Glide but it can’t handle OpenGL or DX nearly as good.
Since I use a Geforce DDR, many games using the Unreal engine, such as Deus Ex and Undying, is almost unplayably slow. That is on 640x480x16 with lowest settings. Unreal and Unreal Tournament is on the other hand playable.
It looks nice but I think I like the Q3 engine more (dispite the often cartoony colors). It’s is also much faster than the Unreal engine using my Geforce.
Conclusion: The (old) Unreal engine + Glide = fast, otherwise slow (for me).
I’ve been following this series since it began, but one thing kept comming to mind each time I read and re-read it. I have no personal problem with FPSs, but it seems that is the only genre of game engine design considered. Does anyone else have this impression?
Now days, everything is moving to 3D… including RTS games. So in theory, it shouldnt be that hard to convert an FPS engine into an RTS, Race, Simulation, etc system. The only part that would have to really be changed a lot would be the physics and the AI.
– Kelly