|
|
@ -238,6 +238,13 @@ public class HeightMap { |
|
|
|
|
|
|
|
|
|
|
|
// We will need the parent height if we got this far into the method
|
|
|
|
// We will need the parent height if we got this far into the method
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return interpolatePLANAR(worldLoc, heightMapZone, zoneLoc, interpolatedTerrainHeight); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
private static float interpolatePLANAR(Vector3fImmutable worldLoc, Zone heightMapZone, Vector2f zoneLoc, float interpolatedTerrainHeight) { |
|
|
|
|
|
|
|
Zone parentZone; |
|
|
|
|
|
|
|
float interpolatedParentTerrainHeight; |
|
|
|
parentZone = HeightMap.getNextZoneWithTerrain(heightMapZone.getParent()); |
|
|
|
parentZone = HeightMap.getNextZoneWithTerrain(heightMapZone.getParent()); |
|
|
|
interpolatedParentTerrainHeight = HeightMap.getWorldHeight(parentZone, worldLoc); |
|
|
|
interpolatedParentTerrainHeight = HeightMap.getWorldHeight(parentZone, worldLoc); |
|
|
|
interpolatedParentTerrainHeight += parentZone.worldAltitude; |
|
|
|
interpolatedParentTerrainHeight += parentZone.worldAltitude; |
|
|
@ -269,7 +276,6 @@ public class HeightMap { |
|
|
|
|
|
|
|
|
|
|
|
interpolatedTerrainHeight = FastMath.LERP(percentage, interpolatedTerrainHeight, interpolatedParentTerrainHeight); |
|
|
|
interpolatedTerrainHeight = FastMath.LERP(percentage, interpolatedTerrainHeight, interpolatedParentTerrainHeight); |
|
|
|
return interpolatedTerrainHeight; |
|
|
|
return interpolatedTerrainHeight; |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public static float getWorldHeight(Vector3fImmutable worldLoc) { |
|
|
|
public static float getWorldHeight(Vector3fImmutable worldLoc) { |
|
|
|