Now that we understand how 3D worlds are built from triangle meshes, and how we can use cameras to explore those worlds, let’s start putting those ideas to work. In this section, we’ll focus on creating terrain from a heightmap - a grayscale bitmap representing the changing elevation of the ground.
Like our earlier examples, we’ll start from a starter project with our assets pre-loaded. In addition, we’ll include the ICamera
interface and the FPSCamera
we created in the lesson on Lights and Cameras. It is also preloaded with public-domain content assets, including a heightmap from Wikimedia and a grass texture from Para on OpenGameArt’s Synthetic Grass Texture Pack.
You can find the starter project here: https://github.com/ksu-cis/heightmap-terrain-starter