I have just written the following code to keep some group of objects at the same height from the terrain. But somehow, they don’t do anything, neither going up nor down, literally nothing.
float leaderDistanceFromTerrain = leaderRepresenter.transform.position.y - (Terrain.activeTerrain.SampleHeight(leaderRepresenter.transform.position) + Terrain.activeTerrain.transform.position.y);
float distanceFromTerrain = transform.position.y - (Terrain.activeTerrain.SampleHeight(transform.position) + Terrain.activeTerrain.transform.position.y);
if (leaderDistanceFromTerrain != distanceFromTerrain)
{
float calculatedY = (Terrain.activeTerrain.SampleHeight(transform.position) + Terrain.activeTerrain.transform.position.y) + leaderDistanceFromTerrain;
transform.position.Set(transform.position.x, calculatedY, transform.position.z);
}