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); }