Working with NASA images to create Unity terrain

I’ve been wanting to create a scene in Unity based on real Martian terrain and recently chose Victoria Crater as my target. I’ve taken two NASA images, a false color image and a black and white image as my starting point. These two images below:

Victoria Crater, Mars
Victoria Crater
Victoria Crater, Mars

The B+W image is an ideal starting point for a greyscale heightmap, but it has some critical flaws. Since a heightmap uses the greyscale level for determining height on a body, the shadows in the upper left make that section of the crater significantly deeper, the lighter areas on the bottom right roughly the same height as the surrounding plane, and the white shining bits along the edge significantly higher than anything else. That makes for a very poor topographical map.

So, cutting sections into various layers allowed for some gross manipulation of the overall scaling of colors using histograms. The first heightmap looks like this:

Victoria Crater Heightmap WIP
Victoria Crater Heightmap WIP

This is a more accurate representation by far, though still not as good as it could be. The feathered texture on the lower right quadrant of the crater doesn’t appear in the rest of the crater, despite very definitely being there in the source images. There’s also a bit of noise around the rim that really should be resolved, though it was worth importing into Unity as a trial. The result is:

Screenshot: Victoria Crater, Unity terrain from Heightmap
Screenshot: Victoria Crater, Unity terrain from Heightmap

I’m pretty happy with it for an initial attempt. It’ll need some fleshing out on the heightmap side. GIMP is a great tool, but it’s no Photoshop and some of the finer features in PS would definitely make this easier. That said, it’s almost certainly a workable option. Maybe a future project will be training an ML brain to take astronomic images and creating topographic heightmaps from them. I’d need better sources to start with, though. For now, I’ll need another few rounds of handmade maps.

Generative Glyphs

I came across this post on the Reddit sub r/Generative the other day and thought that u/ivanfleon had done something both relatively simple and also very cool. I had some ideas for generative glyphs and started by mimicking his sample there, thus was born the RectGlyph:

Two different RectGlyph settings

The interface came shortly after RectGlyph was done as I was trying to troubleshoot work on the PolarGlyph. It made it easier to see what sort of variations could be had, but also allowed debugging to be more visual (which really helps me a lot).

I’ve always been fascinated with languages, both real and imagined. As I was working toward my PolarGlyph idea, I stumbled upon a few happy accidents, such as the RunicGlyph.

Two RunicGlyph settings

And also the AngularGlyph:

Two AngularGlyph settings

And eventually worked out the kinks for the PolarGlyph:

Two PolarGlyph settings

I have a few others bring worked on, as well as some ideas regarding an editor so you can take your randomly generated glyphs and add line segments to or remove them from any of the glyphs in the set.

My pie-in-the-sky idea is to also be able to save them as a TrueType font so that they can be used in Unity (or anywhere), and possibly to save them as an SVG or vector sheet for use in various vector-based software.

It’s been a fun side project so far.