How Shaders are assigned when the Crowd Entities are rendered?

When a Maya Character is imported in Golaem Crowd with the Character Maker, for each Mesh of the Character added to the Geometry List, both the names of the Shading Group and Shaders assigned to this mesh are saved in the Character File (.gcha).


Example of a surface shader and shading group names assigned to a tshirt mesh

At render time, each time an Entity will be generated, its Character File is processed and a list of meshes is computed depending on the Entity Rendering Type and its assets repartition. For each mesh, the name of its Shading Group is read from the Character File (or the name of its Shaders if you're using V-Ray), a node WITH THE EXACT SAME NAME is searched in the current rendering scene and, if found, is assigned.

Due to Maya limitations, to be correctly searched and found, the Shading Group / Shader nodes must be in the Maya scene which will be rendered and assigned to a not-hidden geometry (but the Primary Visibility of the geometry can be unchecked).

Thus, Shading Group /Shaders don't have to be saved in the Character Geometry File (.fbx) but can be saved in a regular Maya file which can be imported when needed (using the Crowd Render Menu / Import Shaders)