Loading Terrain in Panda3D

I am trying to load a terrain with height range [-2000,2000] in Panda3D using GeoMipTerrain and setHeightfield methods with .png file as heightmap, but I am not getting appropriate result with negative height data

Also loading a large terrain in Panda3D is effecting its performance.

Another way of loading a terrain would be converting .png file (containing heightmap) to .egg format and loading it as a model, so please suggest me how this conversion should be done, and the way I can even load negative height information in terrain.

Which approach will be better for achieving my objective and in terms of performance too.

That’s a big range of heights… it’s from a big mountain and a deep sea, to compare this to typical in-game heights - the highest mountain in Skyrim is about 627 meters… but then again, maybe you’re counting in feet?

If negative numbers are a problem then move them from [-2000,2000] to [0,4000] and move the terrain -2000 units down :mrgreen:

Anyway - you should be using a 16-bit png file and probably the new Shader Terrain Mesh system New terrain system - please test! or a custom tessellation shader (they are simpler then they look, there should be some example on the fora here)

For a big terrain an egg file is a very bad idea, it will be probably several GB large and it will take a looong time to load, even converted to bam it will be big.

Thankyou for replying.