Stylized Grass Shader Documentation

Stylized Grass Shader

Stylized Grass Shader
Version: 1.4.2
Review

2.Compatibilty #

Unity version
The minimum supported version is 2020.3.1 LTS, compatible up to Unity 2023.1.

Support for Unity 2020 will be discontinued next update.

Beta and Alpha versions may work but will not be eligible for support, due to the frequent changes. These versions, as the name implies, are for beta testing only. Once a release version is available, the package will be retested and an update will soon follow to fix/correct any issues.

Scriptable Render Pipeline
Only compatible with the Universal Render Pipeline, minimum required version is 10.3.2. HDRP support will unfortunately not be added, as this practically requires everything to be rebuild from the ground up + indefinite support/maintenance.

Verified versions:

Unity version URP Version Status
2019.4 7.x.x Deprecated
2020.3 10.x.x Verified
2021.1 9.x.x Obsolete
2021.2-3 12.x.x Verified
2022.1 13.x.x Obsolete
2022.2.15+ 14.0.7 Verified
2023.1.7+ 15.0.8 Verified
2023.2 16.0.0 Beta
  • Version 11.x.x (in Unity 2021.1) has no major shader changes, hence it is not being tested on.
  • There is little reason to not use an LTS version, hence earlier versions (eg 2022.1) are no longer involved in testing.

Please note that every URP version release tends to break something. Changes to the URP shader libraries are undocumented, so it takes some time before the package is compatible with newer versions. Unless a maximum version is stated here or on the store page, it is compatible with all higher versions of the URP.

Both Forward- and Deferred Rendering is supported

VR
The shader does not use anything that requires VR-specific code, hence there’s no compatibility concerns. Has been tested using an Oculus Rift where no issues have been encountered.

Note that the shader has an “Alpha to coverage” feature which will greatly reduce aliasing when MSAA is used.

Mobile
Mobile platforms are very sensitive to alpha-tested shaders and overdraw (surfaces rendering over each other) which is very common when it comes to grass. This is one of the main reasons why the shader cannot be optimized for mobile as previous tests have indicated.

As such, mobile hardware is not considered as supported.

WebGL

This uses the OpenGLES 3.0 graphics API, which is supported.

MacOS
Compatible with both the OpenGL and Metal graphics API’s.

Consoles
Tested via a third party on Playstation 4, where no issues were present. Verified to work on Xbox One X (UWP). The shader is similar to the Lit/Simple Lit shader in the URP. This leads to assume the chance of any graphical or compiling issues are minimal.

Shader runs without any issues on Nintendo Switch, but performance is a pressing issue. In general, the platform is very sensitive to alpha tested/cutout materials, which is the biggest performance hit. This is pretty much a requirement for a grass shader, so this limits the amount of grass that can be visible at a time.

DOTS/Hybrid Renderer (v0.5.0+)

Not entirely as of yet, this requires a minor change in the shader file. Since this changes removes support for WebGL, it is not default.

To do so: Open the StylizedGrassShader.shader file and change “3.5” to “4.5” (use Find+Replace in your IDE).

HR has been tested in Unity’s sample project.

Third party integrations

Please see this page.

Yes No Suggest edit
Last updated on August 24, 2023
2 of 2 users found this section helpful
Suggest Edit