Author Topic: Height map vs normal map  (Read 8591 times)

Hello. I'm creating a procedural material library in Substance Designer for our PC/nextgen game. With both normal and height maps, and with tesselation set in the shader, the materials look great inside Designer, but I know this won't translate 1:1 into UE4.

I'll consult this with our techs, but I'd like to know what the general practice is these days. Here are my thoughts/doubts/options:

 1. Parallax is cheap, use height map everywhere VS use only normal map in most materials.
 2. For parallax, use Bump offset node?
 3. Tesselation is gpu-heavy, but it's good to use it for more important objects. How often, though?
 4. In my early tests, neither tessellation, nor parallax occlusion, look as good in UE4 as in Designer. Possible reasons?
 5. Put same information into both normal and height maps? Or macro shape in height, and fine detail in normal? If the latter, but, in some materials, we won't use height map at all, then normal maps will have to be prepared differenty depending on whether we'll be using height maps or not. In other words, while designing a material, we have to know from start whether height map will be used in UE4, or not. Or at least have 2 different normal map outputs, for use with and without height map.
 6. Use parallax/tessellation/no height at all depending on material type (organic/hard surface/floor/buildings/characters etc.)?

Any comments on those points will be greatly appreciated.

Hey rosenand,

I'll try to answer a few questions but I may not be able to answer all ;)

1. Parallax is cheap, use height map everywhere VS use only normal map in most materials.

Parallax is not THAT cheap. Use Parallax on those Materials where it makes sense, like a prominent brick wall or so.

2. For parallax, use Bump offset node?

I think I used that Node, yes. I could take a look if you want.

3. Tesselation is gpu-heavy, but it's good to use it for more important objects. How often, though?

Fable Legends (rest in peace... I loved that Series!) used Tesselation on a few huge stone formations and bridges where parallaxing would look strange because of the camera angles. Maybe you can consider the same: Use parallax first and change to tesselation when it really looks bad.

4. In my early tests, neither tessellation, nor parallax occlusion, look as good in UE4 as in Designer. Possible reasons?

Creating a simple Parallax shader in UE4 (take a look at the documentation) I was able to create a quite good looking material. Test around a bit, maybe you miss something :)

6. Use parallax/tessellation/no height at all depending on material type (organic/hard surface/floor/buildings/characters etc.)?

I decide whether to use parallax/tesselation or not based on the following considerations:
- Does the Material allow it realistically/based on the look? (an asphalt would make so much sense, a brick wall would)
- How important is this Material? Will it be seens that much and is it a big one, occupying much screenspace?
- Does tesselation/parallaxing support the look I want to achieve?


I hope this can help you a bit. Please tell me if you want to know more!


Best Regards
Environment Artist - Twitter

Thank you so much, Fabian :) I'll get back to testing when I get to work tomorrow, considering all your comments.

There's a big one that you left out, though: what kind of information do you put in the height map, and what in the normal map? And does this approach change depending on whether you'd be using the height map at all in engine? For example:

Planning to use height map in engine:
- Normal map contains ony fine detail
- Height map contains macro shape

No height map to be used in engine:
- Normal map contains all the information

Hey rosenand,

I always create the normal map from the Height map in Substance Designer and output both as they are. I don't think it would make sense to iterate on both differently, because when you take out detail from the Normal map, for instance, you'll give up on quality but do not save any computation power or memory space.


Best Regards
Environment Artist - Twitter