This tutorial covers how to create a distance based tessellation material being driven by 6 changeable parameters.
Before you start you should have a basic knowledge of the Material Editor being used within the Unreal Engine 4. Also recommended but not mandatory is an understanding what Tessellation is especially and what it does and how it's being used. If you're not sure check out other tutorials before going ahead or simply check the Additional Tutorials chapter.
Due to the fact that it's a complicated material function I created two video tutorials that offer step by step explanations. Please use any material of your choice ( that has a Base Color texture, a Normal texture and a Displacement texture ) as a base for the video tutorials below. First you'll add a basic and then dynamic tesselation to this material. Check out the Project Source chapter to download the whole UE4 project if you don't have a proper material and / or textures.
Basic DX11 Tessellation ( 2 / 3 )
Distance Based DX11 Tessellation ( 3 / 3 )
Even though I'd still suggest watching the tutorial, here is an image of the final material.
To understand what the Param Values mean here is a screen illustrating the situation.
Minimal Distance = Distance from OBJECT to A, "Max Height" and "Iterations" with the predefined value
Maximal Distance ( Fade Distance ) = Distance from A to B, at B "Max Height" and "Iterations" value is 0, transitioning/fading from A to B
You can download the materials of this and other tesselation tutorials listed below in an UE4 project from GitHub.
- Advanced Materials (Instancing) Video ( 1 / 3 of this tutorial )
- Basic Tessellation Videos ( english and german )
- Texture Packed Material Setup Video ( 1 / 2 with basic tesselation )
- Advanced Tessellated Displaced Material Setup Video ( 2 / 2 with advanced tesselation )
Material created by DaveTheFreak aka David Scholze