PHEW! It’s been a crazy developing-on-a-treadmill couple months, but we’re happy to announce that version 3 of the Alloy Physical Shader Framework is now in open beta! We’re feature-locked now, after extensive testing with a number of our partners over the past couple months and are now shifting our focus towards building out robust documentation and sample assets for all the sweet new features.
If you haven’t been following our thread on the Unity Forums, I’ll bring you up the speed on what this new version constitutes. In short, we’ve built an entirely new system from the ground up. Using many several of the features that are new in Unity 5, Alloy is now more flexible, and comprehensive than ever as a set.
Before jumping into the details of the shaders themselves, I want to mention the two lighting enhancements that have been added with Alloy 3 that I’m truly excited about. The first is Proper lighting falloff also known as Inverse Square. What this means is that lights are appropriately bright near their emission point, but steeply fall off with distance. This is _essential_ in getting a more physical, tangible photo-real look for interior environments. Be aware though that you may need to go about lighting spaces a bit differently now, as the curve is considerably different from Unity’s default.
The second, which I have had no end of fun playing with over the past few months, is Spherical Area Lights, or more specifically, an approximation of them that Epic came up with that’s simply _fantastic_. One doesn’t realize how _wrong_ smooth materials like metal look with impossibly-punctual light highlights until one can actually give them some size. We’ve overridden the component for spot/point lights when you’re using alloy, and added a script component that allows you to easily change light size now. I can’t wait to see what you guys make using this!
Instead of having hundreds of explicit variants, the set now uses a system of toggle-able property groups, allowing you to add features to materials just when you need them, in two simple clicks. These property groups can be added to almost every shader in the set and include:
- Parallax: Add Parallax, or Parallax Occlusion Mapping.
- AO2: Add a second occlusion map using UV0/1. Great for Arch Viz!
- Detail: Add Mul or Mulx2 Detail Mapping with masked color, normal, occlusion.
- Decal: Add an alpha-blended Decal Layer.
- TeamColor: Use masks in a packed texture to tint regions dynamically.
- Emission: Add animated masked emission.
- Rim Emission: Add textured and animated rim lighting.
- Dissolve: Add alpha-cutout style vfx dissolve.
Beyond those features, Alloy now contains a number of base shaders beyond the core that are setup for more exotic effects and use cases. This section of the set is in constant development, and we have plans over the coming months to continue to add to it based on user requests, and from our internal game development projects.
- Car Paint: Deferred-Compatible! With angle-dependent hue and metallic flakes.
- Transmission: SSS-approximation that’s great for cloth, paper, foliage and wax.
- VFX Transition: Two whole materials, which can be burned between with a glowing edge.
- Weighted Blend: Two whole materials, with soft blending and vertex color support.
- Oriented Blend: Two whole materials, with the second blended from the top in world space.
- 4-Splat Terrain: With per-splat, per-terrain PBR params, and detail layer for base-map.
We’ve also built on the success of the beta skin shader in Alloy 2 that many of you loved, and now have a full character suite including:
- Pre-Integrated Skin: With tinted AO, diffuse bump blur, transmission and more.
- Hair Shaders: With anisotropic highlights and several alpha styles.
- Eye Shaders: With Parallax Occlusion Mapped Iris and transmission.
- Eye Occlusion: Designed as a layer over the eye to properly ground it visually
On top of all of this, we now have a full SM5.0 Tessellation set as an optional import. Bumpy goodness for all!
So that’s it for the set overview for now. We’ll be posting videos and filling out our documentation over the month in preparation for GDC. If you’re a current Alloy user and have access to the Unity 5 beta, we’d love to know how the beta treats you. If you’re still evaluating Alloy, and are assembling your pipeline for Unity 5 work, we’d be happy to answer any questions you might have, just give us a at our contact form.
Lastly, for those of you checking out the beta, here’s a quickstart video for you for getting started: