COMMERCIAL | Dorna Commercial

Final shot:

For this commercial we had to add all the dynamic vegetation, the matte and scene extension in the shots needed and to composite those.

Breakdown:

All the vegetation was animated and rendered in Maya.

This is a preliminary test for internal use only.

Dorna Commercial - grass test

Then we tested the animation. The timings of the animation are not final. In the end we prefer to render all the animation ‘slow motion’ and accelerate these afterward in compositing. The camera track animation keys had to be scaled also. The reason behind this is that the shots were very short (12frames – 18frames) and the speed of the animation will create unpredictable results when morphing.

This is the plate for shot 83. We used image modeling to approximate the geometry under the vegetation in order to get as accurate shadow casting as possible.

Dorna Commercial - shot 83 - plate

The rendered result of the vegetation plus approximated geometry

The environment was supposed to have a transition between a barren land and a grassy look one. We have matte paintings of both environments and we use camera projection to add the correct camera move and parallax. The transition itself was done in compositing.

rock environment

Dorna Commercial - matte paint - rock

grass environment

Dorna Commercial - matte paint - grass

This is the integration proof. This was the template for the rest of the shots to be followed.

Dorna Commercial - integration proof

The final shot (83) with the correct timings for animation.

Dorna commercial – Shot 86

On the original footage from edit we tested the animation timings and camera parallax within Maya. These small files were then used in the edit to get an idea about how the end product will look like. Most of the alteration of frame composition and animation were done this way. It is a sure method to relate the animation a continuity trough the entire spot.

pre-visualization shot

This the quick time preview of the grass layer.  We used those to make sure we don’t have flicker or bad frames during render.

The final shot composited

Dorna commercial – Shot 91

Another example on shot 91

grass layer
final shot

TV | Divertis Show

This is an animation test done for a pitch.

The project consists of 3 minutes 3D animations of romanian political characters. This animations will be used as inserts into the show for the entire season, once a week.

We had to take into consideration the fact that the audio material plus the script for the running week will be available to us at most 3 days before air time. This timeline drove the whole animation/render/compositing pipeline.

The client is PRO TV Romania, “Divertis” show.

Dashboard:

Divertis - Land of Jokes - "Dashboard" - pitch presentation
Divertis – Land of Jokes – “Dashboard” – pitch presentation

Woodcut:

Divertis - Land of Jokes - "Woodcut" - pitch presentation
Divertis – Land of Jokes – “Woodcut” – pitch presentation

Pendulum:

Character concept :

Traian Basescu – country president

Divertis - character concept - Traian Basescu Divertis - character concept - Traian Basescu

Elena Udrea – close advisor of the president and has also couple ministry protfolios

Divertis - character concept - Elena Udrea

Emil Boc – prime minister

Divertis - character concept - Emil Boc

Morph target animation test of primary character

Motion Picture | Fire and Ice | Ice dragon

Fire & Ice (2008) TV

Director: Pitof

Plot:

Ruled by King Augustin, Carpia is a peaceful kingdom in a world inhabited by dragons and knights. The land’s serenity is unexpectedly shattered by a Fire Dragon that spreads almighty fear and death amongst the kingdom’s innocent people…

http://www.imdb.com/title/tt1135493/

Final result:

Breakdown:

How to:

fire dragon post quote:

<<

This project was quite a difficult mission for us because of the more than 450 full cgi vfx shots. The timeline was a little under 7 months of production, starting from the day the edit got approved.  3 months before, we started with the previz and the setup of the whole pipeline to fit the deadline.

This is the reason behind the automation of this project. All the shading, td setup, simulation and rendering are script driven.

This is an example of the the flow in our project:

 

 

 

 

 

  • we take the master previz scene and generate (camera name based) the files for animation.
  • the files from animation get baked and cleaned, removing helpers and dummy stuff. Then we output 3 other files: shading, particle effects and environment.
  • the shading files use script based action for automation of the basic texture assignment, shading settings and light placement. After this, we teak around for desired effect and then we out put again, by script, files for beauty renders, layers and utility maps. All these are going straight to render farm.
  • the particle effects files split into 2 different files: low quality settings simulation and high quality settings simulation. The LOW Q settings simulation files output data to be used for simulation driven particles. The HIGH Q settings simulation files output data straight to render farm as fire, smoke and volume zdepth layers.
  • the environment files split into 2 separate direction: one is full cgi geometry and the other is mate paint projection. Both output all the beauty plus utility layers by script.

 

>>

previz

The previz animation was done during a 2 months and a half timeline. In that period of time the animators team build entire movie sequences that were followed by camera placement under director’s supervision. All the cameras were then rendered as previz to quick time files used in the edit.

After the final edit got locked we took the master files and break it apart for every shot.

The following shot is a close up of the fire dragon while the first village  attack.

model

The model concept came as a special request of the director. It is supposed to look the same as the Fire Dragon, the main difference being that this creature draws its powers from a different elemental: water/ice. This is the concept drawing of the creature that is to be the Ice Dragon

Ice Dragon concept

This is the clay model of the Ice Dragon.

Ice Dragon model

animation

Compositing and layers

Environment

The environment for this shot is quite a challenge because of the large distance of flight trajectory. We are close to the top of a high mountain that was striped mined for salt. Simply put it is a hollow mountain, made out of ice, with the ceiling collapsed and exposed to the sky for many years. We get a volcano like volume with huge stalagmites pointing out to the sky. Our dragon it is not a small creature. It is about 30 meters wide, but in this environment it looks small and fragile.

The idea being this set is that salt melts water and following this thought, movie hero decides to lure the dragon into this salt mine and collapse the remaining walls and stalagmites on top of it.

This is the comp of the environment

Salt mine composition

We split the render in two parts:

  • the cave itself
  • the stalagmites

The cave is simply built, like a cauldron. Our dragon comes flying from outside of the mountain, over the top and then plunges inside the salt mine. This is the reason why the cauldron and the outside wall are 2 separate layers/renders combined trough a gradient ramp later on.

The cauldron

Salt mine cauldron

The stalagmites are rendered using a vertical ramp for translucency because they are supposed to be made out of salt. On the layer of the stalagmites we still have the low poly geometry of the cauldron for the light bounce to be correct.

These are mated by a mask and added on top of the cauldron

stalagmites

Salt mine stalagmites

mask

Salt mine stalagmites mask

A z depth ramp + a vertical ramp were rendered in order to darken the depth of the salt mine and also add an atmospheric haze to the scene.

ramp

Salt mine ramp

The Ice Dragon

The approach to build the Ice Dragon is straight forward. We get a beauty pass that we alter by color correction nodes driven by horizontal ramps and ambient occlusion pass for the cracks and creases.

The two color corrected results are then merged with animation keys on the blend factor. The reason behind this is that the dragon is light blue and the sky is clear and crisp (producer request). This way is very hard to get any kind of contrast between the two, so we animate the blend between the light blue version dragon on top of the dark blue version dragon, considering the background of a given shot. The aproach seems overkill, but if you consider this a scripted precomp, you can easily tweak for every shot and then start from there.

Ice Dragon comp

Ice Dragon comp

Light Blue version dragon

Ice Dragon light blue

Dark Blue version dragon

Ice Dragon dark blue

A major part of the Ice Dragon is the icy mist it leaves behind.

To get the dragon inside that cloud of particles we used a Z depth layer to mate the particles on top of the dragon. Beside the Z depth, for the Ice Dragon there are rendered also 2 horizontal ramp for altering the tips of the wings, wing and body separately. Also, a mask for the head, eyes and teeth is used to separate these elements. There are not visible in this shot, but it worth mentioning.

Ice Dragon Z

Ice Dragon Z depth

The Volumetrics

A major contribution to the Ice Dragon is the icy mist around it. To get this to work as a volumetric cloud with nice fluid like dynamic we took the same aproach as for the Fire Dragon.

Particles composition

Ice Dragon particles composition

We took the animated baked mesh and calculated the volume needed to enclose it’s whole trajectory. With in this volume we build by script a voxel grid for a Fume Fx simulation. The settings are not to be high quality because the render result is going to come from a different setup.

This is the Fire render of the Fume Fx simulation. We use this as a tiny detail trough the composition. Also the color gradient of the fire gets modified to fit this sliced energy like object.

Ice Dragon Fire

The simulation result is used to drive 2 particle flow systems. One follows the same dynamics of the voxel grid and the other has some additional noise speed that is combined 50% with the voxel grid motion.

These systems are then fed into Krakatoa partitioning system. The partitions reside on network storage, so it is very simple to submit by script every partition to be cached by a different blade on the render farm.

When the caching process ends, we take these partitions and we load them into 2 different blank files. We create by script a 3 color light setup for render. The 3 lights have complete different color. One is completely red, the others are completely green and blue. This way I can isolate by channels value different parts of the particle cloud. This way I can animate into compositing different intensities mask by channel values and create a more dynamic cloud then rendered already.

One system is rendered as volumetric density

Ice Dragon particle volume cloud

The other system is renderd as additive density cloud to get the plasma like effect inside the icy mist

Ice Dragon particle additive cloud

All the particles are composited against the salt mine background because we need the environment colors to be present in the misty semi-transparent layers. Because of the heavy color corection within the particles layers we prefer to blend the background into this. We premultiply after this to continue the comp.

Particle layer comp before premultiply

Ice Dragon particle comp before premultiply

Next step we add the clouds and use the Z channel of the dragon and particles to get them inside the haze. The clouds are Afterburn voxel spheres generated by particles stuck on vertices of a base/guide mesh for clouds. These are suposed  to be a more meaty fog then clouds, that is the reason of the missing details and the swirls.

Clouds

Ice Dragon clouds layer

This is the final comp as a whole.

Ice Dragon final comp

and the final shot, before color correction

Felician Lepadatu | PROJECTS | Fire and Ice | Fire dragon

Fire & Ice (2008) TV

Director: Pitof

Plot:

Ruled by King Augustin, Carpia is a peaceful kingdom in a world inhabited by dragons and knights. The land’s serenity is unexpectedly shattered by a Fire Dragon that spreads almighty fear and death amongst the kingdom’s innocent people…

http://www.imdb.com/title/tt1135493/

Final result:

Breakdown:

How to:

This project was quite a difficult mission for us because of the more than 450 full cgi vfx shots. The timeline was a little under 7 months of production, starting from the day the edit got approved.  3 months before, we started with the previz and the setup of the whole pipeline to fit the deadline.

This is the reason behind the automation of this project. All the shading, td setup, simulation and rendering are script driven.

This is an example of the the flow in our project:

  • we take the master previz scene and generate (camera name based) the files for animation.
  • the files from animation get baked and cleaned, removing helpers and dummy stuff. Then we output 3 other files: shading, particle effects and environment.
  • the shading files use script based action for automation of the basic texture assignment, shading settings and light placement. After this, we teak around for desired effect and then we out put again, by script, files for beauty renders, layers and utility maps. All these are going straight to render farm.
  • the particle effects files split into 2 different files: low quality settings simulation and high quality settings simulation. The LOW Q settings simulation files output data to be used for simulation driven particles. The HIGH Q settings simulation files output data straight to render farm as fire, smoke and volume zdepth layers.
  • the environment files split into 2 separate direction: one is full cgi geometry and the other is mate paint projection. Both output all the beauty plus utility layers by script.

previz

The previz animation was done during a 2 months and a half timeline. In that period of time the animators team build entire movie sequences that were followed by camera placement under director’s supervision. All the cameras were then rendered as previz to quick time files used in the edit.

After the final edit got locked we took the master files and break it apart for every shot.

The following shot is a close up of the fire dragon while the first village  attack.

model

The model concept came as a special request of the director. This is the concept drawing of the creature that is to be the Fire Dragon

Fire dragon concept

This is the clay model of the Fire Dragon.

Fire dragon model

animation

This is viewport rendering of the final mesh animated before it went to shading and rendering.

The animation is baked after approval in order to eliminate all the additional controllers and helpers needed  during animation. The transform matrix is then locked to avoid accidentally moving, rotating or scaling the mesh.

render

background

This is a simple image of the sky background with a little bit of the terrain horizon.

background layers

Dragon body

We choose to render the head and the body of the dragon separately. This is a special request from compositing, in order for them to better end easy access different details of the dragon.

dragon body layers

Dragon head

As with the body of the dragon, all the layers below are render results of max files generated automated by script.

dragon head layers

Dragon volumetrics

The layers below are fire, head fire, particles and smoke. The head fire was necessary because of the needed resolution around the head area. The particles are driven by a low quality simulation grid.

dragon volumetrics layers

compositing

background

For this particular shot all the layers used for the background comp are not necessary, mainly because we have no real parallax and because of the heavy use of the dof.

Even so, all the render output is scripted to fit all the shots, so we end up with these layers already precomped.

background layer background layer comp

smoke

The smoke is a the rendered result of a fume fx simulation. This was supposed to be a high detail voxel simulation but we had to chose a lower settings for speed sake in order to meet deadline.

smoke layer smoke layer comp

particles

The particles are a particle flow system driven by a low quality settings of the fume fx simulation. We took the same voxel grid that generated the main fire and smoke layer and we heighten the size of the voxel. After that, we setup 3 particle flow systems driven by various degrees of influence from the simulation. All these are then cached by krakatoa as multiple partitions. With the cache on the network we move everything to render farm.

particles layer particles layer comp

body

The comp of the body layers with the particles and smoke over the background. The comp is a standard start point for further compositing.

body layer body layer comp

fire

The fire layer gets on top of the image. The resolution of the fire layer depends dramatically on the resolution of the voxel grid for fume fx. This is a close up of the dragon, but even so, the dragon flies in world space quite a lot and the grid gets larger very quickly. This limits the possibility of increasing the render quality with out getting to the limits of our machines. To overcome this, a script was written to keep the dragon in place and move the world (including camera) around it. The trick is to keep some movement of the body and some translation to relate with the dynamic of the world.

body fire layer body fire layer comp

head

The last element of composition. We use the smoke layer to create some contrast for the fire against the clear blue sky.

head layer head layer comp

All the layers presented above are a the base for compositing start. A lot more utility layers are going to be used. A full usage of these is going to be presented on the Fire Dragon – part II post.

RESEARCH | Cave Flooding

Latest Result:

To do list:

  • import/export mesh settings, scale, units, file formats, optimizations for complex geometry
  • simulation techniques, partitions, network sim, switches
  • solid dynamics inside fluid and interaction
  • fluid mesh building and export options
  • optimize mesh or surface building
  • shading
  • details: bump, ripples, foam, wet map, density map + shading
  • render passes + light setup
  • comp + nuke gizmos

01. import/export mesh settings, scale, units, file formats, optimizations for complex geometry

3D Studio Max units scale 1 unit = 1 meter
import scale in RealFlow 1
scene size for simulation grid inside 3DSMax aprox. 30 meters X 30 meters
the geometry container can be single sided but the normals have to be toward the fluid
the geometry container has to be collapsed to poly, triangle faces, max 7K triangles (we choose this value arbitrary and it seems to work both ways – quality and size wise/speed), pivot centered on 0,0,0 world, pivot aligned to world. this is initial state for geometry in order to reference everything by this.
the object can be exported as OBJ or SD from inside 3DSMax. I exporting SD, single frame, selected object.
the object can be imported back from RealFlow as SD or OBJ. The SD import works great and does not affect pivot or scene placement. The condition is not to have the same named object inside 3DSMax.
the SD export object can be activated under Export Central inside RealFlow.
if the export option is OBJ, then you have to mirror it on Y axes with the offset -2*Y_value (keep in mind initial state mesh).
RealFlow fluid meshes export as bin’s and it come as ‘flipped’ inside 3DSMax.
scale -Y and it snaps into place.

Mesh optimization results:

Updated low resolution cave mesh (for fluid simulation). Decimated from 40k to only 4k faces.

Shape curvature deviation is kept between 4% and 16%. Planar surfaces were decimated separately to keep the poly count to a minimum.

Dark green areas show original dense topology. Brighter colors show low res version.

Flood cave - optimize meshl

Triangle spread and topology.

Flood cave - optimize meshl

02. initial settings for fluid, density, viscosity, no of particles

1. Scale 1 unit = 1 meter (3dsmax), scale 1.00 (realFlow)
2. Realflow Sim FPS 25fps
Current Settings

  • Resolution 0.1 => 300k particles to fill the whole volume
  • Density 1000
  • int pressure 1
  • ext pressure 1
  • Viscosity 3
  • Surface Tension 0
  • Max Particles 5000k

Conclusion: – to be simulated
Last sim looked good but particles were too scarse so mesh ended up with low definition.

Production Settings

  • Resolution (all fluids) 1 => 1400k particles to fill the whole volume
  • Max particles count (all fluids) => 5000k
  • Water density = 1000
  • ReWater density = 1000
  • Foam density = 780
  • Spray density = 700
  • Scene scale = 1
  • Sim time for 600 frames = aprox. 52h

03. simulation techniques, partitions, network sim, switches

The particle emiters are:

  • Water – density 1000
  • ReWater – density 1000
  • Foam – density 780
  • Spray – density 700

The script has been tested on a 1.0 RF scale

Event script: waveFoamSprayEvent v1.0 from nextlimit website – all the copyright to the owner.

What the event script does:

  1. cycles trough every water particles and tests for pressure, velocity and collision.
  2. when the water particles values tested are inside the treshold limits stated by us, we copy the particle from the water emitter to the foam emitter.
  3. cycles trough every foam particles and tests for age and height,
  4. when the foam particles values tested are inside the treshold limits stated by us, we copy the particle from the foam emitter to the rewater emitter.

We modified the script to get the ReWater particles back to Water particles after given time, in order to end up with only one fluid. This is because we want to pass only one particle system to the next stage.

# Transform particles back to REwater back to WATER

 

particle_rewater = rewater.getFirstParticle()

 

while (particle_rewater):

current_age = particle_rewater.getAge()

vel_rewater = particle_rewater.getVelocity()

pos_rewater = particle_rewater.getPosition()

if (current_age >= 2):

water.addParticle(pos_rewater,vel_rewater)

rewater.removeParticle(particle_rewater.getId())

 

particle_foam = particle_foam.getNextParticle()

 

Final result of the simulation:

04. solid dynamics inside fluid and interaction

– on hold for the time being

05. fluid mesh building and export options

First pass: one mesh (Water + ReWater)

  • polygon size 0.06
  • filters on
  • relaxation 0.1
  • tension 0.05
  • steps 64
  • radius 0.04

Export mesh as .bin file

Final result of the mesh build – rendered on mray

06. shading

Foam shading – pyrocluster and mental ray:

Use Real Flow particle cache .bin files inside 3dsmax. For shading particles I choose pyrocluster voxel renderer because of the integration with the mental ray:

3D Studio Max scale values: 1 unit = 1 meter, display metric

Pyrocluster settings for foam:

  • include RFparticles_foam – particle system
  • include 1 spot light with shadow cast on – same position as the sunlight in the scene
  • initial step 0.1m
  • color 1 = 240,248,254
  • color 2 = 213,221,225
  • illumination enable
  • receive shadow on
  • self shadows on
  • initial shadow step = 0.2m
  • override light settings on
  • shadow type = raytrace shadows
  • shape = sphere
  • radius 0.2m
  • squash 0.1
  • regularity 30%
  • velocity scale on
  • stretch 5.0
  • noise type = turbulence
  • density 260
  • size 0.2
  • details 3

first render of the foam particles – no upscale interpolation

clay mesh + foam particles geometry + pyrocluster