e-s-mctaggart.bsky.social
@e-s-mctaggart.bsky.social
PhD student at KU Leuven | Computational Oncology
The numbers still scale up pretty fast if you have to worry about symmetry and multiple terrain types (ask me how I know), but it is much better, and most of all it looks so much more satisfying when they work
November 21, 2025 at 11:21 AM
This is gorgeous! The elemental incarnations are what first got me hooked on magic, good to see that they're still training ominously out of frame after nearly two decades. Are the wisps a reference to the cycle in Shadowmoor?
September 30, 2025 at 7:27 AM
I love the film-grain texture, is that a result of the equations themselves or the method of visualizing them (eg something akin to sampling noise when ray tracing)?
August 14, 2025 at 7:29 AM
The control function for this noise, and the majority of the height of the terrains, comes from sampling a Voronoi pattern with user-defined centroids, with smooth fractal noise used to offset the sampling coordinates giving more natural looking boundary lines.
August 2, 2025 at 4:34 PM
A major challenge here was rivers, and making them globally consistent while only sampled locally. Thankfully I wasn’t the first to try this and so I implemented Dendry noise from a 2019 paper found at doi.org/10.1145/3306131.3317020
August 2, 2025 at 4:34 PM
To break up the wall of text here's a quick illustration of how the heightmaps can be used in 3D. Please ignore the shift in height scale, that's an artifact of me not properly correcting the maps for use in Blender.
August 2, 2025 at 4:34 PM
A map can therefore be created at low resolution, the world adjusted for artistic reasons, and then multiple sections of interesting areas rendered at higher resolutions while maintaining consistency.
August 2, 2025 at 4:34 PM
The benefit of this is that it can run on the gpu fairly efficiently using cupy, and resolution or even image shape is a completely free decision.
August 2, 2025 at 4:34 PM
For the more technical side: It’s been a (very arbitrary and prohibitive) restriction for this project that every part of it needs to be fully vectorised, allowing for local sampling at any resolution. This means strictly no simulations, and only continuous functions can contribute.
August 2, 2025 at 4:34 PM
The next steps for this project are to create some kind of graphical user interface so it’s easier to work with, to implement caves and more variation for how rivers/cliffs/eroded structures in general can form in landscapes of different ages, and perhaps stylisation of the output.
August 2, 2025 at 4:34 PM
This has been a labour of (mostly) love for a long time, unrelated to my work, but the jam was a great time to finally clean it all up and implement things I’d been putting off. You can find the project on itch at edward-mct.itch.io/fully-parall... or on my github at github.com/EddieMcT/Map...
August 2, 2025 at 4:34 PM
I've been working for a while on a terrain generator that implements a few things mentioned in the jam, but it's entirely offline (ie it creates a grayscale image that can be used later as a height field). Is that suitable for the jam or should I build it into a game engine/renderer first?
July 3, 2025 at 7:13 AM
To define it more formally: A) What's the length of interaction with a model after which 50% of humans believe it to be an AI? And B) what is the limit of the proportion of humans that identify an AI as nonhuman as interaction length goes to infinity?
May 24, 2025 at 5:03 PM