Quick tip #3: How to increase tessellation quality

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 Games\UE_4.X\Engine\Shaders\PNTriangles.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 Games\UE_4.X\Engine\Shaders\FlatTessellation.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

I am 24 years old developer. I have solid experience in programming and used to be a java developer for 4 years. Now I’m working on my own projects and games, based on Unreal Engine 4.

Leave a Reply