New: Nature Shaders

Interaction, Wind, Dynamic Masking, and Better Shading for your vegetation.

Learn more
This page may not work correctly inside the Unity editor. Open in browser

Quality Settings

Requires the full Nature Shaders package.

Not supported in Nature Shaders Essentials. (Learn more)

Nature Shaders comes with a few different settings that you can use to adjust the shading quality. These can be used for an in-game settings menu, or to change the quality depending on the platform.

Global Quality Settings

The Global Quality Settings are set on a global level, and are applied to all materials in your project. They can be changed at runtime.

The global settings are set via script, using the QualitySettings class:

using VisualDesignCafe.Nature;

// Access the different sections using the static properties.
QualitySettings.Interaction
QualitySettings.Overlay

// The changes won't update until they are explicitly applied.
QualitySettings.Apply();

Interaction

Interaction can be enabled/disabled through code and the resolution can be adjusted to control the memory usage.

Enabled
Enable or disable interaction for all materials in the project. Useful to disable interaction on low-end devices.
// Default:
QualitySettings.Interaction.Enabled = true;
Resolution
The resolution that is used for the internal render texture that stores interaction data. This setting is combined with the Accuracy setting to calculate the maximum distance at which interaction is applied.
// Default:
QualitySettings.Interaction.Resolution = 1024;

Example

With a resolution of 2048 and an accuracy of 5, the effective range is 2048/5 = 410 units. Any vegetation further away than 410 units will not interact with objects.

Accuracy
The accuracy of the interaction. Uses pixels per unit as measurement.
// Default:
QualitySettings.Interaction.Accuracy = 5.0f;

Overlay

The resolution for the overlay can be adjusted to control the memory usage. It can not be enabled/disabled on a global level, this to maintain consistency for material colors and to reduce the number of global shader keywords that Nature Shaders uses.

// Default:
QualitySettings.Overlay.Enabled = true;
Resolution
The resolution that is used for the internal render texture that stores overlay data. This setting is combined with the Accuracy setting to calculate the maximum distance at which the overlay is applied.
// Default:
QualitySettings.Overlay.Resolution = 2048;

Example

With a resolution of 2048 and an accuracy of 4, the effective range is 2048/4 = 512 units. Any vegetation further away than 512 units will not receive overlay data.

Accuracy
The accuracy of the interaction. Uses pixels per unit as measurement.
// Default:
QualitySettings.Overlay.Accuracy = 4.0f;

Material Quality Settings

Some settings can be changed for each material independently to optimize performance. These settings are adjusted in the Material Editor by selecting a material.

Lighting Quality
Adjust the Lighting Quality to change how this material is shaded.
High: uses Physically Based Shading, similar to the Lit or Standard shader.
Low: uses a Blinn-Phong lighting model.
Note: This setting is not supported in HDRP or when using deferred rendering. This is because deferred rendering pipelines do not support using custom lighting.
Specular Highlights

Disable to remove specular highlights and environment reflections from the material. This bypasses all specular calculations in the shader, and can be a performance improvement for materials that have close to no specular reflections.

Note: This setting is not supported in HDRP or when using deferred rendering. This is because deferred rendering pipelines do not support using custom lighting.

Interaction
Disable this section to completely disable interaction for the material.
Wind
Disable this section to completely disable wind for the material.
Translucency
Disable this section to completely disable translucency for the material.
Was this article helpful?
1 out of 1 found this helpful