private MeshNode CreateMeshNode(List <Vector2> points)
    {
        if (m_obs_wallMesh == null)
        {
            m_obs_wallMesh = new GameObject("obs_wallMesh");
            m_obs_wallMesh.transform.parent        = SceneRoot.transform.Find(DefaultWallPath);
            m_obs_wallMesh.transform.localScale    = Vector3.one;
            m_obs_wallMesh.transform.localPosition = Vector3.zero;
        }

        GameObject temp = new GameObject(DefaultName + meshNodeData.Count);

        temp.transform.parent        = m_obs_wallMesh.transform;
        temp.transform.localPosition = Vector3.zero;
        temp.transform.localScale    = Vector3.one;
        MeshNode tempTool = temp.AddMissingComponent <MeshNode>();

        tempTool.AwakeInit(MeshHeight, SceneHeight, DefaultName);
        tempTool.InitData(points);
        return(tempTool);
    }