The Quickest Way to texture Avatar Studio Outfits for Rec Room!
Blender - Mesh Setup for Substance Painter
Why Blender?
First off - it’s an amazing Modeling tool and it’s FREE!
Secondly - All of our Avatar Studio Tools and files are setup to work with Blender:
-
So you get our Blender Tools for Automatically:
-
Setting up your Blender Model files
-
Adding in the Avatar Studio Rig
-
Test “Calisthenic” Animations!
-
Helpful Troubleshooting Checks
-
Quickly Export Avatar Item LOD0s for texturing in Substance Painter
-
Export from Blender directly to your Avatar Studio Project
Model anywhere you like but, for the easiest export to Avatar Studio, model or import your mesh into Blender for the final setup!
Exporting Meshes for Substance Painter
-
Set the name of your item’s material to start with the body type (FB for Full Body, or MB for Bean Body) and end with which body part the item is worn on, separated by underscores “_”
-
Outfit Types:
- Shirt - Eg: Shirts, Jackets, Dresses
- Leg - Eg: Pants, Shorts, Skirts
- Shoe - Eg: Shoes, Sandals, Boots
- Wrist - Eg: Gloves, Wristbands, Bracelets
- Belt - Eg: Belts, Floaties, some Skirts (if meant to be layered over leg items)
- Ear - Eg: Ear piercings, hearing aids, custom ear prosthetics
- Eye - Eg: Glasses, Face Masks
- Shoulder - Eg: Back Items, guitars
- Hat - Eg: Hats, Helmets, Headbands
- Neck - Eg: Scarves, Necklaces
- Hair - Eg: you know…hairstyles…on your head
- Mouth - Eg: Beards, Mustaches
-
With this Full Body (FB) Shirt example - CastAway:
-
Mesh - FB_CastAway_Shirt_LOD0
-
Material - FB_CastAway_Shirt
-
Export as - FB_CastAway_Shirt_Substance.FBX
-
I tend to choose a simple folder like C:\RRArt\CastAway to keep all of my source Blend Files, Substance Projects, models, and textures easy to find
-
If you are working on multiple pieces of an outfit in Blender, assign separate materials to each piece of the set (one for your hat, shoulder, shirt, etc.)
-
Name these materials in line with Avatar Studio naming convention for ease of use later (ex. CastAway_Hat, CastAway_Shirt etc).
1. Using the set naming conventions will help Avatar Studio automatically import your models/textures
- Only export the LOD0 of each Avatar Item to texture in Substance Painter
Export Settings From Blender to Substance Painter
- When exporting from Blender into Painter we don’t use the Blender Tools because we want to only export LOD0s of our models
- Because of this we’ll want to set up specific export settings to keep things consistent. by We recommend saving the settings as a preset.
- Make the following changes, then click the + icon to save the preset for future use:
Substance Painter - New Project Setup
Place AvatarStudio Specular in your “Adobe Substance 3D Painter/resources/starter_assets/templates” directory
New Project Settings - We recommend:
- Templates - AvatarStudio Specular (for Specular) or Unity HD Render Pipeline (for Metallic)
- File - Select the model(s) you are texturing
- Document Resolution - 1024 is our current in-game resolution (feel free to use 2048 and export at 1024)
- Normal Map Format - OpenGL (which is the default for Unity)
- Uncheck UV Tile Settings (UDIMs) if it is checked on
- Keep all other settings as default
- Click - OK
Basic UI Rundown
- General UI elements that are common to use throughout the texturing process.
- Your UI may be arranged slightly differently than what’s displayed here, arrange your Painter UI however you see fit!
- Viewport toggle - F1, F2, and F3 to cycle between split, 3D, and UV mode respectively.
- Sections of the UI can be minimized into the dock by dragging the menu out of the UI as a floating menu and clicking the X icon.
- When you do this, the menu is not removed but instead minimized in the Dock on the side where it can be opened again by selecting its icon.
- Menus in the Dock can be dragged out and merged back into the UI again.
Baking Essential Maps in Substance Painter
For our Rec Room Style, we only care about 4 Mesh Map Bakes:
- World Space Normals
- Ambient Occlusion
- Curvature
- Position
World Space Normal
- There are no parameters - A successful bake looks like this!
Ambient Occlusion
-
Most Setting can be left at Default - with some exceptions
-
Self Occlusion: Indicates how the bakers should match low and high-poly geometry. Since we don’t use high-poly, it’s mainly so you can perform an AO bake without needing to manually move apart (explode) meshes
- By Mesh Name, which bakes separate meshes to themselves, is selected by default in our Avatar Studio (Spec) template because it produces the best baking results
- However, if you need the mesh to occlude itself as a whole, you can switch to Always
-
Spread Angle: Maximum spread angle of occlusion rays. By default we have it set to 82
Curvature
-
Just like AO most of these settings can be left at default, however here’s some info about some specific settings you may want to adjust.
-
Self Intersection: Same idea as AO’s Self Occlusion.
-
Sampling Radius: How far the nearby geometry is taken into account to compute the curvature at the surface of the geometry. By default we have it set to .0015.
- High values may produce stronger edges while lower values may produce thinner edges but miss information.
- See comparison of a low and high value below!
- Adjust as needed for your asset!
- High values may produce stronger edges while lower values may produce thinner edges but miss information.
Position
- There are parameters, but you can leave them all as default
Exporting to Avatar Studio
Settings
Choose the same folder you’re using in Avatar Studio for your FBXs.
- Eg. C:[AvatarStudio Folder]\Assets\Avatars\CastAway
We’ve supplied our default export template: Avatar Studio Export
- This will export 4 png files for your item’s texture:
- Base Map (Diffuse) - Has the suffix _Tex
- Specular (Gloss in alpha) - Has the suffix _Spec
- Normal - Has the suffix Norm
- Emission (if you’re using it) - Has the suffix _Emit
We’re using a Specular workflow:
- Feel free to use any export settings you’d like, these are the settings that work best for us at Rec Room
- If you would like to use a Metallic workflow, feel free to export those files and our Material will support it
- Underneath the Global settings on the left hand side lists all of the materials from your project, which can be checked / unchecked as needed.
- Clicking on the individual material will give you output settings, which can also be checked / unchecked as needed.
Avatar Studio Starter Kit!
Substance: Rec Room Materials
- When possible, use an RR Material and avoid using Substance Painter preset materials because they’ve been created specifically to match Rec Room’s Art Style and save you time!
Here is an example of the properties you’ll see when using a RR material
- When using a RR material, by default we’ll want to switch the Projection from UV projection to Tri-planar projection.
- You may need to adjust the Tiling value to compensate for the change, something between 1 and 2 tends to work.
- Basic parameters you’ll see in almost every RR material include:
- Base Color, Specular, Gloss, Height Strength (Range), Height Position
- Height Strength is the overall strength of the material’s height detail.
- Height Position is the height of the material relative to other materials on the mesh.
- Base Color, Specular, Gloss, Height Strength (Range), Height Position
The difference between Height Strength and Height Position
- An example of a material with procedural controls is Glitter.
- Because of the complexity of glitter, the material offers a lot more variety when it comes to what you can control within the parameters, such as the option to have multiple color and specular values as well as changing the glitter density, scale, and randomness.
- There are times when you might need to adjust the Tiling / Rotation value in the Fill properties as well as the Scale / Rotation in the Material properties.
- This is fine to do, however try to keep in mind which values you adjusted where in case they end up conflicting with one another. .
Substance: Rec Room Smart Materials
- Currently we have two RR Smart Materials, which can be found in the Assets menu under the recroom library.
- SM_EdgeWear contains Fill layers that utilize the Curvature generator (which uses the Curvature, World Space Normals, and Position baked mesh maps) to create our Rec Room styled edgewear automatically!
- The template has values inputted into the Curvature generator and Blur by default, however these are just a base to start from. You can adjust these as needed for your asset!
The opacity of the Smart Material group is set to 100 for demonstration, feel free to adjust as needed!
- SM_Lighting contains multiple Fill layers set to Overlay that use Light and 3D Linear Gradient generators to create subtle stylized top-down lighting.
- Just as mentioned in the SM_EdgeWear section, feel free to adjust these values as needed for your asset!
The opacity of the Smart Material group is set to 100 for demonstration, feel free to adjust as needed!
Tips and Tricks
Filter effects
- Primary way to add non-handpainted modifications to your material.
- Some Filters that we’ve found particularly helpful:
Bevel, Blur, Blur Slope, Highpass, Histogram Scan, Invert, Mask Outline, Transform
Generator effects
- Makes very strong, additive elements on top of your underlying material based on baked mesh map information.
- Some Generators we’ve found particularly helpful:
3D Linear Gradient, Ambient Occlusion, Curvature, Light, Position, World Space Normals, UV Checker
Fixing normals when using multiple materials
- You may notice if you have more than one material on a mesh that the normals may not appear as you expect.
- For example, below we have a basic Cloth material on the bottom and a decal with a SilkAndSatin material on top. However, the Cloth material is still displaying on the decal image.
- This is because, by default, Height layers are set to Linear Dodge (Add). This can be seen in the Height channel mode. This causes the heights of the two materials to stack additively, which is not what we want in this case.
- For example, below we have a basic Cloth material on the bottom and a decal with a SilkAndSatin material on top. However, the Cloth material is still displaying on the decal image.
- In order for the SilkAndSatin material to take priority over the Cloth material, set its fill layer to Normal.
- In a project with a large amount of materials, doing this process for multiple layers can start to become complicated.
- A way to reduce the amount of layers you need to adjust is to place materials in their own respective Groups with masks.
Because every material used was placed and masked in their own individual Groups (Hat = Cloth, Red Satin = Silk&Satin, Design = Cloth, Ribbons = Silk&Satin), it was not necessary to change the Height layer settings!
3D Path Tool
- It’s a 3D pen tool!
- Use on a Paint effect or Paint layer in the 3D viewport.
- It remembers your path, so it’s non-destructive!
- You can change the Brush settings (such as the Size, Spacing, Rotation, Alpha, etc) and the path will update automatically.
3D Path Tool using the Stitch Brush alpha
3D Path Tool using the Squircle shape alpha