How to Improve Tessellation Quality?

A quick guide for UE4 users by Ruslan Nazirov.

Ruslan Nazirov, a 24-year-old developer with solid experience in programming, shared a nice tip for UE4 users, who are trying to deal with tesselation problems. 

This tip might be useful for those people, who tries to achieve the best possible quality of their in-engine static renders. Big values of tesselation multiplier are not suitable for real-time games at this moment and I recommend to use parallax occlusion mapping instead.

Default tessellation multiplier in UE4 locked to the value of 15, which mean that by default tessellation quality is limited. You can change this behavior by modifying shader code.

Just do the following.

Open: Epic GamesUE_4.XEngineShadersPNTriangles.usf

Find and change [maxtessfactor(15)] to [maxtessfactor(50)]

and CompositeTessellationFactors = clamp( CompositeTessellationFactors, 1, 15 ); to CompositeTessellationFactors = clamp( CompositeTessellationFactors, 1, 50 );

Optionally do the same for Epic GamesUE_4.XEngineShadersFlatTessellation.usf if you’re using flat tesselation instead of PN Triangles.

Keep in mind, that it will require recompiling all shaders after the first launch, so be patient. Also, you need to do this trick each time when you’re updating your engine to the new version.

And here’s the comparison:

Without tessellation:

Tessellation multiplier = 15

Tessellation multiplier = 50

Ruslan Nazirov, 3D Artist

Join discussion

Comments 1

  • Blackall Callum

    Whilst the quality of the result will begin having diminishing returns how so does the performance diminish over the scale?

    0

    Blackall Callum

    ·6 years ago·

You might also like

We need your consent

We use cookies on this website to make your browsing experience better. By using the site you agree to our use of cookies.Learn more