Releases: orels1/orels-Unity-Shaders
v7.0.0 Dev 3
This is a pre-release. To access it you will need to enable "Show Pre-Release Packages" in VCC Settings
Changes since 7.0.0 Dev 2
- Fixed compatibility issues with Unity 2019
- The Clouds shader now has a Depth Blending option that allows you to disable the blending even when the depth buffer is present.
- The Clouds shader now respects the transparency of Bottom and Top gradient colors
v7.0.0 Changelog
Summary
Version 7.0.0 adds lots of new features, improvements, and bugfixes. This release was heavily driven by community requests in my Discord, so if you have any suggestions or feedback - please let me know!
New Shaders
- PBR
- Hotspotting: An auto-hotspotting shader that can be used to quickly set up reusable hotspot materials
- AreaLit: A special variant of the main shader with included AreaLit support.
- Decals: A simple Decalery-compatible decals shader.
- VRSL GI: A special variant of the main shader with included VRSL GI support.
New Features
- Extra Passes are now supported by the shader generator!
- This allows you to add extra passes to your shaders without losing all the features of the shader generator (compared to using
%PostPasses
and%PrePasses
) - Read more about it here
- This allows you to add extra passes to your shaders without losing all the features of the shader generator (compared to using
- Standard-Based shaders can now adjust Stencil parameters
- You can now occlude baked specular via Realtime Shadows. This effect is not physically accurate but can be helpful when used on dynamic objects
- Vertex Lights now properly light up objects using Standard shaders. This requires enabling vertex lighting in Advanced Settings
- You can now apply in-shader tonemapping on mobile platforms. This can drastically improve the look of your environments on Quest/Android. See the full docs here
- Toon shader now fully sports baking. Recommended to be used with a directional lightmap for best results
- Toon shader now has support for vertex-color masking of outline thickness
- Toon shader can now use outlines without stencil. This can be useful for adding extra detail
- LTCGI effect brightness can now be clamped to a 0-1 range and has a Maximum Brightness setting
- You can now use BIRP Standard shader-style Detail Albedo mixing. This can be toggled via "Legacy Albedo Mixing" when using the Separated Detail Map mode.
- "Baked Specular Occlusion" slider has been added to the Lightmapping section of all the Standard shaders. This can be used to control how much occlusion is applied to baked specular, e.g. from directional lightmaps or lightprobes.
- Added a "Force Discard" toggle to the UI Sheen shader. This can be used to force-discard transparent pixels of the sprite to avoid white line artifacts on the edges of the sprite.
- Shader Generator now supports
%PostVertex
function blocks in all Templates. This allows you to modify the final output of the Vertex shader, after theVertexBase
function runs. - The VFX Clouds shader got a major update.
- Now supports Directional Light-based shading, using a color ramp (similar to toon shaders).
- Now supports normal recalculation. This provides more accurate shading that follows the extruded shape of the clouds. This effect can be a little noisy, so you can use the Precision slider to adjust it until it looks good.
- You can now use all 8 UV channels by defining
NEED_UV4
/NEED_UV5
/NEED_UV6
/NEED_UV7
in your shader defines. - Configurable shaders can now accept arbitrary modules from anywhere in your project. Using the new "Custom Module" checkbox. This allows you to add modules that are not included in the shader generator.
- Bakery Volumes are now supported in all PBR Shaders. Check out the Lightmapping section for more information.
- The Shader Inspector can now show a Vector2 field for Vector properties. The most basic usage looks like this
%Vector2(Min, Max)
. Check out the relevant Shader Inspector section for more information. - You can now draw a Bakery Volume Assigner field in the Shader Inspector by using
%BakeryVolumeAssigner()
. Check out the relevant Shader Inspector section for more information. - All of the keywords has been limited to their respective shader stages. This should improve shader complication and mesh channel resolving times.
- You can now use a new block type
%CheckedInclude()
to only include a shader include file (e.g. a.cginc
or.hlsl
) if that file actually exists on disk. This is useful when working around conitional includes via keywords that sometimes produce errors in console. Check out the relevant Shader Generator Section for more information. - You can now define a hook point similar to the Template files inside your function blocks. Check out the Template docs for more information.
%ShaderModifiers
as well as all of the%PassModifiers
variants (like%MetaPassModifiers
) now support overriding. This means that values you set in your.orlshader
file will override the values in theFragmentBase
or other files of your lighting model and other dependencies. Check out Shader Modifiers for more information.- Render Type selector. All PBR and VFX shaders now have a render type selector. This allows you to switch between Opaque, Cutout, Transparent, and Fade blending modes. There is also a "Custom" option which allows you to specify your own blending parameters.
- This also introduces a new shader tag
ORL_RenderType
which allows you to enforce a particular value of the render type, prevent the user from changing it. See the Special Tags section for more information. - The dropdown itself uses a new
%RenderType()
drawer function to display the available options and set the relevant properties on the material. See the Render Type section for more information. - This change means that if your render type is one of the preset options - you can use the
ORL_RenderType
tag to enable it without having to set any%ShaderModifiers
or%PassModifiers
yourself. However, you can still use those blocks to override the blending behaviour thanks to the new sorting and overriding mechanisms mentioned above.
- This also introduces a new shader tag
- You can now bake down procedural materials using something like a Hotspotting shader into static textures and PBR materials. Check out the Map Baker section for more information.
- You can now turn off passing normal maps to the GSAA calculation. This can help avoid a "pixelation" effect on high frequency normal maps.
- Toon shaders now properly support Vertex Lights.
- Toon shaders now have a new Raise Minimum Light checkbox which allows you to bump the minimum brightness of your material in environments with no lighting data.
- Toon shaders can now sample lightprobe colors uniformly, which is desireable in some cases.
- Glitch Screen shader now has a separate Transparency texture that can be used to control the alpha channel of the material. It now also supports different render types.
- You can now enable LTCGI on mobile platforms.
Bugfixes
- The tangent normals sign is now properly calculated per-vertex. This should not affect most users
- Specular occlusion now properly occludes reflection probes again. You might need to tune the Specular Occlusion slider to adjust the effect. Please note that the slider has been renamed to "Reflection Probe Occlusion" in the UI
- Fixed off-by-one errors in the channel selector for Albedo and Emission textures
- Shader tags are now de-duplicated automatically, this can help with some issues with Bakery Lightmapper
- Gradient editor now correctly handles "Fixed" blending mode. Thanks @lackofbindings for the fix!
- All UV channels have been changed to use
float4
instead ofhalf4
to avoid precision issues on mobile platforms. - Fixed a number of issues with the Texture Packer when using mixed color spaces.
- Fixed an issue where Triplanar Effects would not map the textures correctly resulting in flipped textures on the sides.
Other Changes
- The channel packer will now default Alpha channel slot to read from the Red channel, as that is the most common use-case
- Updated the Tessellated Displacement shader to use latest shader generator tech. It now has MONOSH and can be used with Configurable shaders.
- "Specular Occlusion" has been renamed to "Reflection Probe Occlusion" to better reflect what is happening under the hood.
- Some properties in the Lightmapping section were moved around to improve usability.
- Dissolve now has configurable Cutoff Range with adjusted defaults. Thanks @lackofbindings for the suggestion!
- The generator now includes a
BiRPtoURP
translation file. Based on Error.mdl's implementation. You can now use it to write code that would be cross-compatible between URP and BiRP. Check out the source file to see whats ...
v7.0.0 Dev 2
This is a pre-release. To access it you will need to enable "Show Pre-Release Packages" in VCC Settings
Changes since 7.0.0 Dev 1
New Shaders
- VRSL GI: A special variant of the main shader with included VRSL GI support.
v7.0.0 Changelog
Summary
Version 7.0.0 adds lots of new features, improvements, and bugfixes. This release was heavily driven by community requests in my Discord, so if you have any suggestions or feedback - please let me know!
New Shaders
- PBR
- Hotspotting: An auto-hotspotting shader that can be used to quickly set up reusable hotspot materials
- AreaLit: A special variant of the main shader with included AreaLit support.
- Decals: A simple Decalery-compatible decals shader.
- VRSL GI: A special variant of the main shader with included VRSL GI support.
New Features
- Extra Passes are now supported by the shader generator!
- This allows you to add extra passes to your shaders without losing all the features of the shader generator (compared to using
%PostPasses
and%PrePasses
) - Read more about it here
- This allows you to add extra passes to your shaders without losing all the features of the shader generator (compared to using
- Standard-Based shaders can now adjust Stencil parameters
- You can now occlude baked specular via Realtime Shadows. This effect is not physically accurate but can be helpful when used on dynamic objects
- Vertex Lights now properly light up objects using Standard shaders. This requires enabling vertex lighting in Advanced Settings
- You can now apply in-shader tonemapping on mobile platforms. This can drastically improve the look of your environments on Quest/Android. See the full docs here
- Toon shader now fully sports baking. Recommended to be used with a directional lightmap for best results
- Toon shader now has support for vertex-color masking of outline thickness
- Toon shader can now use outlines without stencil. This can be useful for adding extra detail
- LTCGI effect brightness can now be clamped to a 0-1 range and has a Maximum Brightness setting
- You can now use BIRP Standard shader-style Detail Albedo mixing. This can be toggled via "Legacy Albedo Mixing" when using the Separated Detail Map mode.
- "Baked Specular Occlusion" slider has been added to the Lightmapping section of all the Standard shaders. This can be used to control how much occlusion is applied to baked specular, e.g. from directional lightmaps or lightprobes.
- Added a "Force Discard" toggle to the UI Sheen shader. This can be used to force-discard transparent pixels of the sprite to avoid white line artifacts on the edges of the sprite.
- Shader Generator now supports
%PostVertex
function blocks in all Templates. This allows you to modify the final output of the Vertex shader, after theVertexBase
function runs. - The VFX Clouds shader got a major update.
- Now supports Directional Light-based shading, using a color ramp (similar to toon shaders).
- Now supports normal recalculation. This provides more accurate shading that follows the extruded shape of the clouds. This effect can be a little noisy, so you can use the Precision slider to adjust it until it looks good.
- You can now use all 8 UV channels by defining
NEED_UV4
/NEED_UV5
/NEED_UV6
/NEED_UV7
in your shader defines. - Configurable shaders can now accept arbitrary modules from anywhere in your project. Using the new "Custom Module" checkbox. This allows you to add modules that are not included in the shader generator.
- Bakery Volumes are now supported in all PBR Shaders. Check out the Lightmapping section for more information.
- The Shader Inspector can now show a Vector2 field for Vector properties. The most basic usage looks like this
%Vector2(Min, Max)
. Check out the relevant Shader Inspector section for more information. - You can now draw a Bakery Volume Assigner field in the Shader Inspector by using
%BakeryVolumeAssigner()
. Check out the relevant Shader Inspector section for more information. - All of the keywords has been limited to their respective shader stages. This should improve shader complication and mesh channel resolving times.
- You can now use a new block type
%CheckedInclude()
to only include a shader include file (e.g. a.cginc
or.hlsl
) if that file actually exists on disk. This is useful when working around conitional includes via keywords that sometimes produce errors in console. Check out the relevant Shader Generator Section for more information. - You can now define a hook point similar to the Template files inside your function blocks. Check out the Template docs for more information.
%ShaderModifiers
as well as all of the%PassModifiers
variants (like%MetaPassModifiers
) now support overriding. This means that values you set in your.orlshader
file will override the values in theFragmentBase
or other files of your lighting model and other dependencies. Check out Shader Modifiers for more information.- Render Type selector. All PBR and VFX shaders now have a render type selector. This allows you to switch between Opaque, Cutout, Transparent, and Fade blending modes. There is also a "Custom" option which allows you to specify your own blending parameters.
- This also introduces a new shader tag
ORL_RenderType
which allows you to enforce a particular value of the render type, prevent the user from changing it. See the Special Tags section for more information. - The dropdown itself uses a new
%RenderType()
drawer function to display the available options and set the relevant properties on the material. See the Render Type section for more information. - This change means that if your render type is one of the preset options - you can use the
ORL_RenderType
tag to enable it without having to set any%ShaderModifiers
or%PassModifiers
yourself. However, you can still use those blocks to override the blending behaviour thanks to the new sorting and overriding mechanisms mentioned above.
- This also introduces a new shader tag
- You can now bake down procedural materials using something like a Hotspotting shader into static textures and PBR materials. Check out the Map Baker section for more information.
- You can now turn off passing normal maps to the GSAA calculation. This can help avoid a "pixelation" effect on high frequency normal maps.
- Toon shaders now properly support Vertex Lights.
- Toon shaders now have a new Raise Minimum Light checkbox which allows you to bump the minimum brightness of your material in environments with no lighting data.
- Toon shaders can now sample lightprobe colors uniformly, which is desireable in some cases.
- Glitch Screen shader now has a separate Transparency texture that can be used to control the alpha channel of the material. It now also supports different render types.
- You can now enable LTCGI on mobile platforms.
Bugfixes
- The tangent normals sign is now properly calculated per-vertex. This should not affect most users
- Specular occlusion now properly occludes reflection probes again. You might need to tune the Specular Occlusion slider to adjust the effect. Please note that the slider has been renamed to "Reflection Probe Occlusion" in the UI
- Fixed off-by-one errors in the channel selector for Albedo and Emission textures
- Shader tags are now de-duplicated automatically, this can help with some issues with Bakery Lightmapper
- Gradient editor now correctly handles "Fixed" blending mode. Thanks @lackofbindings for the fix!
- All UV channels have been changed to use
float4
instead ofhalf4
to avoid precision issues on mobile platforms. - Fixed a number of issues with the Texture Packer when using mixed color spaces.
- Fixed an issue where Triplanar Effects would not map the textures correctly resulting in flipped textures on the sides.
Other Changes
- The channel packer will now default Alpha channel slot to read from the Red channel, as that is the most common use-case
- Updated the Tessellated Displacement shader to use latest shader generator tech. It now has MONOSH and can be used with Configurable shaders.
- "Specular Occlusion" has been renamed to "Reflection Probe Occlusion" to better reflect what is happening under the hood.
- Some properties in the Lightmapping section were moved around to improve usability.
- Dissolve now has configurable Cutoff Range with adjusted defaults. Thanks @lackofbindings for the suggestion!
- The generator now includes a
BiRPtoURP
translation file. Based on Error.mdl's implementation. You can now use it to write code that would be cross-compatible between URP and BiRP. Check out the source file to see whats available! - Depth texture definition is now always included. You no longer need to specify
NEED_DEPTH
in your defines. - Configurable shaders can now be hand edited in co...
v7.0.0 Dev 1
This is a pre-release. To access it you will need to enable "Show Pre-Release Packages" in VCC Settings
This release was bumped up to 7.0.0 due to some changes in lighting code that might require adjustments to your materials.
A separate migration doc will be provided for the final release
Changes since 6.4.0 Dev 12
New Shaders
- AreaLit: A special variant of the main shader with included AreaLit support.
- Decals: A simple Decalery-compatible decals shader.
New Features
- All of the keywords has been limited to their respective shader stages. This should improve shader complication and mesh channel resolving times.
- You can now use a new block type
%CheckedInclude()
to only include a shader include file (e.g. a.cginc
or.hlsl
) if that file actually exists on disk. This is useful when working around conitional includes via keywords that sometimes produce errors in console. Check out the relevant Shader Generator Section for more information. - You can now define a hook point similar to the Template files inside your function blocks. Check out the Template docs for more information.
%ShaderModifiers
as well as all of the%PassModifiers
variants (like%MetaPassModifiers
) now support overriding. This means that values you set in your.orlshader
file will override the values in theFragmentBase
or other files of your lighting model and other dependencies. Check out Shader Modifiers for more information.- Render Type selector. All PBR and VFX shaders now have a render type selector. This allows you to switch between Opaque, Cutout, Transparent, and Fade blending modes. There is also a "Custom" option which allows you to specify your own blending parameters.
- This also introduces a new shader tag
ORL_RenderType
which allows you to enforce a particular value of the render type, prevent the user from changing it. See the Special Tags section for more information. - The dropdown itself uses a new
%RenderType()
drawer function to display the available options and set the relevant properties on the material. See the Render Type section for more information. - This change means that if your render type is one of the preset options - you can use the
ORL_RenderType
tag to enable it without having to set any%ShaderModifiers
or%PassModifiers
yourself. However, you can still use those blocks to override the blending behaviour thanks to the new sorting and overriding mechanisms mentioned above.
- This also introduces a new shader tag
- You can now bake down procedural materials using something like a Hotspotting shader into static textures and PBR materials. Check out the Map Baker section for more information.
- You can now turn off passing normal maps to the GSAA calculation. This can help avoid a "pixelation" effect on high frequency normal maps.
- Toon shaders now properly support Vertex Lights.
- Toon shaders now have a new Raise Minimum Light checkbox which allows you to bump the minimum brightness of your material in environments with no lighting data.
- Toon shaders can now sample lightprobe colors uniformly, which is desireable in some cases.
- Glitch Screen shader now has a separate Transparency texture that can be used to control the alpha channel of the material. It now also supports different render types.
- You can now enable LTCGI on mobile platforms.
Bugfixes
- Fixed an issue where Triplanar Effects would not map the textures correctly resulting in flipped textures on the sides.
Other Changes
- The inspector of the PBR shaders has been simplified and sectioned in a better way. Stencils now exist in their own sections as they are not expected to be changed frequently.
CreateMeshData
function ofMeshData
struct now takes in afacing
parameter to flip the TBN matrix for correct normal directions on meshes with visible backfaces.- Since all shaders can now be Opaque/Transparent/Cutout/Fade, the Cutout shader has been renamed to Foliage and will recieve relevant features in the future
v7.0.0 Changelog
Summary
Version 7.0.0 adds lots of new features, improvements, and bugfixes. This release was heavily driven by community requests in my Discord, so if you have any suggestions or feedback - please let me know!
New Shaders
- PBR
- Hotspotting: An auto-hotspotting shader that can be used to quickly set up reusable hotspot materials
- AreaLit: A special variant of the main shader with included AreaLit support.
- Decals: A simple Decalery-compatible decals shader.
New Features
- Extra Passes are now supported by the shader generator!
- This allows you to add extra passes to your shaders without losing all the features of the shader generator (compared to using
%PostPasses
and%PrePasses
) - Read more about it here
- This allows you to add extra passes to your shaders without losing all the features of the shader generator (compared to using
- Standard-Based shaders can now adjust Stencil parameters
- You can now occlude baked specular via Realtime Shadows. This effect is not physically accurate but can be helpful when used on dynamic objects
- Vertex Lights now properly light up objects using Standard shaders. This requires enabling vertex lighting in Advanced Settings
- You can now apply in-shader tonemapping on mobile platforms. This can drastically improve the look of your environments on Quest/Android. See the full docs here
- Toon shader now fully sports baking. Recommended to be used with a directional lightmap for best results
- Toon shader now has support for vertex-color masking of outline thickness
- Toon shader can now use outlines without stencil. This can be useful for adding extra detail
- LTCGI effect brightness can now be clamped to a 0-1 range and has a Maximum Brightness setting
- You can now use BIRP Standard shader-style Detail Albedo mixing. This can be toggled via "Legacy Albedo Mixing" when using the Separated Detail Map mode.
- "Baked Specular Occlusion" slider has been added to the Lightmapping section of all the Standard shaders. This can be used to control how much occlusion is applied to baked specular, e.g. from directional lightmaps or lightprobes.
- Added a "Force Discard" toggle to the UI Sheen shader. This can be used to force-discard transparent pixels of the sprite to avoid white line artifacts on the edges of the sprite.
- Shader Generator now supports
%PostVertex
function blocks in all Templates. This allows you to modify the final output of the Vertex shader, after theVertexBase
function runs. - The VFX Clouds shader got a major update.
- Now supports Directional Light-based shading, using a color ramp (similar to toon shaders).
- Now supports normal recalculation. This provides more accurate shading that follows the extruded shape of the clouds. This effect can be a little noisy, so you can use the Precision slider to adjust it until it looks good.
- You can now use all 8 UV channels by defining
NEED_UV4
/NEED_UV5
/NEED_UV6
/NEED_UV7
in your shader defines. - Configurable shaders can now accept arbitrary modules from anywhere in your project. Using the new "Custom Module" checkbox. This allows you to add modules that are not included in the shader generator.
- Bakery Volumes are now supported in all PBR Shaders. Check out the Lightmapping section for more information.
- The Shader Inspector can now show a Vector2 field for Vector properties. The most basic usage looks like this
%Vector2(Min, Max)
. Check out the relevant Shader Inspector section for more information. - You can now draw a Bakery Volume Assigner field in the Shader Inspector by using
%BakeryVolumeAssigner()
. Check out the relevant Shader Inspector section for more information. - All of the keywords has been limited to their respective shader stages. This should improve shader complication and mesh channel resolving times.
- You can now use a new block type
%CheckedInclude()
to only include a shader include file (e.g. a.cginc
or.hlsl
) if that file actually exists on disk. This is useful when working around conitional includes via keywords that sometimes produce errors in console. Check out the relevant Shader Generator Section for more information. - You can now define a hook point similar to the Template files inside your function blocks. Check out the Template docs for more information.
%ShaderModifiers
as well as all of the%PassModifiers
variants (like%MetaPassModifiers
) now support overriding. This means that values you set in your.orlshader
file will override the values in theFragmentBase
or other files of your lighting model and other dependencies. Check out Shader Modifiers for more information.- Render Type selector. All PBR and VFX shaders now have a render type selector. This allows you to switch between Opaque, Cutout, Transparent, and Fade blending modes. There is also a "Custom" option which allows you to specify your own blending parameters.
- This also introduces a new shader tag ...
v6.4.0 Dev 12
This is a pre-release. To access it you will need to enable "Show Pre-Release Packages" in VCC Settings
Changes since Dev 11
- Hotspotting Shader got even more slight tweaks and improvements to allow for better control
- You can now rotate the main hostpotting masks to align them better with the material below
- Bakery Volumes are now supported
- Configurable Shaders now support arbitrary modules using the "Custom Modules" checkbox
- Visual Layout of
%RemapSlider()
and%CombineWith()
Drawer Functions has been improved %Vector2()
drawer function has been added to allow displaying Vector2 field for a Vector-type property- A URP compatibility include is now added by default to all shaders. This will help future URP support. All of included code has been updated to use methods in this include instead of relying on BIRP-specifics
6.4.0 Changelog
Summary
Update 6.4.0 brings a plethora of new features, improvements, and bugfixes. There is no particular focus in this update. Please enjoy!
New Shaders
- PBR
- Hotspotting: An auto-hotspotting shader that can be used to quickly set up reusable hotspot materials
New Features
- Extra Passes are now supported by the shader generator!
- This allows you to add extra passes to your shaders without losing all the features of the shader generator (compared to using
%PostPasses
and%PrePasses
) - Read more about it here
- This allows you to add extra passes to your shaders without losing all the features of the shader generator (compared to using
- Standard-Based shaders can now adjust Stencil parameters
- You can now occlude baked specular via Realtime Shadows. This effect is not physically accurate but can be helpful when used on dynamic objects
- Vertex Lights now properly light up objects using Standard shaders. This requires enabling vertex lighting in Advanced Settings
- You can now apply in-shader tonemapping on mobile platforms. This can drastically improve the look of your environments on Quest/Android. See the full docs here
- Toon shader now fully sports baking. Recommended to be used with a directional lightmap for best results
- Toon shader now has support for vertex-color masking of outline thickness
- Toon shader can now use outlines without stencil. This can be useful for adding extra detail
- LTCGI effect brightness can now be clamped to a 0-1 range and has a Maximum Brightness setting
- You can now use BIRP Standard shader-style Detail Albedo mixing. This can be toggled via "Legacy Albedo Mixing" when using the Separated Detail Map mode.
- "Baked Specular Occlusion" slider has been added to the Lightmapping section of all the Standard shaders. This can be used to control how much occlusion is applied to baked specular, e.g. from directional lightmaps or lightprobes.
- Added a "Force Discard" toggle to the UI Sheen shader. This can be used to force-discard transparent pixels of the sprite to avoid white line artifacts on the edges of the sprite.
- Shader Generator now supports
%PostVertex
function blocks in all Templates. This allows you to modify the final output of the Vertex shader, after theVertexBase
function runs. - The VFX Clouds shader got a major update.
- Now supports Directional Light-based shading, using a color ramp (similar to toon shaders).
- Now supports normal recalculation. This provides more accurate shading that follows the extruded shape of the clouds. This effect can be a little noisy, so you can use the Precision slider to adjust it until it looks good.
- You can now use all 8 UV channels by defining
NEED_UV4
/NEED_UV5
/NEED_UV6
/NEED_UV7
in your shader defines. - Configurable shaders can now accept arbitrary modules from anywhere in your project. Using the new "Custom Module" checkbox. This allows you to add modules that are not included in the shader generator.
- Bakery Volumes are now supported in all PBR Shaders. Check out the Lightmapping section for more information.
- The Shader Inspector can now show a Vector2 field for Vector properties. The most basic usage looks like this
%Vector2(Min, Max)
. Check out the relevant Shader Inspector section for more information. - You can now draw a Bakery Volume Assigner field in the Shader Inspector by using
%BakeryVolumeAssigner()
. Check out the relevant Shader Inspector section for more information.
Bugfixes
- The tangent normals sign is now properly calculated per-vertex. This should not affect most users
- Specular occlusion now properly occludes reflection probes again. You might need to tune the Specular Occlusion slider to adjust the effect. Please note that the slider has been renamed to "Reflection Probe Occlusion" in the UI
- Fixed off-by-one errors in the channel selector for Albedo and Emission textures
- Shader tags are now de-duplicated automatically, this can help with some issues with Bakery Lightmapper
- Gradient editor now correctly handles "Fixed" blending mode. Thanks @lackofbindings for the fix!
- All UV channels have been changed to use
float4
instead ofhalf4
to avoid precision issues on mobile platforms.
Other Changes
- The channel packer will now default Alpha channel slot to read from the Red channel, as that is the most common use-case
- Updated the Tessellated Displacement shader to use latest shader generator tech. It now has MONOSH and can be used with Configurable shaders.
- "Specular Occlusion" has been renamed to "Reflection Probe Occlusion" to better reflect what is happening under the hood.
- Some properties in the Lightmapping section were moved around to improve usability.
- Dissolve now has configurable Cutoff Range with adjusted defaults. Thanks @lackofbindings for the suggestion!
- The generator now includes a
BiRPtoURP
translation file. Based on Error.mdl's implementation. You can now use it to write code that would be cross-compatible between URP and BiRP. Check out the source file to see whats available! - Depth texture definition is now always included. You no longer need to specify
NEED_DEPTH
in your defines. - Configurable shaders can now be hand edited in code. This allows you to use the UI to set up the basic shader and then use code to edit it further. However, this makes it no longer editable via UI. A relevant warning will be shown in the inspector and the editing UI will be locked. You can use a "Force Reset" button to clear your changes and sync the shader back to the configuration.
%RemapSlider()
andCombineWith()
functions have improved layout that is more consistent with other properties.
Full Changelog: v6.3.0...v6.4.0-dev.12
v6.4.0 Dev 11
This is a pre-release. To access it you will need to enable "Show Pre-Release Packages" in VCC Settings
Changes since Dev 10
- Hotspotting shader got a set of major improvements
- Added controls for dirt blending, including different blend modes and overall blend intensity adjustment
- Added controls for amount of influence the dirt mask has over the details blending, including different blend modes
- Detail normals can now fully replace base normals instead of being blended together
- Improved inspector layout
6.4.0 Changelog
Summary
Update 6.4.0 brings a plethora of new features, improvements, and bugfixes. There is no particular focus in this update. Please enjoy!
New Shaders
- PBR
- Hotspotting: An auto-hotspotting shader that can be used to quickly set up reusable hotspot materials
New Features
- Extra Passes are now supported by the shader generator!
- This allows you to add extra passes to your shaders without losing all the features of the shader generator (compared to using
%PostPasses
and%PrePasses
) - Read more about it here
- This allows you to add extra passes to your shaders without losing all the features of the shader generator (compared to using
- Standard-Based shaders can now adjust Stencil parameters
- You can now occlude baked specular via Realtime Shadows. This effect is not physically accurate but can be helpful when used on dynamic objects
- Vertex Lights now properly light up objects using Standard shaders. This requires enabling vertex lighting in Advanced Settings
- You can now apply in-shader tonemapping on mobile platforms. This can drastically improve the look of your environments on Quest/Android. See the full docs here
- Toon shader now fully sports baking. Recommended to be used with a directional lightmap for best results
- Toon shader now has support for vertex-color masking of outline thickness
- Toon shader can now use outlines without stencil. This can be useful for adding extra detail
- LTCGI effect brightness can now be clamped to a 0-1 range and has a Maximum Brightness setting
- You can now use BIRP Standard shader-style Detail Albedo mixing. This can be toggled via "Legacy Albedo Mixing" when using the Separated Detail Map mode.
- "Baked Specular Occlusion" slider has been added to the Lightmapping section of all the Standard shaders. This can be used to control how much occlusion is applied to baked specular, e.g. from directional lightmaps or lightprobes.
- Added a "Force Discard" toggle to the UI Sheen shader. This can be used to force-discard transparent pixels of the sprite to avoid white line artifacts on the edges of the sprite.
- Shader Generator now supports
%PostVertex
function blocks in all Templates. This allows you to modify the final output of the Vertex shader, after theVertexBase
function runs. - The VFX Clouds shader got a major update.
- Now supports Directional Light-based shading, using a color ramp (similar to toon shaders).
- Now supports normal recalculation. This provides more accurate shading that follows the extruded shape of the clouds. This effect can be a little noisy, so you can use the Precision slider to adjust it until it looks good.
- You can now use all 8 UV channels by defining
NEED_UV4
/NEED_UV5
/NEED_UV6
/NEED_UV7
in your shader defines.
Bugfixes
- The tangent normals sign is now properly calculated per-vertex. This should not affect most users
- Specular occlusion now properly occludes reflection probes again. You might need to tune the Specular Occlusion slider to adjust the effect. Please note that the slider has been renamed to "Reflection Probe Occlusion" in the UI
- Fixed off-by-one errors in the channel selector for Albedo and Emission textures
- Shader tags are now de-duplicated automatically, this can help with some issues with Bakery Lightmapper
- Gradient editor now correctly handles "Fixed" blending mode. Thanks @lackofbindings for the fix!
- All UV channels have been changed to use
float4
instead ofhalf4
to avoid precision issues on mobile platforms.
Other Changes
- The channel packer will now default Alpha channel slot to read from the Red channel, as that is the most common use-case
- Updated the Tessellated Displacement shader to use latest shader generator tech. It now has MONOSH and can be used with Configurable shaders.
- "Specular Occlusion" has been renamed to "Reflection Probe Occlusion" to better reflect what is happening under the hood.
- Some properties in the Lightmapping section were moved around to improve usability.
- Dissolve now has configurable Cutoff Range with adjusted defaults. Thanks @lackofbindings for the suggestion!
Full Changelog: v6.3.0...v6.4.0-dev.11
v6.4.0 Dev 10
This is a pre-release. To access it you will need to enable "Show Pre-Release Packages" in VCC Settings
This is a release candidate. Everything goes well - this version will go live as the final v6.4.0
Changes since Dev 9
- Extra Passes are now supported by the shader generator!
- This allows you to add extra passes to your shaders without losing all the features of the shader generator (compared to using
%PostPasses
and%PrePasses
) - Read more about it here
- This allows you to add extra passes to your shaders without losing all the features of the shader generator (compared to using
- You can now use all 8 UV channels by defining
NEED_UV4
/NEED_UV5
/NEED_UV6
/NEED_UV7
in your shader defines. - Fixed an issue where shaders would not import correctly on non-windows system when using VPM
6.4.0 Changelog
Summary
Update 6.4.0 brings a plethora of new features, improvements, and bugfixes. There is no particular focus in this update. Please enjoy!
New Shaders
- PBR
- Hotspotting: An auto-hotspotting shader that can be used to quickly set up reusable hotspot materials
New Features
- Extra Passes are now supported by the shader generator!
- This allows you to add extra passes to your shaders without losing all the features of the shader generator (compared to using
%PostPasses
and%PrePasses
) - Read more about it here
- This allows you to add extra passes to your shaders without losing all the features of the shader generator (compared to using
- Standard-Based shaders can now adjust Stencil parameters
- You can now occlude baked specular via Realtime Shadows. This effect is not physically accurate but can be helpful when used on dynamic objects
- Vertex Lights now properly light up objects using Standard shaders. This requires enabling vertex lighting in Advanced Settings
- You can now apply in-shader tonemapping on mobile platforms. This can drastically improve the look of your environments on Quest/Android. See the full docs here
- Toon shader now fully sports baking. Recommended to be used with a directional lightmap for best results
- Toon shader now has support for vertex-color masking of outline thickness
- Toon shader can now use outlines without stencil. This can be useful for adding extra detail
- LTCGI effect brightness can now be clamped to a 0-1 range and has a Maximum Brightness setting
- You can now use BIRP Standard shader-style Detail Albedo mixing. This can be toggled via "Legacy Albedo Mixing" when using the Separated Detail Map mode.
- "Baked Specular Occlusion" slider has been added to the Lightmapping section of all the Standard shaders. This can be used to control how much occlusion is applied to baked specular, e.g. from directional lightmaps or lightprobes.
- Added a "Force Discard" toggle to the UI Sheen shader. This can be used to force-discard transparent pixels of the sprite to avoid white line artifacts on the edges of the sprite.
- Shader Generator now supports
%PostVertex
function blocks in all Templates. This allows you to modify the final output of the Vertex shader, after theVertexBase
function runs. - The VFX Clouds shader got a major update.
- Now supports Directional Light-based shading, using a color ramp (similar to toon shaders).
- Now supports normal recalculation. This provides more accurate shading that follows the extruded shape of the clouds. This effect can be a little noisy, so you can use the Precision slider to adjust it until it looks good.
- You can now use all 8 UV channels by defining
NEED_UV4
/NEED_UV5
/NEED_UV6
/NEED_UV7
in your shader defines.
Bugfixes
- The tangent normals sign is now properly calculated per-vertex. This should not affect most users
- Specular occlusion now properly occludes reflection probes again. You might need to tune the Specular Occlusion slider to adjust the effect. Please note that the slider has been renamed to "Reflection Probe Occlusion" in the UI
- Fixed off-by-one errors in the channel selector for Albedo and Emission textures
- Shader tags are now de-duplicated automatically, this can help with some issues with Bakery Lightmapper
- Gradient editor now correctly handles "Fixed" blending mode. Thanks @lackofbindings for the fix!
- All UV channels have been changed to use
float4
instead ofhalf4
to avoid precision issues on mobile platforms.
Other Changes
- The channel packer will now default Alpha channel slot to read from the Red channel, as that is the most common use-case
- Updated the Tessellated Displacement shader to use latest shader generator tech. It now has MONOSH and can be used with Configurable shaders.
- "Specular Occlusion" has been renamed to "Reflection Probe Occlusion" to better reflect what is happening under the hood.
- Some properties in the Lightmapping section were moved around to improve usability.
- Dissolve now has configurable Cutoff Range with adjusted defaults. Thanks @lackofbindings for the suggestion!
Full Changelog: v6.3.0...v6.4.0-dev.10
v6.4.0 Dev 9
This is a pre-release. To access it you will need to enable "Show Pre-Release Packages" in VCC Settings
This is a release candidate. Everything goes well - this version will go live as the final v6.4.0
Changes since Dev 8
- Gradient editor now correctly handles "Fixed" blending mode. Thanks @lackofbindings for the fix!
- Dissolve now has configurable Cutoff Range with adjusted defaults. Thanks @lackofbindings for the suggestion!
- Clouds shader normal recalculation has been drastically improved by using an in-shader bilinear filtering implementation (instead of relying on the 8-bit hardware version)
6.4.0 Changelog
Summary
Update 6.4.0 brings a plethora of new features, improvements, and bugfixes. There is no particular focus in this update. Please enjoy!
New Shaders
- PBR
- Hotspotting: An auto-hotspotting shader that can be used to quickly set up reusable hotspot materials
New Features
- Standard-Based shaders can now adjust Stencil parameters
- You can now occlude baked specular via Realtime Shadows. This effect is not physically accurate but can be helpful when used on dynamic objects
- Vertex Lights now properly light up objects using Standard shaders. This requires enabling vertex lighting in Advanced Settings
- You can now apply in-shader tonemapping on mobile platforms. This can drastically improve the look of your environments on Quest/Android. See the full docs here
- Toon shader now fully sports baking. Recommended to be used with a directional lightmap for best results
- Toon shader now has support for vertex-color masking of outline thickness
- Toon shader can now use outlines without stencil. This can be useful for adding extra detail
- LTCGI effect brightness can now be clamped to a 0-1 range and has a Maximum Brightness setting
- You can now use BIRP Standard shader-style Detail Albedo mixing. This can be toggled via "Legacy Albedo Mixing" when using the Separated Detail Map mode.
- "Baked Specular Occlusion" slider has been added to the Lightmapping section of all the Standard shaders. This can be used to control how much occlusion is applied to baked specular, e.g. from directional lightmaps or lightprobes.
- Added a "Force Discard" toggle to the UI Sheen shader. This can be used to force-discard transparent pixels of the sprite to avoid white line artifacts on the edges of the sprite.
- Shader Generator now supports
%PostVertex
function blocks in all Templates. This allows you to modify the final output of the Vertex shader, after theVertexBase
function runs. - The VFX Clouds shader got a major update.
- Now supports Directional Light-based shading, using a color ramp (similar to toon shaders).
- Now supports normal recalculation. This provides more accurate shading that follows the extruded shape of the clouds. This effect can be a little noisy, so you can use the Precision slider to adjust it until it looks good.
Bugfixes
- The tangent normals sign is now properly calculated per-vertex. This should not affect most users
- Specular occlusion now properly occludes reflection probes again. You might need to tune the Specular Occlusion slider to adjust the effect. Please note that the slider has been renamed to "Reflection Probe Occlusion" in the UI
- Fixed off-by-one errors in the channel selector for Albedo and Emission textures
- Shader tags are now de-duplicated automatically, this can help with some issues with Bakery Lightmapper
- Gradient editor now correctly handles "Fixed" blending mode. Thanks @lackofbindings for the fix!
Other Changes
- The channel packer will now default Alpha channel slot to read from the Red channel, as that is the most common use-case
- Updated the Tessellated Displacement shader to use latest shader generator tech. It now has MONOSH and can be used with Configurable shaders.
- "Specular Occlusion" has been renamed to "Reflection Probe Occlusion" to better reflect what is happening under the hood.
- Some properties in the Lightmapping section were moved around to improve usability.
- Dissolve now has configurable Cutoff Range with adjusted defaults. Thanks @lackofbindings for the suggestion!
Full Changelog: v6.3.0...v6.4.0-dev.9
v6.4.0 Dev 8
This is a pre-release. To access it you will need to enable "Show Pre-Release Packages" in VCC Settings
This is a release candidate. Everything goes well - this version will go live as the final v6.4.0
Changes since Dev 7
- Added a "Force Discard" toggle to the UI Sheen shader. This can be used to force-discard transparent pixels of the sprite to avoid white line artifacts on the edges of the sprite.
- Shader Generator now supports
%PostVertex
function blocks in all Templates. This allows you to modify the final output of the Vertex shader, after theVertexBase
function runs. - "Specular Occlusion" has been renamed to "Reflection Probe Occlusion" to better reflect what is happening under the hood.
- Some properties in the Lightmapping section were moved around to improve usability.
- Clouds shader has been updated with support for Directional Light-based shading with normals recalculation.
6.4.0 Changelog
Summary
Update 6.4.0 brings a plethora of new features, improvements, and bugfixes. There is no particular focus in this update. Please enjoy!
New Shaders
- PBR
- Hotspotting: An auto-hotspotting shader that can be used to quickly set up reusable hotspot materials
New Features
- Standard-Based shaders can now adjust Stencil parameters
- You can now occlude baked specular via Realtime Shadows. This effect is not physically accurate but can be helpful when used on dynamic objects
- Vertex Lights now properly light up objects using Standard shaders. This requires enabling vertex lighting in Advanced Settings
- You can now apply in-shader tonemapping on mobile platforms. This can drastically improve the look of your environments on Quest/Android. See the full docs here
- Toon shader now fully sports baking. Recommended to be used with a directional lightmap for best results
- Toon shader now has support for vertex-color masking of outline thickness
- Toon shader can now use outlines without stencil. This can be useful for adding extra detail
- LTCGI effect brightness can now be clamped to a 0-1 range and has a Maximum Brightness setting
- You can now use BIRP Standard shader-style Detail Albedo mixing. This can be toggled via "Legacy Albedo Mixing" when using the Separated Detail Map mode.
- "Baked Specular Occlusion" slider has been added to the Lightmapping section of all the Standard shaders. This can be used to control how much occlusion is applied to baked specular, e.g. from directional lightmaps or lightprobes.
- Added a "Force Discard" toggle to the UI Sheen shader. This can be used to force-discard transparent pixels of the sprite to avoid white line artifacts on the edges of the sprite.
- Shader Generator now supports
%PostVertex
function blocks in all Templates. This allows you to modify the final output of the Vertex shader, after theVertexBase
function runs. - The VFX Clouds shader got a major update.
- Now supports Directional Light-based shading, using a color ramp (similar to toon shaders).
- Now supports normal recalculation. This provides more accurate shading that follows the extruded shape of the clouds. This effect can be a little noisy, so you can use the Precision slider to adjust it until it looks good.
Bugfixes
- The tangent normals sign is now properly calculated per-vertex. This should not affect most users
- Specular occlusion now properly occludes reflection probes again. You might need to tune the Specular Occlusion slider to adjust the effect. Please note that the slider has been renamed to "Reflection Probe Occlusion" in the UI
- Fixed off-by-one errors in the channel selector for Albedo and Emission textures
- Shader tags are now de-duplicated automatically, this can help with some issues with Bakery Lightmapper
Other Changes
- The channel packer will now default Alpha channel slot to read from the Red channel, as that is the most common use-case
- Updated the Tessellated Displacement shader to use latest shader generator tech. It now has MONOSH and can be used with Configurable shaders.
- "Specular Occlusion" has been renamed to "Reflection Probe Occlusion" to better reflect what is happening under the hood.
- Some properties in the Lightmapping section were moved around to improve usability.
Full Changelog: v6.3.0...v6.4.0-dev.8
v6.4.0 Dev 7
This is a pre-release. To access it you will need to enable "Show Pre-Release Packages" in VCC Settings
This is a release candidate. Everything goes well - this version will go live as the final v6.4.0
Changes since Dev 6
- "Direct Specular Occlusion" slider has been added to the Lightmapping section of all the Standard shaders. This can be used to control how much occlusion is applied to baked specular, e.g. from directional lightmaps or lightprobes.
6.4.0 Changelog
Update 6.4.0 focuses on improving the current feature set, quality-of-life changes, and fixing bugs
New Shaders
- PBR
- Hotspotting: An auto-hotspotting shader that can be used to quickly set up reusable hotspot materials
New Features
- Standard-Based shaders can now adjust Stencil parameters
- You can now occlude baked specular via Realtime Shadows. This effect is not physically accurate but can be helpful when used on dynamic objects
- Vertex Lights now properly light up objects using Standard shaders. This requires enabling vertex lighting in Advanced Settings
- You can now apply in-shader tonemapping on mobile platforms. This can drastically improve the look of your environments on Quest/Android. See the full docs here
- Toon shader now fully sports baking. Recommended to be used with a directional lightmap for best results
- Toon shader now has support for vertex-color masking of outline thickness
- Toon shader can now use outlines without stencil. This can be useful for adding extra detail
- LTCGI effect brightness can now be clamped to a 0-1 range and has a Maximum Brightness setting
- You can now use BIRP Standard shader-style Detail Albedo mixing. This can be toggled via "Legacy Albedo Mixing" when using the Separated Detail Map mode.
- "Direct Specular Occlusion" slider has been added to the Lightmapping section of all the Standard shaders. This can be used to control how much occlusion is applied to baked specular, e.g. from directional lightmaps or lightprobes.
Bugfixes
- The tangent normals sign is now properly calculated per-vertex. This should not affect most users
- Specular occlusion now properly occludes reflection probes again. You might need to tune the Specular Occlusion slider to adjust the effect
- Fixed off-by-one errors in the channel selector for Albedo and Emission textures
- Shader tags are now de-duplicated automatically, this can help with some issues with Bakery Lightmapper
Other Changes
- The channel packer will now default Alpha channel slot to read from the Red channel, as that is the most common use-case
- Updated the Tessellated Displacement shader to use latest shader generator tech. It now has MONOSH and can be used with Configurable shaders.
Full Changelog: v6.3.0...v6.4.0-dev.7
v6.4.0 Dev 6
This is a pre-release. To access it you will need to enable "Show Pre-Release Packages" in VCC Settings
This is a release candidate. Everything goes well - this version will go live as the final v6.4.0
Changes since Dev 5
- Fixed issues with 2019 compatibility
6.4.0 Changelog
Update 6.4.0 focuses on improving the current feature set, quality-of-life changes, and fixing bugs
New Shaders
- PBR
- Hotspotting: An auto-hotspotting shader that can be used to quickly set up reusable hotspot materials
New Features
- Standard-Based shaders can now adjust Stencil parameters
- You can now occlude baked specular via Realtime Shadows. This effect is not physically accurate but can be helpful when used on dynamic objects
- Vertex Lights now properly light up objects using Standard shaders. This requires enabling vertex lighting in Advanced Settings
- You can now apply in-shader tonemapping on mobile platforms. This can drastically improve the look of your environments on Quest/Android. See the full docs here
- Toon shader now fully sports baking. Recommended to be used with a directional lightmap for best results
- Toon shader now has support for vertex-color masking of outline thickness
- Toon shader can now use outlines without stencil. This can be useful for adding extra detail
- LTCGI effect brightness can now be clamped to a 0-1 range and has a Maximum Brightness setting
- You can now use BIRP Standard shader-style Detail Albedo mixing. This can be toggled via "Legacy Albedo Mixing" when using the Separated Detail Map mode.
- Laser shader can now interpret trail vertex color as Linear instead of sRGB
Bugfixes
- The tangent normals sign is now properly calculated per-vertex. This should not affect most users
- Specular occlusion now properly occludes reflection probes again. You might need to tune the Specular Occlusion slider to adjust the effect
- Fixed off-by-one errors in the channel selector for Albedo and Emission textures
- Shader tags are now de-duplicated automatically, this can help with some issues with Bakery Lightmapper
Other Changes
- The channel packer will now default Alpha channel slot to read from the Red channel, as that is the most common use-case
Full Changelog: v6.3.0...v6.4.0-dev.6