RealNiclas Geschrieben 13. April 2019 Melden Share Geschrieben 13. April 2019 Guten Tag, ich habe ein Problem bei folgendem Sachverhalt: Wenn der Spieler auf ein Objekt klickt, soll dieses ein anderes Modell bekommen, so das z.B. aus einem Würfel eine Kugel wird. Wie man auf das Objekt zugreift, auf welches der Spieler klickt, habe ich schon verstanden, nur scheitert es noch daran, dass 3D Modell durch ein anderes zu ersetzten. Weiß jemand wie man das löst? Gruß: Niclas Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Sascha Geschrieben 13. April 2019 Melden Share Geschrieben 13. April 2019 Ein 3D-Modell wird von einem MeshRenderer gezeichnet, der die Info über das Mesh aber nicht selber handhabt. Dafür gibt es die MeshFilter-Komponente. Wenn du nur das Modell austauschen willst (also das Material dasselbe bleibt), dann brauchst du den MeshFilter: private MeshFilter meshFilter; private void Awake() { meshFilter = GetComponent<MeshFilter>(); } Und zum Austauschen meshFilter.mesh = newMesh; newMesh kannst du wiederum über ein Feld besorgen, in das du dein Mesh aus den Assets reinziehst. public Mesh newMesh; Wenn du jetzt auch das Material austauschen willst, dann könntest du über den MeshRenderer gehen, der das Material handhabt. Allerdings ist spätestens hier der Punkt erreicht, wo ich sagen würde: Nutz einfach mehrere GameObjects. Man könnte Prefabs instanziieren, oder auch einfach alle Modelle gleichzeitig einem Parent unterordnen und alle durch Deaktivierung unsichtbar machen, die gerade nicht präsent sein sollen. Also Parent mit Austausch-Script und ggf. Collider zum Anklicken Würfel Kugel (GameObject deaktiviert) Das Austausch-Script würde dann so aussehen: public GameObject cube; public GameObject sphere; private void OnMouseDown() { cube.SetActive(false); sphere.SetActive(true); } Das ziehst du auf den Parent, und danach ziehst du den Würfel und die Kugel in die entsprechenden Slots im Inspektor. Sobald du mehr Objekte hast als zwei, würde ich aber zu einem Array wechseln. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
RealNiclas Geschrieben 13. April 2019 Autor Melden Share Geschrieben 13. April 2019 Vielen Dank! 🤗 Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Recommended Posts
Archiviert
Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.