/// <summary>
        /// Generate a random heightmap using perlin noise and the passed parameters.
        /// </summary>
        /// <param name="width"></param>
        /// <param name="depth"></param>
        /// <param name="min"></param>
        /// <param name="max"></param>
        /// <param name="settings"></param>
        public void GeneratePerlinNoiseHeightmap(int width, int depth, float min, float max,
                                                 HeightmapPerlinNoiseSettings settings)
        {
            _width = width;
            _depth = depth;

            _minimumHeight = min;
            _maximumHeight = max;

            _perlinNoiseSettings = settings;

            _heightValues = new float[_width * _depth];

            GeneratePerlinNoiseHeightmap();
        }
        /// <summary>
        /// Generate a random heightmap using perlin noise and the passed parameters.
        /// </summary>
        /// <param name="width"></param>
        /// <param name="depth"></param>
        /// <param name="min"></param>
        /// <param name="max"></param>
        /// <param name="settings"></param>
        public void GeneratePerlinNoiseHeightmap(int width, int depth, float min, float max,
                                                 HeightmapPerlinNoiseSettings settings)
        {
            _width = width;
            _depth = depth;

            _minimumHeight = min;
            _maximumHeight = max;

            _perlinNoiseSettings = settings;

            _heightValues = new float[_width*_depth];

            GeneratePerlinNoiseHeightmap();
        }