Sponsored By

Reflections from GDC Europe: It's A Complex (Game) World

In our final round-up from the GDC Europe 2002, we review the confernece sessions and the ECTS expo, noting the spiraling increase in game complexity.

September 13, 2002

14 Min Read

Author: by Daniel Sánchez-Crespo Dalmau

It's been about two weeks since the Game Developers Conference Europe was held at the Earls Court Conference Centre in London, and one word keeps echoing in my mind from it: complexity. I attended numerous talks and saw dozens of booths and product demos, only to realize that complexity is the next big thing (or the current big thing) in the game industry.

GDCE shared Earls Court with ECTS, a consumer-oriented trade show similar to E3 in America. ECTS was held in a large hall occupying the ground floor, while GDCE was going on in conference rooms in the above floors. While smaller than its American counterpart, the GDCE is steadily growing, and small size does not hurt quality, as talks are generally very informative and interesting. This year's subjects ranged from character animation to shaders or publisher-developer relationships and, to be honest, the conference reached that critical point in which there is too much going on in parallel, so you have to choose which session to attend. That's indeed a very positive sign for the years to come.

Ken Perlin On Procedural Character Animation

To begin my summary of this year's highlights, let's talk about Ken Perlin, who gave an interesting talk about procedural animation. Dr.Perlin has been working at NYU for well over 10 years, first developing the well-known Perlin noise function (used to create all the marble, fire and smoke you've probably seen in CGI sequences), and later applying his procedural paradigm to anything from texture creation to character animation. The lecture's subject was procedural personality effects, and was an extension of similar talks Dr. Perlin has delivered over the years at GDC and Siggraph. Dr. Perlin's method essentially implements animation as weighted combination of primitive movements on a skeletal model, so you can achieve smooth transitions and blend movements from different body parts in a very efficient and expressive manner. He also adds his own noise function to the mix, to convey micro-movements and, by adding a certain degree of randomness, help break the repetitive look of some canned animation cycles.

By using layers of noise-controlled behaviours, Dr. Perlin demonstrated how both forward and inverse kinematics can be implemented in character animation. Some postures were also demonstrated, from simple gazes to hip movement and full-body rebalancing. As the method is completely procedural; it can be modified on-the-fly so the character can navigate on uneven terrain. The character's feet adapt to terrain irregularities while the rest of the body keeps on with its normal animation. The same principle can be applied to prop-based systems, positioning body joints to grab or release an object realistically, and carrying objects in a very convincing way.

It seems clear that today's players expect better character animation, and want characters to properly interact with their environment. Very soon, simple pre-canned cycles just won't cut it anymore. Dr. Perlin's techniques showed the potential of the procedural paradigm with regards to real-time, responsive character animation.

Harvey Smith On Systemic Level Design

Another technique demonstrated at GDCE was systemic level design, as explained by Harvey Smith from Ion Storm's Deus Ex 2 team. Here we're not dealing with animation, but with the behavior of the game level as a dynamic system. Instead of hard-coding lots of features into the game as special, unrelated use-cases, the systemic paradigm tries to create global patterns which provide emergent gameplay, and the ability to create alternative strategies using the level's resources. Somehow the idea can be implemented as an extension to rule-based systems or finite-state machines, with many systems existing in parallel, and feedback loops connecting them. In this way a player can come up with new ideas to solve problems by combining items in ways that perhaps even the level designers hadn't considered. This improves the sense of immersion and freedom, while emphasizing player's self-expression capabilities through the game. An example of a systemic game is GTA3, where each mission can be solved in dozens of ways, as compared to old lock-and-key adventure games, where player expression and alternative strategies were basically non-existent. In a systemic game world, the player can use different methods to solve a problem. In a non-systemic game world, you must guess how the game designer wanted you to solve the problem, even if that way does not feel very intuitive, nor fun.

Systemic design is, however, restricted by the quality of the model of the world we choose to implement. If the world's rule set is ambiguous or vague, undesired side effects can arise. For example, Smith provided a real-world situation based on his Deus Ex 1 coding experience. A certain type of mine in the game could be attached to walls and exploded by the player. As mines were part of the general object hierarchy, they had collision-detection attributes. Mines could be arranged in such a way that, using the mines as a ladder, the player could climb walls. Clearly, the rules for the mine were not detailed enough, and cheating was made possible: level flow was broken, and the game could potentially lose its appeal.

As a more positive example, GTA3's open design was referenced. Some missions ask the player to eliminate an enemy. The mission is designed so you are supposed to use a gun to take care of the foe. Still, in some missions you can find very creative ways to reach the victory conditions, such as crashing your car into the enemy, trapping him so he can't escape, and so on. Interestingly, some of these winning conditions were not expected by the design team, but being coherent in the systemic design of GTA3's world, are accepted by the game. As you can see, a systemic design allows alternative solutions to surface. Thus, this kind of game can become a positive stimulus for logical thinking and problem-solving abilities, even in younger players. Ironically, a game like GTA3 (which has been widely criticized because of its violence) can offer a significant educational value, and that's encouraging.

After the talk on systemic level design, Richard Evans from the Black and White 2 team at Lionhead focused on social behavior simulation for computer games. His talk began with an in-depth discussion of the philosophical foundations of social activity. He explained how the work of philosophers like Wittgenstein and Heidegger can be useful to establish the groundwork from which better social simulations can be derived. Beginning with Heidegger's principle that participation in complex social activities is one of the key differences between humans and animals, Evans tried to characterize what we mean by "social process," and the benefits of making computers understand why they are important. To exemplify this, imagine two characters in a game like Black and White involved in a social activity like talking to each other, taking turns speaking. If one of them interrupts the conversation abruptly to go to the restroom, that will simply look wrong: humans are polite. Social games such as The Sims and Black and White have proven how we need to find accurate ways of representing social conventions and processes in order to create realistic, life-like simulations of the real world.

After discussing theory, Evans moved to the implementation details, which fundamentally involve being able to prototype behaviors quickly within a stable environment. He suggested creating social activities as text files, so they can be defined in a language which can be learned by content creators. Then these text files are compiled into C++ code, so you get efficient, easy-to-use code. Internally, activities can be as simple as state machines, and can use message-passing mechanisms to create communication channels between them.

Poking Around The ECTS Expo

As I'm familiar with the expo at the GDC in America, I couldn't resist hanging around ECTS to examine the new technologies present. Sadly, ECTS is more consumer-oriented than GDC, so the focus was more on games and not so much on technology and tools.

It was good, however, to see the latest iteration of graphics hardware. Both Nvidia and ATI are really going head-to-head in a graphics chip war that covers the full spectrum, from mobile chips to value chips to high-end chips. Who's got the edge in this battle clearly depends on who you ask, so the whole situation is getting a bit like the old OpenGL vs. DirectX battle, or PC vs. Mac situation. Yet the competition between the two companies is healthy from the consumer's standpoint: graphics units are quite expensive and hard to make, and having two players in the market is the best way to guarantee to ensure low prices and good performance. A recent battle in this war was the introduction of Cg (C for Graphics) language from Nvidia, a high-level language much like C which allows easier coding of vertex and pixel shaders. Shaders are the most important advance in graphics hardware in a very long time (and will continue to be the driving force of innovation for at least a couple of years). Thus, simplifying the process of coding them is a blessing for developers, and Cg is really powerful and easy to learn. Still, it is somehow a shame that Nvidia has chosen the path of a new, proprietary standard (new and standard are used here with irony). Cg, although open-sourced recently, is not really a standard the industry agreed upon, nor does it really seem to be "open" in its conception. Many existing technologies could have been recycled for the task. As an example, the Renderman shading language could have been selected, with the added benefit that the user base of that language is huge, as it's the standard for film visual FX.

The second impression I got at GDCE was that multiplayer gaming infrastructure is probably going to be outsourced in the near future. A number of key decisions must be made when developing a networked game infrastructure, and some of them are non-intuitive and unrelated to the core business of a game developer. For instance, should you purchase or renting servers? What hosting facilities should you use? As games get more complex (especially in the massively-multiplayer arena) and time-to-market skyrockets, different companies are stepping up to provide everything from networked game APIs to hosting facilities, to help game developers concentrate on building games and minimize risks.

A good example of this "cradle-to-grave" kind of company in the multiplayer tools sector is Butterfly.net. Their platform (dubbed the Butterfly Grid) includes client libraries for PCs, consoles and mobile devices, and daemon controllers (through a Python interface) for controlling anything from NPCs, game activities, and performance monitoring. In the hardware arena, Butterfly's offering fundamentally allows games to exist in a variable-sized server grid (hosting provided by IBM), so the number of players can scale arbitrarily to create richer, bigger and better game worlds.

Apart from these interesting innovations, the overall impression was that ECTS seems to be trying to decide which market segment to target. The GDC is openly a tools and middleware expo. E3 is completely oriented towards the retail channel. ECTS, on the other hand, doesn't seem to have a clear direction. Side-by-side with companies such as Havok and many others there was the Sony Playstation 2 Experience, Sony's tour-de-force showcase of up-and-coming games. Let's hope ECTS, assisted by the clear direction marked by GDCE, finds its market niche in the trade show arena.

Game Must Embrace Complexity

This year's visit to GDCE was really an eye opener. At the GDC in March, we saw how the multimedia gaming experience is on track to converge with the movie industry in a not-so-distant future. Some of the newer hardware features (like better support for pixel and vertex shaders), coupled with the usual gain in hardware performance, are really making the game industry advance at an unprecedented speed. Movies like Final Fantasy or Lord of the Rings are being simulated on desktop in real-time, just months after their cinematic release.

So the main question going through my head prior to the GDCE was "What will we do with the CPU?" Don't get me wrong: at GDCE and ECTS, I saw some of the usual hardware performance boosts from Nvidia, Intel and ATI. But for some time now I have hoped that transferring most of CPU burden to the multimedia subsystems would somehow result in better gameplay. Recently I've seen significant advancements in the areas of AI and physics, but there must be something more.

After the GDCE I realized that physics and AI are just leaves of a large tree. What made GTA3 win the "Game of the Year" award at GDC wasn't its graphics, physics nor AI. (And for the record, it wasn't the violence, either.) When I ask people why they loved GTA3, I get answers like "for its immersiveness", "for the freedom it gives the player", and "for its non-linear missions". To anyone familiar with system dynamics, all those qualities are nothing but aliases for a broader concept: complexity. And "complexity" as used in this sense is not a synonym for "difficulty". Rather, I'm talking about the mathematical, almost fractal, quality of the real world that pertains to the way that the world responds to our actions in rich and meaningful ways. Thus, the CPU has become a "complexity simulator": from the pedestrians in GTA3 fighting with each other, to the systemic level design ideals, to simulating virtual societies, the CPU generates meaningful (both in aesthetic and behavioural sense) environments, where we can take a variety of courses to reach final success. And at GDCE we have seen (and we will keep on seeing for months to come at other shows and from various sources) new techniques to handle and generate that complexity, from procedural animation and systemic level design, to social simulations and huge game grids with millions of players.

There is a wonderful upshot to all this phenomenon of growing game complexity. To some, complexity might imply that future games will be harder to master, since offering more options means a steeper learning curve. Yet Deus Ex, GTA3 and The Sims show us this doesn't have to be the case. We're immersed in a complex game world 24x7: the real world. I bet we will feel more at home in the complexity offered by this new breed of games than by trying to break a lock-and-key puzzle in an old-school graphics adventure.

Read more about:

Features
Daily news, dev blogs, and stories from Game Developer straight to your inbox

You May Also Like