Optimization & Leverage

Real Time animation production should start with a change in mindset

Computer graphics can make gorgeous, high resolution stuff. However, that isn’t always the point.

The graphics of the game industry evolved on a parallel track to the 3d techniques of the movie business. Instead of focusing entirely on high resolution images for the screen, they focused on reusing things, packing them, and limiting the color palettes. In order to play in real time, the content needed to be optimized. Because of this focus, games have always been looked at as less graphically impressive.

That’s because most in the movie industry don’t understand the real art of game design.

Instead of thinking:

“How do I make this really high quality?”

Start thinking:

“What’s the most efficient thing I can build to get the most use out of it?”

A Space Chicken Showed me the Way

In 2012, I was an animator, but a novice game designer. After three failed attempts at building a mobile game, I decided to simplify my learning process and rip off what everyone else was doing at that time — build an endless runner.

Roping in some development help, the result was Commander cluck, a demo of a running and jumping space chicken, that had a single touch mechanic. This was a triumph for me as my first game that actually worked. What threw me about the development process however, was learning and seeing the potential of something called procedural generation.

I had started to write unique levels out but, after watching the talks and readings from the independent gaming world, I decided to try something new.

I divided a level into seven “chunks” of content. I made a single level with seven variable chunks. I made four different background sets of pieces. Then, I tied the content variables and the speed into the performance of the player. At run time, the chunks were randomly selected and placed based on the changing variables.

The result was a game that generated it’s levels and dynamically adjusted the difficulty.

A fairly simple thing to uncover for most college level game developers, but for me it was like figuring out my first animated walk cycle. I remember my mind exploding at the possibilities.

Because of this odd space chicken game, I had learned the value of reusing things mathematically.

Leverage to Infinity and Beyond

Engines are collections of work flows (tools) and reusable elements (assets) that the game industry has standardized to leverage these kind of opportunities. Every engine comes with the ability to generate levels, set up UI, create a player controller and many have things like gravity, starter templates, or scoring systems.

All of these developments allow you to get up to speed and experiment with the game content much faster. As you continue to develop your processes, engines allow you to build more tools for duplicating work, offsetting it, and (most importantly) enhancing it. The better the infrastructure below you gets, the more you can improvise faster.

Experimenting with content in engines is about efficiently leveraging optimized content. This is the genesis of creating compelling procedurally generated content. A subject I will be speaking about in length on this Nytrogen newsletter.

Animators should begin to internalize the optimization & leverage mindset and not think of an animated story as a linear progression, but a collection of animated pieces. These pieces can be reused and assembled in mathematical ways that I’ll soon be discussing right here.

Thanks for reading. See you next week.

Some reading on:

Dynamic Difficulty Adjustment: https://www.hindawi.com/journals/ahci/2018/5681652/

Procedural Generation: https://thenewstack.io/new-crop-games-built-procedurally-generated-universes/

and a 10 year old blog post about randomness in games –

https://boingboing.net/2009/10/12/my-generation-how-in.html

I began this newsletter to begin a conversation with the computer graphics industry. Should you have thoughts or comments, please feel free to reach out. I can be found on twitter @nyewarburton.

Please follow and like us: