id Software Demos Rage On iPhone, Releases Source Code For Two Games
glenkim writes "Kotaku has posted their liveblog of the QuakeCon 2010 keynote, with some big announcements by game developer and Slashdot regular John Carmack. Highlights include a video of the id Tech 5 engine (aka Rage) running on the iPhone 4G at 60fps, with claims that it also runs on the iPhone 3GS. Carmack noted that performance on the iPhone was able to 'kill anything done on the Xbox or PlayStation 2.' He also announced the source code release of two games, Return to Castle Wolfenstein and Wolfenstein: Enemy Territory. Also, Carmack finally admitted that Doom 3 was too dark!"
I want my Commander Keen!
The engine was a total flop. It didn't look very good, personally I'd say Unreal Engine 2.5 (UT2004) looked better, and especially for the hardware it required. When Unreal Engine 3 came out, it was done. The complete list of games on the Doom 3 engine is:
Doom 3
Doom 3: Resurrection of Evil
Quake 4
Prey
Enemy Territory: Quake Wars
Wolfenstein (the new one from 2009)
And Brink is using it, scheduled for 2011. That's it. 5 titles, one expansion for the whole engine. Compare this to the about 100-150 games for Unreal Engine 3. Games devs just did not care for iD Tech 4 (the Doom 3 engine) at all.
I'm not sure that this is to much of an issue, unless there is some kind of tone-mapping involved it would be near impossible to see the indirect lighting while have the direct component at the correct exposure level. I think that the way most games pump up the ambient term in order to show the contents of the shadows looks bad, it kills the contrast.
On the contrary, it's very visible. Without global illumination, 3D scenes look very 'fake' to observers, even if they don't know why. In contrast, scenes rendered with a high quality GI algorithm look much more realistic, even with flat colouring or simple textures and little detail. For example, Valve often makes "untextured" maps for play testing with only GI lighting applied. They look surprisingly good, despite every surface having nothing but a plain placeholder texture.
Ironically, maps with pre-computed GI for lighting was a feature that I'm fairly sure was either invented by id software's John Carmack, or he was the first person to implement it in a widely used game engine. It surprised me that he dropped the feature in Doom 3, when it was one of the more impressive technical advancements in his previous games!
In general, Doom 3 seemed to me to be a game that tried to be so technically advanced in a few specific areas that it had to compromise in others, resulting in an engine that wasn't very good overall. John Carmack even made a comment in a forum before the game's release that he was "targeting" 30fps, which to me felt like a bit of an admission of failure, because at the time every other game engine was already aiming for a constant 60fps, which is the minimum for smooth game play.
Right now, textures are usually a bunch of smaller files. So your rocks will have some various rock textures, your roads will have some road textures and so on. There are placed on objects and tessellated as needed. The potential problem is it means things can look too much the same. I mean say I have only one rock texture and every rock gets it. They'll all look an awful lot a like in that case.
So the idea with megatexture is you don't do that. Instead you have one single texture for all the ground, and probably all the world geometry. There is no repetition, no tessellation. As with the real world, everything is unique. The game engine then handles swapping in what parts of this massive texture are actually needed at a given time.
Neat idea I'll say that, remains to be seen how it works. Ultimately there's got to be artists behind things and their time is money. Will they really design everything from scratch, or will they do copy-paste but just in the image editor rather than in the game engine? I'm also not sure how it interacts with shaders. These days more and more of games are procedural, meaning you describe things with programs that run on the GPU. I haven't seen if you can have shaders and apply them to given things (like a metal shader that makes metal shiny) or if you have to have one giant displacement map, specular map, and so on.
Pretty impressive three digit ID.
As far as regularity goes, I read /. every day but comment infrequently... I'd suggest that different people use /. differently.