Jump to content
Unity Insider Forum

Material per script ändern


Timbo3

Recommended Posts

Hallo Forum.

Ich versuche gerade das Material eines Würfels zu ändern allerdings funktioniert dieser Code nicht:

using UnityEngine;

public class Material : MonoBehaviour
{
    public Material[] materials;


    void Start()
    {
        GetComponent<MeshRenderer>().material = materials[1];


    }



}

Und im Internet hab ich auch nichts funktionierendes gefunden.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das ist keine gute Lösung. Das Material-Array eines Renderers ist nicht zum Einlagern von irgendwelchen Materials, sondern erfüllt einen bestimmten Zweck.

Was in jedem Fall funktionieren sollte:

using UnityEngine;

public class ChangeMaterial : MonoBehaviour
{
    public Material[] materials;

    void Start()
    {
        GetComponent<Renderer>().sharedMaterial = materials[1];
    }
}

Achte auch darauf, dass du deine eigenen Klassen nicht nach Typen benennst, die es schon gibt - "Material" zum Beispiel solltest du deine Komponente nicht nennen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...