Hi everyone, I want to share a solution for POM (Parallax Occlusion Mapping) performance of Unreal Engine. If you wanted to use POM, you probably had tough times with its performance impact. We have researching to fix that problem for couple days and I can tell you that we found a way to minimize the cost of POM without any visual loss. I will share solution but first, let’s some review.
I have 2 versions of Unreal Engine; Lovely Maxime Dupart’s 4.17.2 Nvidia Gameworks. Also, I have 4.10.4 because this is the version that has minimum POM cost. After the 4.10 or 4.11, Unreal has bad POM performance. I want to share with you some comparison.
Scene Setup:
Both Scenes;
- Have same landscape and totally same Landscape Material that created in each engine (Not Copy&Paste)
- Have 1 movable Directional Light, 1 movable Skylight, 1 default SkySphere and 1 Post Process Volume To Disable Eye Adaption
- 1 BSP Box
(All of them have same parameters, settings even locations)
(I uploaded images to imgsli.com because of having a better comparison)
First Comparison: Without POM Just Normal Map
As you can see, both of them have similar fps. (±2)
4.10.4 : 252 FPS
4.17.2 : 252 FPS
Second Comparison: With POM
As you can see, there is a huge performance difference between versions. About 50 fps!!
4.10.4 :195 FPS
4.17.2 :148 FPS
Third Comparison: With POM but default and Fixed
As you can see, performance increased 83 fps without any visual differences
4.17.2 Default : 148 FPS
4.17.2 with Solution: 231 FPS
I will upload “solution” POM Material function for you try too. Let me know the results.
But the funny thing in here, this is almost same Material Function that comes with 4.10.4. I did some arrangements and changed it a little bit to have better performance at lower graphics settings. (There is no any visual loss at higher graphics settings)
Also, I’m really wondering that huge performance impact on new versions. If there is something that I missed. Please, let me know. And I’m waiting for an explanation from Epic.
The function should work on 4.17 and 4.18, But It may work older versions.
You can download from : https://drive.google.com/open?id=1RI…NMs8iLzj7ZrfUE