Here's what's up:
Basically, what I'd like to do is to build a mesh of hills, and use the same grayscale that was used to generate the hills to generate the heightmap result. This, along with some engine changes I've requested, should make it possible to do the full gamut here- floating-world stuff, cliffs with overhangs that are actually functional, giant buildings that are things Units can drive over freely (if there's a ramp, dropped by a transport, etc.) that aren't constrained by resolution/projection issues and can use a full shader treatment, etc.
I was thinking that I could use OpenGL to read the pixel values of the grayscale, and then use some sort of scaling function, rotating it by reading the pixels in a different row-order, and translate that into height. It would be slow, but there just isn't any way to avoid that, and it'd be occurring during GameStart().
This means that we could use a very similar process to the SME "prefab" approach to build 3D geometry that was a close match for the resulting heightmaps, and drawing stuff like a ramp would result in a ramp of height- an essential requirement if we're going to connect sky-cities to ground on a regular basis.
I need an algorithm that will:
1. Validate all Units and determine what uses a height mesh.
2. Get the height-texture via customParam.
3. Performs the terrain manipulation by reading the bitmaps, based on the rotation of the object (i.e., if facing == 0, read bitmap from x1,y1 to x2,y2, if 1, then y1,x1, y2,x2, etc. This is pretty minor OpenGL. It should use a base height, with all values higher than that being raised- right now, 400 is the height I'm using. Later on, it may make more sense to do a height survey across the area and do an average, for more flex, but for now it's just fiat.
IOW, I pretty much know what it needs to do here, but I'm really short on time. I didn't think this tech would arrive in time, and didn't really plan for it, tbh. If nobody is interested, it's cool, I may get to it after I release 1.3. Any takers?
