Well if you want to make a living out of creating a game you have to sell it, make people look at it and get them interested enough to consider buying it. The sad truth about making a game is that you have to present it in a light that makes it look exceptional and pretty. At this first stage off attracting the customers eye the gameplay doesn’t matter yet. In order to make them look at your game and remember it, you have to make a good strong first impression. And you can only do that visually, with screenshots and trailers.
So last week I’ve been working on a cinematic editor for us to use in order to let our artists create something really awesome in order to make people excited about the game. The previous trailers have all been done by recording while walking around in the game. Now the artists have the possibility to create a cut-scene, place key frames for the camera and tweak post processing effects. Of course this cut-scene functionality will be used in-game as well.
The artists can manipulate the camera by simple number crunching in the panel to the right. But they can also enable free-flight mode and physically fly around to place they keyframes exactly where they want to. First I used N-order Bézier curve in order to make the flight smooth. Bézier have the property of giving really nice curves but unfortunate that they are not guaranteed to cross any more keyframes than the first and last ones. You can work with it, having the points act as “forces” pulling the curve instead of being physical positions. But it’s harder to work with. So we changed to an algorithm that is simpler to work with because it guarantees that the curve intersect every point, the Catmull-Rom spline.
In the editor in addition to camera keyframes we also support interpolation between different field of views, depth of field values, HDR exposures and the color gradings. Interpolating color grading is probably the effect that gave the most visual impact. Here is an small example of the system in action, all coder made of course
A lot of work were put into making this tool easy to use. Like the fact that they can set everything up using a free-flight camera so they can see exactly how everything will look at this current frame. That was probably what got most work on it in the entire editor. The actual implementation of the cinematic was straightforward with simple interpolation between set key-frames which is provided by the artist with the already spoken of tools.
Other than that it isn’t much special. You create a look at matrix and shader variables based on the values given by the artists and you provide the tools they need so it becomes easier for them to make awesome stuff. I can’t wait till I see them start using my tool
Also if you like what you see please go to Indiedb.com and vote for us as the Indie Game of the year for 2012.