Friday, April 2, 2021 - 15:18

Sallu Kazi is the Crowd Department Supervisor at Scanline VFX where he works with Golaem on several top notch projects. He has worked in many countries, for various studios, with almost all commercial crowd software which ever existed. Today, he shares his experience about being a Crowd Artist. 

How did you become a crowd artist?
It all started when I was working as a pipeline td in a studio, I got an opportunity to evaluate massive software for a project, though we never got to use it, I had got a good hang of it. Then on the first day of my next job as a lighting td, I was assigned to evaluate massive software again for a project after they knew I had evaluated it before. This time it went well and we started using it on the project and a few more. After that I moved on to other roles as lighting td and lighter. I completely got involved in crowds when I got an offer from Animal Logic, Sydney as crowd td. Since then there has been no looking back and one opportunity led to another. It’s almost been 11 years that I have been working in crowds at various studios with different pipeline and crowd software. 

Could you share a few projects you have worked on?
Zack Snyder’s Justice League, Mandalorian (Season 2), Bloodshot, Addams Family, Black Panther, Thor: Ragnarok, King Arthur: Legend of Sword, Now You See Me 2, Dracula Untold, Walking with Dinosaurs 3D, Happy Feet Two, Sucker Punch.

Given your experience in crowds, which trends have you seen emerge over time, and how do you see the future for crowds?
Lately there has been an increase in crowd requirement. Before there would be one show requiring crowds per studio and per year,. Now there is so much demand for crowds, almost 3-5 shows per year per studio. Also not to mention the tools are enabling the crowds to be more up close to the camera with facial expression, cloth and hair. 

I think the future would be more towards getting the crowds into realtime engines, not only for virtual production and movies but also for drive simulations used for self driving cars & robots. With more and more machine learning models being presented every year, we can definitely see the crowd tools aligning towards these models for deformations, smart facial animations, automatic locomotion leading to meta crowds!! 

How did the Covid crisis affect film production and the way you are going to work with crowds?
Nothing much has changed in terms of working in crowds, what has changed is the demand for crowd across many projects since covid restrictions affected the film productions. 

Would you recommend CG artists to get in crowds? How? Which skills should they develop?
Working in Crowds is almost like it’s own mini production, it deals with models, lookdev, rigs, animation, layout, simulation, cfx, lighting and rendering. So having a complete understanding and/or experience in any of the production process would definitely help in becoming a good crowd artist. Good problem solving skills is always a big plus. 

Anything else you would like to share?
Avoid Real Crowds and Stay Safe :)

Want to become a Crowd Artist?

We are running a FREE training program. Join the Golaem Academy!

Monday, March 30, 2020 - 15:05

Golaem just turbo-charged its eponymous software with version 7.3. Golaem 7.3 enables to load Golaem characters into any software thanks to a USD procedural plugin, and includes an innovative workflow to easily create morphology variations, as well as scattering tools.

By coupling the Golaem Vignettes concept, the Layout Editor, and new plugins for various file formats and DCCs (USD, Houdini, Unreal, Katana, 3dsMax), Golaem characters are going more and more out of the crowd department. They become a cross-pipeline data format for animated characters, cars, trees… The latest features in Golaem 7.3 illustrate this vision and simplify interaction with the FX department, as well as using Golaem for set dressing and environment creation.

In the Covid-19 context, to keep in touch with its users, Golaem will demonstrate this new version and do some tutorials live online during the following weeks.
Check the program and register HERE!

USD Procedural Plugin

Golaem introduces a procedural plugin for Pixar’s USD, enabling to efficiently load Golaem characters in the USD pipeline, therefore making them directly usable in many digital content creation tools supporting USD such as Houdini, Katana, ...

Coupled with our Python-based Layout Editor, it makes it a powerful and versatile tool for populating scenes, available everywhere without much pipeline integration efforts.

Check how RodeoFX uses this plugin to load Golaem Caches within Houdini and layer up some Vellum cloth on their Crowd characters, in the video tutorial to the right by Lead Crowd Artist, David Raymond.

The Golaem for USD procedural plugin is available for USD Standalone, Houdini and Katana. The procedural code has also been open-sourced for studios needing to build it themselves.

Morphology Variations

On top of its artistically controllable character geometry and shading variation system, Golaem now ships with a morphological variation feature.

Within the same Character, one can define different kinds of morphologies (small, tall, thin, fat...) by defining scale ranges for every bone and control their assignment and even mix them to obtain variations inside a population, while retaining artistic control along the whole shot creation process.

The generated characters definitely look more diverse and natural.

Scattering Tools

Golaem 7.3 introduces a new type of Population Tool enabling to distribute characters, or trees, rocks, buildings more naturally, in order to address set dressing use cases.

This new scattering method features fall-off, clustering, decimating depending on slope or distance to an object, normal alignment of placed characters, and so on.

To make the workflow smoother, an instant character preview has also been added and the instancing capabilities has been optimized to support in-character instancing (e.g for leaves in a tree character).

A complete tutorial about this demonstration scene can be found in the    Golaem Help Section

Skinning Animated Fur

Since its introduction in Golaem 6.4, mesh deformed fur has been successfully used for short hair and coats in multiple high end projects such as The Adams Family, Ford vs Ferrari or Lost In Space Season 2.
Golaem 7.3 goes further and enables to really skin the fur with the character and deform it along its animation.

Coupled with Golaem physics simulation, it even enables to simulate fur dynamics on a crowd at a very low cost, like in the demonstration video.

The workflow is still compatible with most of the major fur simulation solutions (Xgen, Yeti, Ornatrix,…) and proprietary engines provided they can be imported within Maya as curves (or Alembic curves).

A complete overview of the workflow can be found in the Golaem Help Section

Artist friendly animation retake in Layout Tool

Golaem 7.3 enhances the Golaem Layout Rig Node, which is able to emulate a Maya IK/FK rig on top of any Golaem cached character. This rig can be seamlessly used by animators to retake a character animations within Maya and promote them without going out the crowd pipeline.

This new tool enables studios to build libraries of Golaem Population Vignettes so that their Layout team and animators can easily put them in a scene and quickly retake their animation to adapt them to the creative needs.

A quick tutorial about how to use these Animation Layers can be found in the Golaem Help Section

Last but not least, Golaem 7.3 also comes with Maya 2020 support

Learn More

Friday, January 10, 2020 - 11:45
Golaem has been awarded with the Innovation Prize from the French Academy of Cinema Arts and Techniques (César Awards) for its Character Layout Tools.

On January 8th, after a vote by 110 CEOs from the French Federation of Cinema, Audiovisual, and Multimédia Industries (FICAM), Stéphane Donikian (Golaem CEO) and Nicolas Chaverou (Product Manager), received the César & Techniques Innovation Prize on behalf of Golaem for its Character Layout Tools.

This prize distinguishes a company providing a product or a service enabling the development of creation and the quality of the diffusion of French cinematographic works while demonstrating a strong technical evolution.

Golaem develops two products helping artists to populate TV shows, films and games in minutes. 

Golaem Crowd enables to animate thousands of characters with advanced behaviors, including physics, fur and cloth simulation, in real-time inside the Maya viewport.

Golaem Layout, available on several platforms (Maya, Houdini, Unreal, …) enables artists to easily layout a scene by moving characters like any other 3D object, and using procedural tools to automatically adapt their feet to the ground or add variety in the appearance and animation while being able to manually animate with a simple IK rig. 
Golaem Layout has been unanimously acclaimed as a huge time and money saver by all its customers.

Golaem tools are used on all kinds of projects from the smallest one to the more daunting ones. Recent projects completed using Golaem include Ford vs Ferrari, The Addams Family, Wonder Park, Game Of Thrones, Fantastic Beasts: The Crimes of Grindelwald, Love Death +  Robots, League of Legends cinematics...

Learn more:

Wednesday, November 13, 2019 - 11:51

Our friends from Digital Production (http://digitalproduction.com) included an article in their 2019-6 edition about the basics of Golaem 7 new Layout Tool and how to make the most of it to populate your shots with animated characters. 


Read the whole article (in German)

Here is the English translation

Golaem Layout is a plugin for Maya which helps populating CG scenes with animated characters vignettes (whatever they are: humans, arachnids, horses…) by manipulating them with Maya tools and with the help of smart non-destructive layers (automatic ground adaptation, look at layer, mesh/shaders randomization…).

Originally available in Maya, as a retake tool for Golaem Crowd Simulations in 2016, Golaem Layout quickly started to be used by artists as a standalone tool to create simple population scenes faster. Golaem 6 acknowledged this new usage by introducing a Library Tool enabling to gather animated characters scenes in a library and importing them to be slightly (or totally) modified in each shot.

Golaem 7, released this summer, pushes the concept further as it introduces posture and rig layers which enables to reanimate a character manually, but still benefiting from the Golaem Layout performances and all smart layers. The user interface also has been transformed into a nodal editor so that it is really fast to reapply modifications done on a character to other characters, or randomly on the whole population, or in a given location of the scene.

This new user interface being based on Python, it can be easily opened in other DCCs, allowing artists to benefit from round-trip modifications between Maya<->Unreal, or Maya<->Houdini for example.


Importing Character Vignettes in your scene

Whether you are in Maya, Katana, Unreal, Houdini… the process is overall the same: open the library tool and click on the Character Vignette you want to import, then scrub the timeline and see your Golaem characters moving.

Depending on the software you are in and the renderer you are using, the way to get shaders on your characters may vary however. This process is covered by dedicated videos explaining how to create your dcc/renderer specific shaders so they will be used on your Golaem Layout characters.

For simplicity sake, the following parts of the article will be written as if you are in Maya.

Layouting your scene

Once your characters have been imported in your scene and properly shaded, it’s time to place them in your scene and direct them.

Switch to vertex selection mode (F9) and select one or more characters. They should be now highlighted in green (otherwise you probably selected some meshes or particles behind, just hide them for now or make them non-selectable).

You can now transform your characters using the usual Maya tools (Translate / Rotate / Scale). So far, except for the performances of the display if you have many characters, nothing really impressive, right?

Well, try moving them on a non regular terrain, like a slope, or from the sidewalk to the street level. Do you notice how they adapt themselves to the terrain height? By default, it is a very simple height adaptation, but there are some more precise modes like IK adaptation.

By the way, coming back to performances, did you try to save the scene? If you do, you will notice that you can have thousands of characters in the scene, it saves almost instantly and the file size is very reasonable. Indeed, Golaem Character Vignettes acts like smart proxies/stand-ins.

Layers overview

After playing with your characters, you can click on the Layout Editor button to open the graph Golaem Layout created based on your inputs. You should see some simple nodes like Selector, Translate, Rotate and so on. This graph describes to Golaem Layout how to build your scene based on input Character Vignettes. You can plug more nodes following the simple transforms, to scatter characters around the scene, control blend shapes, add or modify animation, change trajectories, and so on.

The nodes are non destructive, which means you can change your mind at any time and modify them, apply them to more characters, or completely disable them. You can even have different branches in your graph and activate one or another to do some tests, or based on the camera in the shots, etc.

At the left hand side stands the Layout Nodes Library, listing all the nodes you can use. Let’s see what it contains

Selection nodes

Selector: The Selector node specifies which characters will be affected by the nodes following it in the Graph. It can be created by selecting characters and double clicking a node, or by filling an expression to determine characters ID. There is also a “Keep percent” parameter to select characters randomly in a group.

Transform Nodes

Translate / Rotate / Scale: The translate, rotate, scale nodes enables to transform  characters. As with Maya objects, the values can be keyframed, and noise can be added to generate diversity when dealing with multiple characters. These are the basic nodes which will enable you to place you vignette where they should be played in your scene.

FaceTo: The FaceTo node enables to make characters face a given position. You can think about a stadium and orienting all characters toward the center of the stadium for example. A locator can be created and keyframed to represent the target. Again noise can be added to give a bit of diversity and get a more natural result.

Expand: The Expand node scales a group, which means it makes character closer or further to each others. Very useful if you want a group to look more or less dense.

Multipliers nodes

Duplicate: The Duplicate node is like a copy/paste of characters. The duplicated characters can then be modified (for example their outfits randomized or noise added on their animation, etc) to make them look different than the source character. This node is useful if you need to duplicate a particular group of characters and fine tune it.

SnapTo: The SnapTo node does the same as the Duplicate node, but it uses a Golaem Population Tool (the tool used to scatter characters in a scene) to know how much characters should be duplicated and where they should be placed. This would be the tool you use to place a large number of characters precisely (think populating a stadium, or creating soldiers units following a precise pattern).

Kill / Unkill: The Kill/Unkill nodes simply enable to remove a character from your scene. For example, if the director does not like a specific character, you can just select it and remove it.

Animation nodes

SetFrame  / FrameOffset / FrameWarp: These nodes enable to offset or change the speed of the characters animation either with a given value, randomly, or using keyframes. It can be used to create ping-pong animation, playing it reverse, add diversity on a group of duplicated characters, create a timelapse effect…

Posture: The Posture node can recreate Maya joints on top of the Golaem characters so that you can reanimate it using any tool you would like

Rig: The Rig node goes one step further than the posture node and can create a simple rig on your Golaem characters so that you can quickly manipulate and reanimate them using Inverse Kinematic.

LookAt: The LookAt behavior can make your characters follow (or aim) a target with one of their joints (usually head, but could be the arm if carrying a weapon). As for other behaviors, the target can be a keyframed locator, and can be relative to the characters or absolute in the scene. This is quite useful to control the gaze of two characters crossing each other in the street for example.

BlindData: The BlindData node enables to replay additional animation data, like BlendShapes. It can load the list of all data available for a character and enables to keyframe them and noise their values.

GroundAdaptation: The GroundAdaptation node enables to control how a given set of characters will adapt to the ground geometry. It can be simple height adaptation of the characters’ root bone, or height adaptation + orientation, or IK adaptation so that feet are correctly oriented following the slope.

Navigation Nodes

TrajectoryVectorField: The TrajectoryVectorField node can read a VectorField painted with the Golaem paint tool on the scene geometry and make the characters follow this trajectory, even if they were going straight in the Character Vignette source animation. Imagine you have a Character Vignette of a character walking straight and you need to make him turn right at a street crossing: just paint vectors and apply a TrajectoryVectorField!

Assets nodes

SetGeometryFile: The SetGeometryFile node can be used to select the Geometry file a Golaem Character should use. Indeed Golaem characters can have multiple geometries, for example for Level of Details purposes.

SetRenderingType: The SetRenderingType node can be used to change the general aspect of a character. In Golaem, RenderingTypes are a set of rules deciding which assets characters should use. For example, you character could have winter/summer RenderingTypes, or business/casual RenderingTypes. When duplicated characters, it may be interesting to change the rendering type to quickly get a totally different visual aspect.

SetMeshAssets / AddRemoveMeshAssets: These nodes can be used to precisely decide which assets a Golaem Character should use. The classic example is the director saying “I do not like the fact that this character wears a t-shirt”. Select the character, add a AddRemoveMeshAssets, remove the T-Shirt and add the Shirt asset for example.

ReplaceShader: The ReplaceShader can be used to override a shader used on characters by another one

SetShaderAttribute: In Golaem, the shader variations are driven using ShaderAttributes, which values can be automatically randomized by Golaem. Using the SetShaderAttribute, you can decide the value of theses attributes for a particular set of characters. Doing this you can decide that a particular character will wear a yellow t-shirt for example.

Helpers nodes

Notes: Using the Notes node, you can leave comments on parts of the graph, to explain coworkers (or your future self!) which characters they affects and what they do

Group: The group node enables to group nodes together when they have a common purpose.

Merge: The Merge node enables to gather various branches of the graph together.

But how do you create those Character Vignettes by the way?

There are multiple ways to create vignettes. 

With Golaem Layout, you can use the Golaemizator tool (note: only available in Maya) to convert Maya keyframe or mocap animated characters to Golaem Character Vignettes. This way you can transform anything you can import in Maya into a Golaem Character Vignette.

If you are already doing simulations using the Golaem Full version, you can just load the Character Vignettes created when exporting your simulation.

Build a Master Layout

The Golaem Layout workflow gives the full extent of its potential when you have a large number of shots to populate with ambient population. The best way to achieve this is to have a master scene with all your characters and every animation they can play, and export this scene to what we will call a Master Golaem Layout (either by simulation or with the Golaemizator Tool).

Once it is done, for each shot, you can create import the Master Layout as read-only and create a shot specific layout layer to keep only the characters you need and layout them in the shot. This way, if you need to change something in a character or animation, you can just change the Master Layer and it will be propagated to all your shots automatically.
Even better, at each revision, you can create a new Layout layer for your modifications and keep a lightweight non-destructive history of all revisions in your scene.

Actually this Master Golaem Layout and individual Character Vignettes can even be created automatically each time a new animation is pushed on your assets system. All the Golaem Layout Tools are scriptable and there is even a C++/Python SDK to read/modify caches in case you need some automation or want to display Golaem Layout Characters on a proprietary or non-supported platform.

Setup your characters for easy variations

Golaem provides ready-to-use characters for usual situations like casual people, business people, roman or middle age soldiers, etc. To maximize the possibilities of variations, they are built with separated assets (tshirts, trousers, shoes, …) in different versions, all skinned onto the same skeleton. There shading graph also includes multiple textures and color variations per mesh.
Golaem then provide the possibility to organize them per-group and choose for each item a kind of probability of using it, using simple sliders. The asset variation is then done automatically by Golaem when generating characters. If you build a character and model assets from scratch you should do the same.

However nowadays, the usage of scanned characters (or commercial libraries of characters like RenderPeople or Mixamo), makes it difficult to separate assets and a character often comes in one mesh only. In this case (and provided the characters are all mapped on a skeleton with a similar structure, even if the bone lengths vary), Golaem recently added the possibility of building a generic Golaem character with all those one mesh bodies as variations and be able to choose how much of each type you want to use. Of course, you can change the type of character on the fly thanks to the Layout node, so this is really convenient.
 

Monday, July 22, 2019 - 18:26

Golaem releases Golaem 7, the latest version of its crowd simulation and character layout software. It brings a new Character Layout Tool, including a DCC agnostic nodal editor and more capabilities, as well as a live link to Unreal Engine.

After winning a Technology and Engineering Emmy® Award in the Cost Effective Crowd Simulation Tools category, Golaem builds on its experience with many animation studios (like Dreamworks Animation, Blue Sky Studios, Ilion Animation Studios, Mikros Animation, Blur Studio, Digic Pictures…) and delivers a new way to populate scenes faster, easier and funnier.

A new Character Layout Tool
Born as a retake tool for Golaem simulations, Golaem Layout is now evolving as an independent tool for procedural character layout, enabling artists to easily populate shots by using Population Vignettes they can place in their scene and quickly edit them to fit with the shot direction.

A Population Vignette is similar to a proxy for characters and their animations which can be edited thanks to directable layers such as automatic feet adaptation to the ground, look at, duplicate, controllable geometry and shading variations, animation retiming,  IK autorig to retake animation…
Artists can then adapt the scene very easily to frequent changes in directorial intentions or environment changes. For example, taking into account a new ground geometry can be done in one click.

Population Vignettes edits are non destructive, and performed using a new nodal editor which makes it easy to copy edits to others characters, rearrange modifications, test different stacks of modifications and so on. The new Layout architecture also makes it possible to drive edit with locators, or to keyframe their values using the standard Maya tools.

Population Vignettes can be layouted manually or scattered in the scene thanks to the Golaem Population Tool. Thousands of them can be animated in real time without slowing down Maya or making the scene file longer to open.

Golaem Layout has been unanimously acclaimed as a huge time and money saver by all its customers.

Round trip link with Unreal Engine
Golaem introduces a new plugin for Unreal Engine which enables loading Population Vignettes and layout them.

Unreal scenes can be refreshed instantly to take modifications done in Maya, and the Layout modifications can be edited directly in Unreal, and reloaded in Maya. 
By avoiding things such as baking alembic caches and loading them in Unreal Engine, which wastes time and is always a pain to keep things in sync, this new workflow really facilitates the work of the team. It has already been used efficiently in production by Waterproof Studios and IGG Inc. for their in-game cinematics.

This new plugin takes advantage of Golaem C++/Python APIs which allows to quickly load Golaem simulation caches and layout in any platform (one of Golaem customers has implemented an Isotropix Clarisse integration in a few weeks). It also embeds the new Golaem Layout editor, which is independent from Maya, making it possible to use in any platform which supports Python.

The Unreal plugin source code is now available to customers so that they can compile their own Unreal Engine version with it, and contribute their developments.

Golaem 7 has been beta tested for several weeks by Golaem biggest customers and their feedback has already been integrated inside!

Learn More:

Pages