We've made a lot of progress in the graphics department of our games over the years. Shaders are more complex, textures are of higher resolution, lighting solutions are unifying, characters and environments are getting more detailed, and world size is increasing. But graphics are a driving force; they are cause rather than effect. Strip a game of all of its interactive components and the graphical quality would remain intact, you would simply end up with a movie instead of a game. This lack of direct interdependence with the rest of the game is what has allowed us to push graphics so far without hitting a major wall. It's the interdependent aspects that aren't evolving as easily, because interdependencies implies shared problems.
AI, physics, graphics, animations, sound, and so on, have evolved independently from one another, until they eventually created interdependences. We have to understand where each of them are heading to understand how they'll be able to fit together in their future forms, otherwise we'll simply end up with a bunch of deep interdependencies where it will be impossible to develop a component of the game without being limited by another one to the point where we'll either have to scale back on our scope, or delay the game, for unpredictable results.
Until recently, we have been standing between two worlds; one where the game is still obviously just a game with all of its inconsistencies such as dumb AI, bad graphics, and weird physics, and one where the game is actually credible in what it represents as an experience, where we can believe what we see in the sense that all facets of the game are extremely well balanced, leading to heightened immersion. We can now almost cross fully into the later world if we want to, but there are some huge obstacles that won't be overcome in the short term. If we don't want to waste our efforts on what could become a failed experiment we have all the interest in the world to understand what those obstacles imply, and how we can get around them so that we can make the most out of the coming technological developments without hitting a major wall during production.
What I call the Triangle of Death, the emerging interdependence between physics, AI, and animations, is in my opinion the biggest challenge we will face in the near future, and one I think a lot of people are about to get involved in above their heads without realizing it.
A quick and simple example: You walk through a city under attack, and you find a dragon mount (a creature that can be used as a transportation method). The whole city is under attack by boulder-throwing catapults and the dragon is just sitting there as buildings around it are falling apart. Since you have a high graphical quality with life-like rendering quality, you would expect the mounts to act like it's alive. So the programmers need to code AI for something that used to require none, so that the mounts can react even when the player is not riding them. Now if a giant boulder lands next to it, it should react. Well that implies contextual animations. Already it's getting a bit complex, and the part of the city you're in is quite narrow, so animations must take the tight environment into consideration. What happens if you shoot a flaming arrow next to the dragon's head? Does it attack you? Does it know what the arrow implies? What if a player is riding the mount, and someone shoots an arrow in its tail? Does the player lose control as the mount charges you or as it runs away, or does it just play a "hurt" animation and sound effect while standing there?
Graphics are never a problem, we could have our sparse voxel octree and all that jazz. We could hook up thousands of PCs together and we'd have perfect graphical realism for all we know, but we still wouldn't have believable characters. AI, animations and physics cannot be simulated together in a non-interdependent manner while allowing the immersion level to remain intact. We can't even do "performance capture" for pre-rendered movies without scaring children away from movie theaters, let alone have the game's AI do the job for us.
Physics are allowing us to create more dynamic environments, but this dynamism adds a layer of complexity to the AI's perception, and the AI must then move within this dynamic environment in a credible manner. Even if your AI was as intelligent as a human, it would have to be backed by an equally efficient animation system. It's just not gonna happen, especially not in highly dynamic environments. I won't even get into the implications of being able to destroy a wall of stone but not being able to destroy a mere hay stack because the later is made out of flat planes rather than volumetric geometry.
The interdependence between physics, AI, and animations will not be overcome any time soon. That being said, all three have their places in our games, but it's the link between each other that we have to remain entirely aware of. A good development team will be able to establish what their goals are to make a successful game, rationalize each of their decisions under that perspective, and effectively reach their goals by making sure that any challenges that do not contribute to their vision will be avoided thanks to a clever game design.
In the case of Shadow of the Colossus, the team spent a lot of time making high quality animations, and they made sure that the environments wouldn't be excessively cluttered. This allowed the character, and especially the horse, to have enough room to move as well as they could without ending up in unnecessarily complex environments that would decrease the desired quality or create useless bottlenecks. Their highly ambitious goals of having an immersive game with a life-like protagonist and his horse were achieved by writing down their objectives, understanding the technical limitations they would face, and making their game's design within those limitations so that they could reach those established objectives. To the player, this was entirely transparent, and it stands as a testimony to the efficiency of their approach.
Epic's Gears of War was another game that was designed around the idea of establishing a clear vision that would allow them to deliver a high quality game without ending up in major bottlenecks that would jeopardize the game's quality. Even the art direction was built around the idea of instantiated geometry, normal maps, specular, glow, etc. But once again, to the player this was entirely transparent; to him it was simply an awesome game with a unique art direction.
Being ambitious should not be an excuse for having poor planning skills, being unable to anticipate challenges to their true extent, and failing at designing a game with established limitations. Write down your objectives, seek to anticipate problems and understand the different interdependencies as well as the ones that may emerge during the later development phase, rationalize your decisions in relation to your objectives, and deliver.
[Originally posted at http://www.allegory-of-the-game.com/]