Update 6.2.0 brings a couple of new and highly requested shaders like Puddles. It also adds a new system for creating your own custom shaders called Configurable Shaders, and a bunch of new features and improvements to existing shaders.
New Shaders
PBR
Puddles: a puddles variant of the PBR shader with support for different puddle drivers, e.g. based on Depth texture, mask texture or a vertex color. Also includes the rain droplets effect
VFX
Patterns: a collection of procedural patterns you can use to make looping effects for extra background detail
Glitch Screen: a shader aiming to create a glitchy screen effect, inspired by Stray
Toon
UV Discard: a shader that allows you to hide pieces of your mesh using UV Tiles
Transparent PrePass: a variant of the transparent shader with 2-Pass transparency. Useful for things like Hair on avatars
This new system allows you to mix and match all of the features available in the ORL Shader Package to your liking!
To start, right-click anywhere in your project, then Create -> Shader -> orels1 -> Configurable Shader. This will make a new instance of a configurable shader you can set up in the inspector
Give your shader a name
Select the "Lighting Model" you want to use, the default is PBR which should work well for most use-case
Add any modules you want to add
If you want to add something "on top" of an existing shader. E.g. you want the Puddles Shader to Dissolve - then you can select "Standard Puddles" in the Base Shader dropdown and then add a Dissolve module on top
Click Apply!
You can now select the new shader on the material of your choosing
Not every module is compatible with every other module. The Inspector will try to make it clear when you're trying to do something unsupported, but I encourage you to mix and match and see what works! Sometimes things might work better in a particular order, as you're essentially "stacking" effects together. The modules on top of the list are added first
%SetProp() drawer function has been added to the inspector
This allows you to set a property of your material to some specific value based on another value
E.g. you can set the Stencil operation to Keep or Replace depending on whether the Outline is enabled or not (used by the main Toon shader)
This allows you to define a block or piece of the template as optional, and then enable/disable it inside the specific shader module via %TemplateFeatures("MyFeature")
This is now used for the 2-Pass Transparency Toon Shader
Other Changes
Improved Specular Occlusion defaults and overall behavior
Fixed LTCGI path (requires LTCGI update)
New "Rim Mask" option for the Toon's AudioLink module
Added facing param support for making your own shaders (used by Toon)
Fixed a bug where the toon shader would break Unity UI masks
Neon Tube shader now has masking support for the covered part
Matrix variables are now properly supported by the generator
Repack texture button no longer looks ugly at some UI scaling levels 🎉The majority of Toon shader features now support independent tiling options, great for detail textures!
The VRChat Features docs link is now pointing to the correct spot
Added support for exporting generated shaders without CoreRP sampling macros (for external tool compatibility)
Added support for switching between World Space and Local Space for Laser and Shield shaders
Fixed an issue where the texture packer would not read the correct texture color space
Rim Light in Toon shaders now respects the alpha value of a color
Width slider for the Outline is now using a Logarithmic scale for better control at low values
Toon Transparent shader now supports a separate alpha texture
Summary
Update 6.2.0 brings a couple of new and highly requested shaders like Puddles. It also adds a new system for creating your own custom shaders called Configurable Shaders, and a bunch of new features and improvements to existing shaders.
New Shaders
New Features
%SetProp()
drawer function has been added to the inspector%Preset(<path to presets folder>)
drawer function which displays a dropdown of Unity material presets from a particular folder%TemplateFeature(<FeatureName>)
support%TemplateFeatures("MyFeature")
Other Changes
facing
param support for making your own shaders (used by Toon)VFX
variant of Layered ParallaxThis affects the following issues: