This PR is supposed to tackle the following issues:
Complex coupling between HeightmapNode, SurfaceTrackerLeaf and SurfaceTrackerBranch
HeightmapNodes (LevelCube and ProtoCube) contain references to SurfaceTrackerLeaves and vice-versa. The HightmapNodes create SurfaceTrackerLeaves, which then invoke a method "sectionLoaded" that adds the SurfaceTrackerLeaf to a reference list within the HeightmapNode. Instead HeightmapNodes should simply create the leaves and add them to their internal lists themselves.
Faulty handling of heightmaps during ProtoCube promotion to LevelCube
When a LevelCube is created based on a ProtoCube, it should inherit all of the ProtoCube's heightmaps. As of right now, this behaviour is faulty because of the overly complex interactions between cubes and heightmaps.
This PR is supposed to tackle the following issues:
Complex coupling between HeightmapNode, SurfaceTrackerLeaf and SurfaceTrackerBranch HeightmapNodes (LevelCube and ProtoCube) contain references to SurfaceTrackerLeaves and vice-versa. The HightmapNodes create SurfaceTrackerLeaves, which then invoke a method "sectionLoaded" that adds the SurfaceTrackerLeaf to a reference list within the HeightmapNode. Instead HeightmapNodes should simply create the leaves and add them to their internal lists themselves.
Faulty handling of heightmaps during ProtoCube promotion to LevelCube When a LevelCube is created based on a ProtoCube, it should inherit all of the ProtoCube's heightmaps. As of right now, this behaviour is faulty because of the overly complex interactions between cubes and heightmaps.