My Initial Impressions of RAGE – A Year On
Hello everyone. I wrote this post below about a year ago, and for some reason never actually published it. Since this article was written there have been patches, improved graphics drivers and most importantly for me, a new computer. So now I can quite happily say that all of the below has been remedied. It is now a fine game which works rather well, but it did make me reconsider the virtues of ATIs OpenGL implementation for a while.
Hey there everyone. Today I’ve been inspired to write a new blog post. I’m sure that if you keep up, even remotely, with the gaming scene, you’ve heard of the latest offering from id Software, RAGE. I’ve had my eye on it for years, from the very first technical demonstrations of the idTech 5 engine a couple years back I’ve been looking at it with much interest. As is usual with John Carmack, the genius who practically invented modern 3D first-person gaming, it was cutting edge and loaded with big promises. Among the most touted of the new technologies was a technique called “MegaTexturing”.
A brief uneducated teach in on MegaTexturing
I am by no means and expert of the technologies, but I’ll try my best to give a teach in on the reason that MegaTexturing is a good idea. The rationale and theory behind this is simple. In a game engine, the most latent part of the process of rendering a frame is making texture calls. Every time the driver needs to switch textures in graphics memory, it takes time. This is assuming that the required texture is buffered into memory and doesn’t need to be streamed from the Hard Disk. Seeing as the hard disk is most likely the most latent part of most user’s computers, this situation is less than ideal. Because of these drawbacks, id came up with MegaTexturing. Essentially, what MegaTextures are is loads of smaller contiguous textures grouped into one texture. So instead of having to call multiple smaller files into memory, you only have to load a single, much bigger one. You’re probably thinking right now, why is this better? Surely if it takes up the same amount of space, what’s the point? Simples! Because you have what is effectively multiple textures in a single file, whereas you would have had to load texture after texture after texture from the hard drive to render a frame, you only have to load a single file to serve many texture requests. This is good in multiple ways, first is that it means that you need to do fewer memory operations to render a frame. The other big advantage is that the latency that is introduced by streaming textures from the hard drive is somewhat negated because where you would have had to stream many textures, you only now have to stream one. So, the theory is sound, but what about in practice?
So, there’s no question on how good the game looks, if you look ay nearly any video of it, the output is stunning. The art department at id have done a brilliant job. It’s a shame that in practice you can’t see it. Upon starting up the game I was greeted with this…
Needless to say, this isn’t what I was expecting. Let me just clear something up a second, my computer is no slouch. It’s got a quad-core CPU, 4gigs of memory and a pretty decent video card. I was expecting it to at least be able to play it with a reduced frame rate and not be greeted with that looked like a still from the movie ‘Source Code’. I suppose the pleasant surprise is that it ran at 60 frames per second, I know right. Big Whoop! So I got to tweaking with the game’s settings and updating with the recommended graphics drivers and I got this…
Looks good doesn’t it? This was with a little tweaking, I got all the textures streaming in perfectly off of the disk… that was until I went outside and all the textures went blurry once more. So I tweaked more and got it to where it was before and this happened…
All textures go missing, all of them. Not even blurry versions of them. None at all. Needless to say, I was not impressed.
The title isn’t a bad pun to do with screen resolution, honest. So in the end I managed to get the textures loading in correctly, I don’t know how though, for the most part it just seems to be whether the game engine feels like loading them rather than anything that you could predict. One moment it’d be streaming everything brilliantly, and the next moment everything gets blurry, with no clear indication as to why. I could go on and on but all you really need to know is that throughout the whole first hour of playing the game I hadn’t managed to even get to start the first mission without the game catastrophically crashing or the texture streaming refusing to function. Finally, the textures held out on me long enough to make it to the first mission and I got to the location I needed to get to in order to carry out my task, then the next problem reared it’s ugly head, Every time you attempt to quick save the game, this of course is assuming MegaTexturing is behaving itself, the game freezes. I don’t mean freezes as in ‘oh, for a second it froze while it wrote to the disk’ I mean catastrophic freezing resulting in a crash. So, if the game engine is in a good mood, it’ll let you save your game, if it’s not, you’d better hope you didn’t get too far. So then I thought ‘I know, maybe it’s quick-save that’s causing all of my problems, I’ll escape to the menu to save’. So I pressed escape and the screen went blank and plonked me back to the screen before the main menu, dropping me out of my game without saving. So basically, there’s a 50 / 50 chance that you can save or use the in-game menu. At the moment the game is completely unplayable for me. It’s impossible to predict if it’ll actually correctly stream things from the disc and if you’ll actually be able to save your progress. At the moment, unless you’re on a state-of-the-art computer, I highly advise you to stay away from this. I’m sure that sooner or later id will release a patch to fix most of the issues, until then I may try to fix the game, but I fear my attempts will be in vain.
The technology itself seems rooted in sound concepts, but unfortunately I think the implementation begs a lot to be desired. I don’t think for a second it’s as bad as this on consoles, but PC is really suffering. Considering the game was developed on PCs I don’t really consider John Carmack’s excuse of ‘PC isn’t our primary platform’ to be good enough. Did they not to just borrow someone’s old ATi rig and have a play with it on it? Anyway, I think I shall stop whining now and go back to waiting for patches / doing productive things but before that I’d like to leave you with this one picture of the game working well and giving me a nice view… right before taking the screenshot caused it to crash of course. 😉
If you have been, thanks for reading.