anchor.diff:    end;
   
     for I := 0 to High(aPoints) do
  -    glVertex2f(aPoints[I].X, gTerrain.FlatToHeight(aPoints[I].X, aPoints[I].Y));
  +    glVertex2f(aPoints[I].X, gTerrain.RenderFlatToHeight(aPoints[I].X, aPoints[I].Y));
   
     glEnd;
   
  
positive.code:   glColor4ubv(@aCol);
  
    glBegin(GL_TRIANGLES);
      glVertex2f(x1, gTerrain.FlatToHeight(x1, y1));
      glVertex2f(x2, gTerrain.FlatToHeight(x2, y2));
      glVertex2f(x3, gTerrain.FlatToHeight(x3, y3));
    glEnd;
  end;
  
  
negative.code:   TRender.BindTexture(0); // We have to reset texture to default (0), because it could be bind to any other texture (atlas)
    glBegin(GL_QUADS);
      with gTerrain do
      glkQuad(rect.Left,  gTerrain.RenderFlatToHeight(rect.Left,  rect.Top),
              rect.Right, gTerrain.RenderFlatToHeight(rect.Right, rect.Top),
              rect.Right, gTerrain.RenderFlatToHeight(rect.Right, rect.Bottom),
              rect.Left,  gTerrain.RenderFlatToHeight(rect.Left,  rect.Bottom));
    glEnd;
  end;
  
  