news center

NEWS CENTER

The Making of “Kagura”, A Photorealistic CG Animation Created by Kay John Yim

The Making of “Kagura”, A Photorealistic CG Animation Created by Kay John Yim

The making-of tutorial article of "Kagura" was wrote by Kay John Yim for Fox Renderfarm, which is a leading cloud rendering service provider and GPU & CPU render farm in the CG industry.

This June, John brought us a tutorial on making "Ballerina". And this time, he shares another well-written article about how he made his new personal project "Kagura", which is also rendered with Fox Renderfarm, a powerful 3D animation render farm.

John

Kay John Yim

Chartered Architect & CGI Artist

Kay John Yim's personal site: https://johnyim.com/

ArtStation: https://www.artstation.com/johnyim

Project "Kagura" is a one-minute full CG animation, my second personal project to feature an animated photorealistic CG character.

The project concept is a fantasized version of Kagura (神楽) - a type of Shinto ritual ceremonial dance in Japan. Traditionally, the dancer herself turns into a god during the performance - here depicted as the dancer's ballerina tutu dress transforming into a hakama as she dances on the floating stage, purifying spirits of nature.

© Kay John Yim

The article focuses primarily on shot 3 & 4 of project "Kagura", where I detail my design and technical process of the 4 main aspects below:

  1. The Architecture
  2. The Animation
  3. The Transformation
  4. Rendering

Software I used include:

  • Rhino
  • Moment of Inspiration (MOI)
  • Cinema 4D (C4D)
  • Redshift (RS)
  • Character Creator (CC)
  • iClone
  • Marvelous Designer 11 (MD)
  • Houdini

kagura SHOT 1 still

© Kay John Yim

kagura SHOT 3 still 5

© Kay John Yim

kagura SHOT 4 still

© Kay John Yim

1. THE ARCHITECTURE

The architecture is loosely based on Ookawaso Hotel's lobby in Fukushima Prefecture, Japan.

SCREENSHOT 1

PureRef board for the project

It was probably one of the most challenging interior spaces I have ever modeled, due to the following:

a. Most photographs available online focus on the floating stage and thus were quite limited in showing the actual space;

b. With no access to architectural drawings, I had to eye-ball all the measurements from photographs;

c. The space does not conform to a single orthogonal grid, for instance, the stairs and the 1F walkway do not align with the columns.

I first gauged the size of the space by the balustrade height - as a rule of thumb, balustrades are usually 1.1 meter tall (varies slightly depending on exterior vs. interior space and the country's building regulation).

By estimation, the distance between columns is about 7.7 meters.

SCREENSHOT 2

estimating measurements from photo

Looking at the orientation of the floating stage and the columns, I assumed that the space was designed with 2 sets of grids - a construction grid that aligned with the columns (which structurally holds up the space) and a secondary grid diagonal to the construction grid (which serves only as a design grid).

I drew up the construction grid uniformly (7.7 x 7.7 meters), and placed columns accordingly. Then I drew diagonal lines on top of the construction grid to get the secondary grid. This gave me a starting point for the floating stage as well as the 1F walkway.

GIF 1

drawing up the grids, stairs and 1F walkway

A large portion of the architectural elements then instantly fell into place according to the grids I drew up.

Having said that, the modeling process was not exactly straight-forward though. With the lack of references (especially for the corner details), I spent most of the time re-designing and tweaking wall panel sizes and wall stud positions to get to proportions that were aesthetically pleasing.

GIF 2

most elements fell into place according to the grids

GIF 3

modeling by grid

I then exported the Rhino model to .3dm, opened up in MOI and exported again into FBX. Doing so gave me clean, quad meshes that I could easily edit and UV-map in C4D.

GIF 4 model turntable

model turntable

While the majority of the space took less than a week to model, I spent an additional month solely on fine-tuning the details, tweaking the lighting, and framing a composition that I was satisfied with.

GIF 5 render iterations

render iterations

GIF 6 the final composition

the final composition

2. THE ANIMATION

1) Character Animation

The character animation was created based on mocap animation, which could be found on Reallusion Marketplace.

I kept my animation workflow as simple as possible - in fact, I used exclusively "Set Speed" and "Edit Motion Layer" in iClone to get to the final character animation.

First, I imported my CC character into iClone, applied the mocap animation onto the character (by drag & drop), and altered the speed with "Set Speed" to create a slow-motion look.

GIF 7 slowing down mocap

slowing down mocap animation in iClone with "Set Speed"

*Note:

Please see my previous article for CG Character creation: Ballerina: A CGI Fantasy Created by Kay John Yim

Altering the speed, however, exaggerated a lot of movement that looked distracting. Hence I played the character animation on loop and deleted keyframes that I found unnecessary.

I then used "Edit Motion Layer" to lift up the arms and modify the finger positions.

SCREENSHOT 3

edit motion layer

2) Garment prep

Once I got a decent character animation, I moved on to MD and CC to prepare the garments for animation/simulation.

Cloth simulation in Marvelous Designer is extremely finicky - multiple layers of clothing too close together causes a lot of jittering, and that could take an infinite number of simulations to resolve. For the above reason, I separated the two sets of Marvelous Designer garments (ballet tutu & hakama) into 2 categories - Skintight vs Loose garments.

The Skintight garments would be animated in CC & iClone, a technique most commonly used in game production. This technique excels in speed but falls short in simulating loose garment details compared to MD. The Skintight garments in this project included:

a. ballet tutu leotard

b. hakama inner layer

SCREENSHOT 4

skintight garments

The remaining Loose garments would be simulated in MD:

a. ballet tutu skirt

b. hakama excluding inner layer

SCREENSHOT 5

lose garments

Note:

Garment creation is beyond the scope of this article; I highly recommend Marvelous Designer's official YouTube channel for anyone getting started in MD:

3) Skintight Garment Animation

My preparations for the garments in CC are as follows:

a. export garment from MD to FBX as T-pose

b. import FBX into CC by "Create Accessories"

c. assigned "Skin Weight"

d. export to iClone

The skin-tight garment would then be automatically applied to the animated character in iClone.

GIF 8 ballet tutu leotard animation in iclone

ballet tutu leotard animation in iClone

4) Loose Garment Simulation

In general, MD simulates garment better using CPU (over GPU) when there are multiple layers of clothing. Having separated the tutu leotard from the tutu skirt in this particular case, I found GPU simulation actually gave a cleaner and faster simulation than using CPU alone.

GIF 9 ballet tutu skirt simulation

ballet tutu skirt simulation

For the hakama, I wanted to create a calm but otherworldly aesthetic, so I reduced the "gravity" under "simulation settings” to 0, and upped the "air damping" to 5. This resulted in a constantly floating sleeve and a clear silhouette throughout the animation.

GIF 10 hakama simulation

hakama simulation

With all the garments animated and simulated, I exported all of them as separate Alembic files.

The Character was exported as an animated FBX from iClone.

5) Post-simulation clean-up in Houdini

Garment simulated in MD could sometimes result in too many details or polygons with messy connectivity. The former I personally found distracting and the latter would cause problems down the line in C4D when used in combination with "Cloth Surface".

I imported the Alembic files into Houdini and used "Attribute Blur" to smooth out the garment, eliminating extra wrinkles.

3. The Transformation

1) Setting up the Camera

Having imported the character FBX and all the Alembic files into C4D, I then move on to setting up my camera based on the character animation. This prevented me from spending extra time working on details that would not be visible in the final shot.

I use "PSR" under "Constraint" to bind the camera's height position to the character's "neck" position - doing so stabilized the camera and avoided distracting movements.

2) Tutu Dress to Hakama

The transformation of the tutu dress into hakama was driven by a combination of "PolyFx" and animated Fields within C4D.

GIF 11 working with polyfx

working with "PolyFX"

C4D's "PolyFx" breaks down objects by their polygons - any Mograph effectors assigned thereafter will then affect the object on a per-polygon basis rather than affecting the object itself as a whole.

I assigned a "PolyFx", a "Random Effector", a "Plain Effector" and a "Spherical Field" to each of the following parts:

  • tutu leotard
  • tutu skirt
  • hakama sleeve
  • hakama top (outer layer)
  • hakama top (inner layer)
  • hakama bottom

Each of the "Spherical Field"s was then bound to the character's skeleton "pelvis", specific steps detailed as follows:

a. create a "PolyFx";

b. group the "PolyFx" with the garment;

c. assign a "Plain Effector" to the "PolyFx", set scale parameter to -1;

d. assigned a "Spherical Field" to the "Plain Effector";

e. assigned a "Random Effector" to the "PolyFx" and drag the same "Spherical Field" created in the above steps under the "Random Effector", set all rotation parameters to 360;

f. create a Null;

g. assign a "Constraint" to the Null;

h. under Constraint check "PSR";

i. search for "pelvis" in the Object Manager and drag it under the "PSR";

j. place a "Spherical Field" under the Null;

k. now the "Spherical Field" will move along with the character.

With the “Spherical Field” bound to the character, I animated the sizes of the "Spherical Fields" and tweaked the timing to different garment parts to gradually scale down/scale up by their polygon divisions.

SCREENSHOT 6

a breakdown of the animated ballet tutu dress under object manager

*Note:

When in doubt type "SHIFT-C" then type in the Mograph or function you are looking for - I use "SHIFT-C" all the time in C4D.

GIF 12 garment part animation driven by polyfx

garment animation driven by "PolyFx"

3) Tutu Skirt to Butterfly

In addition to the garment transformation drive by "PolyFX", I added an extra layer of animation with a "Cloner" of animated butterflies - this created an illusion as if the tutu skirt disintegrated into a swarm of butterflies and flew away.

I use an animated butterfly created by Travis David (download linked below) cloned onto the simulated tutu skirted, driven with a “Plain Effector” in scale to make them appear and disappear in flow with the “PolyFx” animation.

GIF 13 garment transformation with butterfly cloner

garment transformation with butterfly "Cloner"

For the final rendering, I added "Cloth Surface" and "Subdivision" to each garment part to break up the polygons into even smaller parts - this resulted in an illusion of the tutu dress being disintegrated and subsequently reintegrated into the hakama.

Technically speaking, it was a relatively simple animation, the most challenging parts were timing and developing an aesthetic that flowed naturally with the character movement. The 10 seconds of transformation alone took me more than 2 months to get to the final version; I was constantly adjusting the Spherical Fields' animation through the plugin “Signal”, rendering the viewport sequence, tweaking and re-rendering over and over again. "Cloth Surface" and "Subdivisions" are computationally expensive - each viewport frame took at least 2 minutes to process, totalling about 10 minutes per viewport sequence render.

GIF 14 iterations

iterations

GIF 15 final shot 3 breakdown

final shot 3 breakdown

4. RENDERING

1) Texturing

I kept my texturing workflow fairly simple - apart from the characters, I used Megascans material and foliage in the final renders.

2) Redshift Limitations & Workarounds

Though Redshift is my favorite offline renderer for its unmatched rendering speed, there were a few limitations regarding Motion Blur and Cloner/Matrix that I had to workaround in preparation for the final rendering.

"Motion Blur" - "Deformation Blur" to be specific - contributes to the realism of CG animation. However, there is a known limitation of Redshift automatically disabling "Deformation Blur" on "PolyFX" objects. This would cause glitches (objects look as if they pass through each other) in the final render if "Deformation Blur" is turned on globally. While keeping global "Deformation Blur" on, I added a Redshift Object tag on every character and garment object and unchecked "Deformation Blur" on the RS object tags.

On the other hand, while "Cloner" and "Matrix" both serve the same purpose of cloning objects, they differ in viewport feedback and rendering speed.

Using "Cloner" has the advantage of "you-see-what-you-get" in the viewport, as opposed to using "Matrix" where you have to render out the frame to see the final result.

Rendering-wise, "Matrix" has the advantage of being rendered by Redshift much more efficiently than "Cloner" - taking Shot 4 for instance, the final render duration per frame is 3 hours using exclusively "Cloner" as opposed to 2.5 hours using exclusively "Matrix".

Hence, I used "Cloner" while working on the shot composition and used "Swap Cloner/Matrix" to replace all "Cloner" with "Matrix" for the final render.

SCREENSHOT 7

"Cloner" viewport feedback

SCREENSHOT 8

"Matrix" viewport feedback

3) Redshift Environment

I used Redshift Environment to give all the shots an atmospheric and mysterious look; it also helped to convey the depth of the scene, especially in a busy composition like Shot 4.

The Redshift Environment’s Volume Material was driven by two "Nulls" in height; a fake “Spot Light” directly above the dancing character and two “Area Lighting” from below the stage also contributed to the Redshift Environment.

*Note:

Please see Redshift’s official tutorial on driving Redshift Environment with "Nulls":

4) Redshift Proxies

Having finalized the look of the shots, I exported as many objects as possible into Redshift Proxies for rendering efficiency. I used "Redshift Proxy Exporter" to batch export objects - this saved me a lot of time, especially when exporting foliage.

*Note:

Redshift Proxy Exporter link:

https://realaturtur.gumroad.com/l/rsproxyexporterc4d

With everything replaced as Redshift Proxies, this brought my final render time per frame from 2.5 hours down to 2 hours.

5. Conclusion

"Kagura" is by far the most challenging personal project I have ever done, since I had little to no experience in motion graphics or character animation half a year ago. I learned along the way as I worked on projects "Kagura" and "Ballerina" all through trial and error, rendering out iterations after iterations throughout the past 6 months.

With Reallusion and Fox Renderfarm's support, I eventually brought "Kagura" to live, and this has been the most rewarding project since I began my CGI journey.

For any self-taught CG artist out there like myself, who is constantly struggling to up their quality and skill set, I would like to share a quote by American novelist Anne Lamott - the quote originally refers to writing but it deeply resonated with me as an artist:

Creating art is like driving a car at night. "You can see only as far as your headlights, but you can make the whole trip that way." You don't have to see where you're going, you don't have to see your destination or everything you will pass along the way. You just have to see two or three feet ahead of you.

Key Words

search
3D Tool|Trailer|Fox Renderfarm Promotion|Cloud Rendering Farm|Annecy Festival|MILESTONES|Fox Renderfarm|Desktop Client|Blender|Bollywood films|Hum3D Contest|NVIDIA|Silkroad Digital Vision|Malaysian Animated Films|Indiajoy|Art Competitions|Architectural Visualization|CGarchitect Architectural 3Dawards|Best cloud rendering services|Render cloud|VFX|Upin & Ipin|Green Book|Fox Renderfarm Interview|Mission Mangal|Kre8tif!|Fox Renderfarm Mini Program|CG|CG Tech Summit Malaysia|film works|cloud rendering|Golden Horse Award|Shadow|SIGGRAPH Asia 2018|Morrigan Flebotte|VWArtclub Annual *Contest|animation works|Asswad Mouhamad|IMax Studio|Boonie Bears|Renderosity|Gary S. Kennedy|Evermotion Challenge 2018|Brian Beaudry|Bobby Bala|Mohit Sanchaniya|Katapix Media|Flying Car Productions|Razer|The Shipment|FoxRenderfarm|CG Tech Summit|Alpacalypse Productions|halloween|Hum3d Survial Car Challenge|Federico Ciuffolini|Ralf Sczepan|Iavor Trifonov|Clarisse|CGTS Malaysia|Isotropix|C4D|Tomasz Bednarz|V-Ray|Cinema 4D|MAXON|siggraph caf|Evermotion challenge 2017|CGTrader Space Competition|film of the year|Le Anh Nhan|Planet Unknown|Fox Renderfarm 2017 Achievements|CSFF|Julio Soto|boar 2017|Deep|SIGGRAPH Asia 2017|Chris Sun|Glass Cage|Making Life of Bri' n Chris|anthem studios|The Rookies|Peter Draper|Makuta VFX|Baahubali 2|CG Competition|enchantedmob|CG Studios|Academy Awards|CGVray|weeklycgchallenge|SketchUp|siggraph 2017|Chris Buchal|SIGGRAPH Asia|LightWave|Indigo Renderer|Rafael Chies|V-Ray RT|CPU Rendering|NVIDIA Iray|Chaos Group|OctaneRender|Redshift|STAR CORE|CICAF|VR|Mr. Hublot|Ribbit|GPU Rendering|Linux|Monkey Island|LuxRender|HPC|Render Farm|Life of Bri|WORLD LAB|Michael Wakelam|3D Rendering|Online Render Farm|Alibaba|Baahubali|Malaysia|VAX|2015 Hangzhou Computing Conference|Oscar|SIGGRAPH|CGTrader|Kunming Asia Animation Exhibition|Evermotion|RenderMan|

Categories


Fox Renderfarm News

Fox Renderfarm Projects

Fox Renderfarm Lectures

CG Challenges

Top News

Blog

Fox News

Fox Talk

Trending

Recent News List


Little Traveler Challenge - 36th CG Boost 3D Art Challenge

Little Traveler Challenge - 36th CG Boost 3D Art Challenge

2022-09-29

NeXus, New to Insydium’s Fused Collection

NeXus, New to Insydium’s Fused Collection

2022-09-28

AXYZ design Released Anima® 5!

AXYZ design Released Anima® 5!

2022-09-27

Netflix Drops New Trailer for Gudetama: An Eggcellent Adventure

Netflix Drops New Trailer for Gudetama: An Eggcellent Adventure

2022-09-26

Disney Drops Official Trailer for Strange World

Disney Drops Official Trailer for Strange World

2022-09-23

Fox Renderfarm Supports X-Particles Now!

Fox Renderfarm Supports X-Particles Now!

2022-09-22

Netflix Drops Official Trailer for Sonic Prime

Netflix Drops Official Trailer for Sonic Prime

2022-09-21

Cascadeur 2022.2EA is Available Now!

Cascadeur 2022.2EA is Available Now!

2022-09-20

Insydium’s Fused Release Update Coming Soon

Insydium’s Fused Release Update Coming Soon

2022-09-19

Partners

  • Foxrenderfarm

    Мощный Сервис Рендер-Фермы

  • TPN

    Бизнес-консультирование

    Контакты Международного Агента: William Zhao

    Email: williamzhao@foxrenderfarm.com

    Контактное лицо по маркетингу: Rachel Chen

    Email: rachel@foxrenderfarm.com

    Связаться с Нами

Fackbook Customer Reviews