Game Developer's Conference 2004: Carmack Addresses the Massesby Derek Wilson on March 30, 2004 3:34 PM EST
- Posted in
- Trade Shows
Coding RealityAside from organizational and time-to-market issues, cutting edge game engine developers must obviously deal with the technology. Writing the software to actually produce the type of games that current hardware is capable of is definitely the most daunting task. Where are we now, and how are we going to get to real time "Lord of the Rings?"
Apparently, John thinks that perfect audio can be done now. Carmack says that we've got the computing power to fully model aural environments and create honest-to-goodness real world sound in games. The focus of id Software's current game development efforts aren't in the aural area because the gap between reality and what we have on the physics and graphics side of the issue is much larger (and therefore more important to fix). One of the main themes of John's speech was that the most important things to do are the ones that have the largest impact on end users.
In fact, John mentioned that he had enough time to go back, clean up code, polish the interface and really put some effort in trying to make the game as close to perfect as he could get it. His verdict after the experience was that it generally sucked. Ultimately, the end user won't get as much value out of a really highly polished interface as he put into it. Of course, being a real "craftsman" with games (as John likened his experience) will satisfy a developer's desire for perfection, but Carmack's motivation, he found, is in delivering satisfaction to the gamer. He said over and over that the focus should be on value to the end user, which is a stance we take when looking at hardware as well.
Game physics are very CPU intensive, and John lamented the sheer volume of physics engines that do many things well but are easily breakable. Computing power and research are the main tools in improving this end of game development, and fluidity is the key to the future here. Mechanical and rag-doll physics are becoming ubiquitous, but things like having real wind, weather, and water affecting all the hair, grass, trees, clothes, and dust (or other particles) in the environment in a real way is a very big problem to solve.
The most difficult issue to tackle in game engine development as outlined by John Carmack is AI. John admits that their games feature very little character interaction because no matter how good a character looks, if it acts retarded or unnatural it will only serve to tear down the experience of the gamer.
On the plus side, academic research has become very relevant to games. In the past, academic research projects were way beyond what could be implemented in realtime. Now though, John sees academic and real world AI research merging in a gaming environment. Rather than requiring all kinds of sensors and inputs, a game world synthesizes all of its data so that core AI algorithms can more easily be tested.
Of course, the final problem with games is content and asset creation. Artists and designers slave over every model animation and texture that goes into a game, and just about every game engine requires that these artists and designers be familiar with its specific tools and idiosyncrasies. This means that artist have less mobility in the market place (and even within a company between projects), and more time has to be spent training people to use very specific tools that may end up becoming outdated when the next engine is released. Unlike the movie industry who can hire hundreds of carpenters to build sets immediately, the gaming industry can't go out and just get assets created fast enough. As with graphics engines in general, John sees the solution to this problem being generality in graphics hardware and APIs. As programmers can do more and more with graphics engines, development tools should more easily accommodate what artists want to do, which should also help speed up the development cycle.