Amazon Game Tech Blog

Lumberyard Substance Integration

by Melissa Austin | on | Permalink | Comments |  Share

Among the many requests we’ve heard from our users since we launched Lumberyard is integration of Allegorithmic’s Substance suite of texture-editing tools. We listened, and are proud to have worked closely with the Allegorithmic team on making it happen. In this post, we’ll explore how Substance can easily be used to add visually stunning graphics to your Lumberyard projects.

Substance allows you to generate textures procedurally, in-engine, without investing in custom code or vast amounts of time creating art files. This opens the door to responsive environments, which change textures according to variables like time or player actions. Normally, creating the textures necessary for responsive environments would require a team of artists, but procedurally generated textures can more efficiently achieve the same result.

By building a range of textures for the same object along a Lumberyard Flow Graph, objects can change appearance in game without re-rendering. This means players can see plants wilt and blacken from fire while metal can tarnish and rust—all thanks to procedural generation by Substance. Other materials, such as wood and vegetation, will look more realistic and have greater visual variety than hand-painted textures.

As Beau Anderson, one of our character artists, puts it:

“Substance Painter has improved the workflow on our team. We are now able to maintain our characters’ assets in Substance Painter as their ‘final destination’ before exporting to Lumberyard. This allows us to easily iterate on the materials in Substance and export the textures directly to a Lumberyard texture format.”

Substance’s authoring tools also help Beau’s team in other areas. “Another workflow improvement is that we’ve been able to almost stay completely out of Photoshop,” he said. “The painting and material tools in Substance Painter are very powerful and allow us to author almost all of the textures there.”

Because Substance creates and modifies files on the fly, texture files can be several times smaller than traditional texture files, which reduces distributable payload and load times. Additionally, textures designed by Substance are fully compatible with Lumberyard’s physically based shading model.

“The fact that the Substance environment is so similar to the physically based rendering engine that we use in Lumberyard allows us to quickly and easily change the look of characters without guessing how they will look in the engine,” Beau said. “What you see is what you get, which is something that character artists have needed for a long time. Artists can be artists, and can spend less time fighting the various texture channels that modern game engines use.”

Lumberyard users also have the ability to import .sbsar files published with Substance Designer, use and modify Substance procedural materials, and visualize work in real time. Users will be able to generate and export textures from Substance materials to use in other assets of the same type.

To enable the Lumberyard Substance Editor tool, go to your Project Settings inside the Project Configurator and select “Enable Packages” on the top right. This will let you enable the Substance extension for your project.

Working with .sbsar files within the Lumberyard Substance Editor grants many advantages over standard workflows. Ceramic tile textures, for example, could have sliders for adjusting the size of tiles, how they’re arranged together, and how they’re lined up. In the editor, you can make changes to these variables and see the results update in real time. To do this, use the editor to import your .sbsar file, which will then generate a .smtl (our file format for Lumberyard Substance materials) and .sub files (Substance textures). When selecting your .sbsar file, you’ll see your Substance file’s exposed settings as well as all the textures that can be generated from it.

From the Lumberyard Substance Editor, you can also change parameters at run-time using Lumberyard’s Flow Graph. As you configure a texture applied to an object in your game world, Lumberyard will show you real-time previews of the end result, both from the editor window and on the actual object. Substance works within Lumberyard as a project extension, which includes the ability to use the Substance API, the Lumberyard Substance Editor plugin, and Flow Graph nodes.

Finally, we’d like to thank the Allegorithmic team for their passion, technical expertise, and responsiveness, all of which have made them a pleasure to work with. We’re hard at work on integration of other third-party tools in Lumberyard, and we’ll have news to share on that front soon.

You can download Lumberyard and enable the Substance Editor now. We look forward to seeing what you can create with it!

Melissa is a Field Technical Artist for Amazon Lumberyard. She helps internal games teams and external customers build better workflow solutions and improve their current workflows. She’s been in the games industry for about five years, with most of her expertise in character and animation pipelines and workflows working closely with artists, designers, and engineers.