Ich habe folgende Code in Unity3D zum Hinzufügen und ein Liniensegment für eine 3D Zeichnung löschen:Zerstören nicht zerstören Gameobject
public class LinearPiecewiseTrajectory : MonoBehaviuor
{
private List<LineSegment> lineSegmentRep;
//other stuff here
public void addSegment()
{
GameObject lineSegmentObject = new GameObject();
lineSegmentObject.name = "LineSegment";
LineSegment lineSegment = lineSegmentObject.AddComponent<LineSegment>();
lineSegmentObject.transform.parent = this.transform;
lineSegmentRep.Add(lineSegment);
}
}
public void deleteSegment(int i)
{
Destroy(lineSegmentRep[i]);
}
Linesegment ist ein MonoBehavior I definiert haben.
Dieser Destroy-Aufruf zerstört jedoch nicht das LineSegment-Objekt. Das einzige erkennbare Verhalten, das ich finden kann, ist, dass es die geometrische Transformation des alten Liniensegments auf Identität zurückführt.
Was fehlt mir?
Vielen Dank für den Hinweis! Das sollte ursprünglich eine Liste der GameObjects sein, keine Liste des MonoBehavior, ich weiß jetzt nicht, warum ich das gemacht habe. Vielen Dank! – user650261