Under the hood of Nicky Tanner

Here is an official trailer of our animation feature film "Nicky Tanner — the Dragon Spell".
This is the story about young boy who faces the ancient and powerful evil. Living in the shadow of his famous father who is strong unbeatable hero, Nicky has to find his own way to rescue our world from destruction.

The teaser below was the first one shown in Ukrainian cinemas. The story is totally unrelated to the plot of the film.

Since we’ve released teaser and trailer, finished pre-production period and started production, it is the right time to share some details about our process for those who are interested.

How to design and realize imaginary world. 

Inspired by Codex Seraphinianus, i will describe step by step how this teaser was made. Exactly in the same way we are going to make the whole feature. This is our first project and moreover, this film has all chances to become the first 3D animation feature in Ukraine. We started from scratch — brand new studio Panama Grand Prix was created with ambitious goal to produce animation feature films.

From the idea to the movie. 
The storytelling process starts from the main idea — synopsis, when you formulate the story in a very short form. Then, on the basis of synopsis writer creates a script. Storyboard artists visualize the script as a sequence of images. The movie which is created from these pictures is called story reel. The development of the story reel is the key process of animation feature production. When everybody is happy with the story reel, the CG department along with concept artists can start movie production under the supervising of production designer and director. In ideal world.
In reality, we faced with a situation when we had to start production before script approval ( and apparently before story reel appeared). In addition, we have a very short term for production. And moreover, we have a very limited budget. These issues determined our key production features.
For example, we chose to create high detailed environments and "film on location" later rather than build unique scenes for every shot on the basis of the storyboard. Refer to the modeling details.

Manage the infinity
Project management team transforms concept art to a list of assets  (models with necessary textures, materials and rigs ) and story reel to the list of shots grouped into sequences and reels. The list of the assets and shots has to be recorded to a project management system (we have chosen FTrack). CG department creates assets, assembles shot scenes from assets, animates, renders and composes the shots based on FTrack information. In general, this is a common workflow for any animation studio.
Since this is our first animation feature we started from "Chinese Shotgun" — pencil and paper, then switched to EXCEL documents (and TXT files as a database for python scripts) and finally moved to FTrack. We had to pass this weird way because we did not realize in the beginning of the production what data we would need to use and track.

Production pipeline

The studio deals with an incredible amount of miscellaneous objects thus requiring an insane amount of actions including modeling, shading, rigging, animation, lighting and rendering etc etc. The organizing of all different objects and actions into a strict logical system allows to split all tasks among studio team members, transfer any data to any member in predictable standardized way, automate repetitive actions, minimize mistakes caused by humans and, as a result, raise production speed and quality dramatically. This system is what we call production pipeline.
The fundamental principle that we use for pipeline development can be expressed as abbreviation ASAP — as simple as possible. Having limited human and time resources on the one hand and high requirements to quality on the other hand, we had to build a very predictable and reliable system to produce shots. We decided from the beginning that we would pay with flexibility for reliability. 

Organize the universe. 
We divide assets into a groups according to the way we use them in our 3D software — characters, environments and props ( animated and static). Indeed the variety of asset usage could be much much wider but conciseness of classification determinate simplicity of pipeline. I would say, the most challenging part of the pipeline development is design of the asset classification because this structure defines pipeline skeleton.
Because props group consists of a huge amount of assets we also divide all props into the groups in a certain way. For example, in order to sort out the concepts of environment foliage to a list of assets we invented magic world classification system, which is similar to biological classification of plants in the real world. So we got the list of plants structured into intuitive and usable for artists form.

Animation DNA toolkit.
We organized all actions, which we needed to execute during film production, to certain groups: asset creation, animation, rendering, etc. Then we defined rules and order of execution of this actions. Then we wrote python tools for automatic execution of main actions. We called "DNA" the combination of python tools based on pipeline rules.
Tools organized to sets related to pipeline steps: Asset Manager tool set for assets creation, Animation Manager for animation process etc.
Any tool communicates with FTrack: receive necessary information from its database as well as sends and records key data about shots and assets. Main production actions are being recorded for project management team purposes also. Any member of studio team interact to each other through FTrack with a help of DNA.

You can download and use the early version of rendering tool set known as Arnold DNA Render KIT. Follow the link to learn more deeply about pipeline setup in our studio.

Organic pipeline paradigm
The term "production pipeline" by itself defines our perception of movie making process. Obviously we see similarity between movie production and any other manufacturing where we use machines, tools and other mechanical devices. Such conception gives quite successful results so there is no necessity in reinventing the wheel.
However, we try to look at production process from the biological point of view and get some interesting ideas. The difference between machine and organism is similar to difference between nodes and layers — same task could be achieved differently and perception could define algorithms.
Now our pipeline system is built in usual mechanical way but the name of our tool set ( DNA ) hints that we keep in mind alternative approach. We plan to develop these ideas more in future projects and possibly we will grow organism rather than construct a product.

Asset creation
After a polygonal model with textures has been created we need to make some adjustments to fit models to our pipeline whereby the polygonal model becomes an asset. Animated models has to be rigged. Props also requires some steps.
Huge amount of copies is what distinguishes a props from another asset types (characters or environments).So we set up props using common technique for modern renders when actual render geometry kept at hard drive and in Maya scenes exist only link to this geometry. For each prop we create low poly preview geometry. As a result, environment scenes filled with props are very light: open and save fast, display in viewport with high FPS. 

Base elements and library of assets
Complex object assembles from a number of simple elements like leaves, brunches, stones, grass patches etc. Simple elements organized as library's of base elements. We create brunch from leaves, trees from brunches, fragment of land from trees and other elements. Final props organized as library's of props. Reusing same base elements in different props allow to speed up modelling and create wider variations of assets.

Patches of well detailed ground peaces we call Systems.  Base of each system is certain tree type, which surrounded with a lot of other assets. 

Shot production
Shot production starts in Ftrack, where we create a shot, set up frame length and link all necessary assets: environment, characters and animated props.
For each shot we create animation and rendering scenes with Shot assembler tool. User enter number of reel, sequence and shot, press create scene button and scripts save scene in a proper place with a proper name, reference all necessary assets and set up key parameters, like frame range, camera name etc.

After animation has been approved, FX team creates hair and cloth simulation and dynamic FX. All simulations and animation being exported to alembic ( or VDB for fluids) format with Export Animation tool.
Than we can assemble render scene and import animation data in it. Assembled render scene with animation is almost ready for final rendering, you just need to add lights and with Render manager add passes and submit scene to a render farm, so lighting-rendering artists can focus on artistic but not technical side of work.
Learn more about rendering pipeline read at DNA Render KIT guide and about character setup in rigging notes.

We render shot into image sequence with motion blur and depth of field as a single layer. Each frame contains information that we can use on compositing stage such as passes, scene measuring data, selection masks etc. 3D rendered images are quite close to a final result by their look. The compositing mostly means adding sky image linked to the camera, slight color correction and fixing mistakes and bugs of rendering process or humans.

Look development process could be continued on compositing stage with a very impressive results by a lower cost in terms of time and rendering power. For that purposes we output selection masks for all material so you can make wood looks really really woodish.

Project design
We pay attention not only on images we produce but also the whole environment we use for production is well organized and designed. Even code we write looks good and readable. Our UI for DNA scripts is pretty and usable.

Final Ukrainian trailer

Some secret frames from final shots

Images from previous teasers