Help Creating Game Landscape

Hey team, I’m looking for some advice on a good workflow of creating landscapes and importing them into Babylon and I think it’s time to reach out for help.

I want to be able to design a 256x256 game-dimension landscape using nothing but Photoshop. My current workflow is to design a relatively large (1024x1024 or 2048x2048) base 2D map, create a simple height map for it (again using Photoshop), then import both into the game with something like:

let groundTexture = new BABYLON.Texture("landscapeUrl", scene)

let groundMaterial = new BABYLON.StandardMaterial("groundMaterial", scene)
groundMaterial.diffuseTexture = groundTexture

let ground = BABYLON.CreateGroundFromHeightMap("", "heightMapUrl", 256, 256, 64, 0, 20, scene, false)
ground.material = groundMaterial

The result, however, is less than exciting: I end up with a very blurry/low resolution texture for the map. Any tips? What is the general process for map building in Babylon?

  • I have looked into using a MultiMaterial, but I would like more than 3 possible materials on the ground, and also would like to keep the design part itself simple in Photoshop.

  • I have looked into using CreateTiledGround, but it returns Mesh instead of GroundMesh which does not have getHeightAtCoordinates(x, y)

Thank you so much for your time!

Maybe you could be interested by the MixMaterial?
https://www.babylonjs-playground.com/#1DFTDT#3

2 Likes

@Deltakosh Thank you!! Babylon is a beautiful creation.

1 Like