Менять Transperencia Prefab на Unity

У меня есть три ведра (один перед другим) в сцене Unity и мне хотелось бы, что, когда встречалось условие, первое ведро вышло полу-прозрачным для того, чтобы было возможно видеть сзади.

Я попытался со следующим:

cubo1.GetComponent<Renderer>().material.color.a = 0.5f;

Но он дает мне ошибку. У меня есть очевидные ведра следующей формы:

public GameObject cubo1;

Я изменил Shader Материала Standard в Legacy Shaders/Transparent/Diffuse из-за темы канала Альфа, но совсем не...

У кого-то какая-то идея есть?

2
задан 20.06.2017, 20:20
1 ответ

Для того, кто интересует его, уже я это решил. AquГ - она soluciГіn:

public GameObject cubo;

public void Transparente() //assignado a un button
{
    cubo.GetComponent<Renderer>().material.color = new Color(1, 1, 1, 0.3f); //llamo al canal alpha en el último valor (1=100%, 0.5f = 50%, 0 = 0%)
}

// Use this for initialization
void Start () {

    Material matTrans = new Material(Shader.Find("Transparent/Diffuse"));
    GetComponent<Renderer>().material = matTrans; //Crear nuevo material Transparente
}

Надеялся, что он помогает тому, если кто-то нуждается в этом!

6
ответ дан 24.11.2019, 13:05