That is a good system. I will consider that. though I may want some physics such as being pushed.
I found a better method than what I was doing before though. I poll each pixel around the player every time they move a certain amount. and create dynamic solids as needed.
On the left, the player is climbing a ramp by an edge. The pixels on the left are green because while they may be higher than the player. They are below a climb threshold I set. (player.z + climb) So the player can freely move there.
On the right, though the player is on ground level. The elevation above is taller than the climbing threshold.
these are calculated at the player's current height. So any jump/fall the player is doing will be factored into this dynamic solid creation.
I am very pleased with this because it is dynamic and does not need me to do any walls beforehand. It goes off the already existing height map. I will optimize it later but it's a good proof of concept.