James Jarman's Devblog

World Position Aware Procgen

Before I can work on the Project Hex’s chunking system I need to ensure each of my hexagon terrain tiles generate height data topology that correctly matches up with its neighbours. The easiest way to do that is to base the Perlin noise calculation on world position, but its a little bit more complicated when dealing with scaling noise across different meshes. Regardless, it is still a function of world position but in my case I actually use a hex coordinate system (that will eventually be discussed in the Project Hex and so have to translate that into world position as well.

Like in the previous post, I actually override the property update events for the chunk’s position and recalculate the height data for the vertices so that it updates in real-time. Definitely something I didn’t need, but since i discovered Unreal could handle it without breaking a sweat I thought I would put it in for testing purposes. Plus it looks really cool :)

I had the same behaviour working in Unity but it runs so much faster in Unreal and it isn’t even optimised yet!