shown in other instead.
A grass_impostor_base material is used for vegetation impostors. It can be applied to grass objects that, in turn, can be used as impostors for trees.
Auxiliary rendering pass is used for writing an additional texture into an auxiliary color buffer. Detail information on the pass can be found in the Rendering Sequence article. The pass can be used for custom post-process effects.
Noise activates spatial color noise texture, so the grass is colored according to it. The noise texture can add irregularity to the color of the grass field or it can color the grass.
Ambient Occlusion enables the ambient occlusion that sets shading arising from the ground to the top of the grass blade.
AO Map enables the ambient occlusion effect. This effect is used to modulate global environment illumination using baked shadows from environment probes. Enabling the option activates the ambient occlusion texture.
Normal Map enables the normal map for the grass impostors. This option is used to fake the relief on the impostor surface.
Shading Map enables the shading texture for the material.
Microfiber Map enables using of the Alpha channel of the shading texture as a microfiber map.
Specular Map enables using of the B channel of the shading texture as a specular reflection intensity map.
Translucent Map enables the translucence effect and activates an additional translucent texture.
Depth Map activates an additional depth texture.
Screen Aligned sets the impostor parallel to the screen plane. The option should be enabled for correct rotation of impostors when the camera looks down. We recommend you to use this option only when impostor rotation is required, as in other cases it may lead to visual artifacts.
Lerp enables smooth linear interpolation of sprites when the camera rotates around the object. This state should be enabled, if the grabbed impostor textures store low number of frames (i.e. the Phi and Theta values are small).
The following options are available:
- Disabled - linear interpolation between the sprites is disabled.
- Lerp Unoptimized - legacy linear interpolation mode (interpolation is calculated during the depth pre-pass, making it three times slower than the mode below).
- Lerp With Separate Opacity Map - optimized linear interpolation mode using an additional Opacity Lerp Map).
Selecting the last item in the list activates an additional opacity lerp map.
Linear interpolation mode to be used, one of the following:
- Full - sprites are interpolated horizontally and vertically.
- Horizontal Only - sprites are interpolated only horizontally, vertically switching is used, this mode can be used for example if we do not fly above the impostors, but rather move around them.
Lerp Fix Blur#
This option helps making details of impostor images look sharper and less blurred reducing the negative effect of linear interpolation.
Up Direction makes impostors always point upwards.
When the impostors are oriented along normal of the parent node (usually the terrain), trees grow almost perpendicular to the terrain slopes. To make the trees pointing up, the Up Direction option should be enabled. At that, the impostors normals remain the same. It allows you to get correct shadowing of trees impostors on the steep slopes.
Animation option enables animation for objects (e.g., for plants swinging in the wind). Available modes:
- None — animation is disabled.
- Animation — standard animation is used.
Standard Animation of Impostors
- Field Animation — standard animation is used together with animation produced by Field Animation.
Standard Animation of Impostors + Field Animation
Jitter Transparency enables creating deferred transparency for Alpha Test materials by using jittering. The state can be used when such result is acceptable and post-effects are applied to the material.
Mip Bias activates an additional mip bias parameter. It is used to adjust mip mapping.
Material SSAO enables screen space ambient occlusion.
Material SSR enables screen space reflections.
Material SSS enables subsurface scattering.
Material DOF enables the depth of field effect.
Material Motion Blur#
Material Motion Blur enables the motion blur effect.
Textures available for the material. All textures fields have set default textures, which can be replaced by your own ones. Availability of some textures depends on the set States values.
An albedo texture that specifies the color of the impostor surface. To create an albedo texture for impostor, use Impostors Creator tool: the texture will be set automatically after generation.
The texture is 4-channelled (RGBA):
- RGB values store color information.
- An alpha (A) value stores transparency information.
A shading texture is a container for four different textures:
- The R channel stores a metalness texture.
- The G channel stores a roughness texture.
- The B channel stores a specular texture.
The texture from this channel can be used only if the Specular Map option is enabled.
- The A channel stores a microfiber texture.
The texture from this channel can be used only if the Microfiber Map option is enabled.
Normal texture of the grass impostor. The texture is used to fake the relief on the impostor surface. To create a normal texture for impostor, use Impostors Creator tool.
Ambient Occlusion Texture#
Ambient occlusion texture modulates the global environment illumination, for example, when an object is lighter at the top from sky above, and darker at the bottom from the ground below. The texture uses only R channel.
Translucent texture stores information on material's translucency. For example, by using this texture, it is possible to specify parts of the object that aren't translucent (the Translucent parameter won't affect them).
Auxiliary texture is used for auxiliary rendering pass.
Depth texture stores information on the material's depth.
The texture is 1-channelled.
Opacity Lerp Map#
This texture is used for smooth linear interpolation of sprites when the camera rotates around the object avoiding abrupt switching between the sprites. Linear interpolation based on this texture is performance-friendly, as it is performed during the deferred pass. To create a texture for an impostor, use the Impostors Creator tool: the texture is set automatically after generation.
The texture is 4-channelled.
Noise texture is used to color the grass (for example, to match the colors of the terrain) or to add irregularity to the color of the grass field. In both cases, the colors of the grass diffuse texture and the spatial noise texture are blended in the overlay mode.
The texture is 3-channelled (RGB).
Visibility Mask Texture#
Visibility Mask texture is used to cut out grass.
The texture is 1-channelled (R).
- R — visibility mask.
Availability of some parameters depends on the set States field values.
Material Mask parameter specifies a decal bit-mask. If the material mask of the decal material matches the material mask of the surface material, the decal will be projected.
This group of parameters determines coordinates transformation of impostors
Phi determines the number of frames grabbed into the impostor texture (horizontal camera rotation).
Theta determines the number of frames grabbed into the impostor texture (vertical camera rotation).
Size size of the object for which impostors were grabbed.
Pivot Offset offset of the pivot point from the center of the object's bounding box.
Base Shading Parameters#
Albedo is a multiplier of the base color of the surface provided by the albedo texture.
Metalness is a multiplier of metalness.
Roughness is a multiplier of the roughness of a surface.
Specular is a multiplier for the intensity of highlight provided by the specular texture.
Microfiber is a coefficient to scale the intensity of the microfiber effect (provided by the microfiber texture). This parameter creates an effect of the napped surface. The higher the value, the higher the microfiber effect is.
Translucent is a coefficient to scale the translucent effect, which permits light to pass through the grass blades, but diffuses it so objects behind the grass blades are not visible. The higher the value, the more translucent the material is.
Alpha Intensity is a coefficient to scale the value of the alpha channel of the grass diffuse texture. The higher the value, the bigger areas of the texture are rendered.
Shadow Offset sets an offset of grass impostors shadows.
When the Up Direction option is used for impostors that are oriented along normal of the parent node (usually - a terrain), the normal map set for impostors is blended with the normal map produced by such orientation settings. Orientation Normals sets a coefficient of such normal maps blending. The default value is 1. The higher the value, the more intense the effect of orientation settings.
Mip Bias is a coefficient for mip maps adjusting.
Stem noise is a coefficient to scale a spatial noise that diversifies the direction of movement of the grass.
- 0 makes the grass move uniformly.
- Increasing the value makes the grass blades movement more random.
Stem offset is a coefficient to scale an amplitude of horizontal movement of the grass.
Stem radius is a coefficient to scale an amplitude of vertical movement of the grass.
Stem scale is a coefficient to scale the speed of grass movement.
Ambient Occlusion Parameters#
Visibility specifies how the AO has influence on grass.
Multiplier is a coefficient to scale the occlusion that sets shading starting from the ground to the top of the grass blades. The higher the value, the less shaded the grass is.
Power is the rate of ambient occlusion appearance on the grass.
Impact On Diffuse#
Impact On Diffuse shows how ambient occlusion affects the grass diffuse texture.
Transform specifies spatial noise texture coordinates transformation.
Scale is a coefficient to scale intensity of the spatial noise texture.