protected void updateNormals() {

        if (needToRecalculateNormals()) {
            //TODO background-thread this if it ends up being expensive
            fixNormals(affectedAreaBBox); // the affected patches
            fixNormalEdges(affectedAreaBBox); // the edges between the patches

            setNormalRecalcNeeded(null); // set to false
        }
    }
update the normals if there were any height changes recently.
Should only be called on the root quad
jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainQuad.java