/// <summary>
        /// Generates and applies new MeshCollider for the tile if no collider
        /// exists currently or <code>IsColliderDirty</code> is true.
        /// </summary>
        public void GenerateCollider()
        {
            if (gameObject.GetComponent <MeshCollider>() == null || IsColliderDirty)
            {
                MeshCollider collider = gameObject.AddComponent <MeshCollider>();
                collider.sharedMesh = Terrain;

                TerraEvent.TriggerOnMeshColliderDidForm(gameObject, collider);
            }
        }
        /// <summary>
        /// Calculates and applies a new MeshCollider for the tile if no collider
        /// exists currently or <code>IsColliderDirty</code> is true.
        /// </summary>
        public void CalculateCollider()
        {
            if (_tile.GetComponent <MeshCollider>() == null || _tile.IsColliderDirty)
            {
                MeshCollider collider = _tile.gameObject.AddComponent <MeshCollider>();
                collider.sharedMesh = ActiveMesh;

                TerraEvent.TriggerOnMeshColliderDidForm(_tile.gameObject, collider);
            }
        }