The Visual Engine | Terrain Shaders Module
The Visual Engine is a set of high-quality shaders and tools designed to unify 3rd party assets under the same shader system. Enable high-quality wind motion, interaction, seasons, wetness, subsurface, layers, variation, etc. for all assets with Standard, Universal, or HD Render Pipeline!
○ Overview
The Terrain Shaders Module is an advanced terrain shader solution with up to 16 layers supported, height-based blending, and per-layer planar, triplanar, and stochastic mapping and it has integration with the Vegetation Engine global seasons, overlay, wetness, emissive, and height offset for snow accumulation or tracks. It offers 2 texture packing modes to reduce the texture amount and optimize the rendering.
The Terrain Shaders Module allows you to override the layer textures and parameters per terrain or to use Custom Render Textures or Render Textures with animated effects such as molten lava or animated sand wind which is not possible by default with the terrain system!
The Terrain Shaders module supports seamless object-to-terrain blending when the Terrain Blanket module shaders are used!
○ Compatibility
The Terrain Shaders Module supports the following Render Pipelines:
✓ Standard Render Pipeline 2021.3+
✓ Universal Render Pipeline 2021.3+ / 2022.3+ / 6000.0+
✓ HD Render Pipeline 2021.3+ / 2022.3+ / 6000.0+
The Terrain Shaders Module has integration with the following 3rd party tools:
✓ Amplify Shader Editor - Full shader editing support
The Terrain Shaders Module supports the following add-ons:
✓ The Visual Engine • Terrain Blanket Module (Terrain Blending)
✓ The Visual Engine • Terrain Elements Module
○ Features
✓ The Visual Engine systems support: Seasons, Overlay, Wetness, Height Offset
✓ The Visual Engine elements support: Colors, Overlay, Wetness, Height Offset
✓ Per-layer Planar, Triplanar, and Stochastic mapping | NEW
✓ Up to 16 terrain layers supported in one pass
✓ Height-based blending
✓ Global Emissive support
✓ Works with mesh terrains
✓ Amplify Shader Editor support
✓ Demo scenes included
○ Limitations
🞫 The height offset feature is only visual and it will not modify the actual terrain collision!
🞫 Per pixel terrain normal is not currently supported!
🞫 The shaders are not designed for mobile development!
🞫 HDRP ray tracing and path tracing are not fully supported!
🞫 Only the latest LTS Unity versions are officially supported!
○ Disclaimers
⚑ The Terrain Shader uses the Mask Alpha as Smoothness and the Albedo Alpha as a Foliage/Emissive mask. Texture packing might be needed if Smoothness is added to the Albedo texture!
⚑ The Terrain Shader can also work with mesh terrains if the control maps for the layer weights are provided. You can bake the control maps from the terrain using my free tool called Terrain Data Baker or Unity's Terrain Tools from the package manager! GPU Instancing must be disabled on the material.
○ More Assets
✓ The Visual Engine • Unified shaders for any asset
✓ The Visual Engine • Amplify Impostors Module
✓ The Visual Engine • Terrain Blanket Module
✓ The Visual Engine • Terrain Elements Module
✓ Atmospheric Height Fog • Optimized fog for consoles, mobile, and VR
✓ Polyverse Skies • Low poly skybox shaders
✓ Free Skybox Shader • Cubemap Extended shader