Why does custom landscape with png heightmap converted from dem is flat

Now, i made a heightmap from Dem file, the z-range is 1258-1570m, so i set the landscape z-scale = (1570 - 1258)*100/512 = 60.9375, but, the preview of the landscape is flat, even can’t show it has height.

i also prob the code, and even which make me a confuse more,so,

Who can help me on my issue if i made some wrong computation? thanks in advance!

Detailed info:
a. windows11 + Unreal5.3
b. png heightmap as the attached.

In addition:
I debug the code and found the png heightmap was be loaded as Uint16.

Regards


I checked more posts, which always convert the height space to 0 - 65535 using gdal, but, from the technical guide it has no this demand, only used primitive height range.

And, i remembered someone referred to the unreal internal actually only 0-256 space to store the height, and i checked the code to track why the map is flat, i also found( i don’t know if the code is the only way to compute the height) it used 127 to limit to 0-256 during computing the height and related(nomal…) as the following,

FORCEINLINE float GetLocalHeight(uint16 Height)
{
            // Original code: MidValue = 32768, #define LANDSCAPE_ZSCALE		(1.0f/128.0f)
            return (static_cast<float>(Height) - MidValue) * LANDSCAPE_ZSCALE;
	
}