예제 #1
0
 void AparecerObjeto(ObjetoEscondidoData objData)
 {
     if (objData.mat != null)
     {
         Debug.Log("Reaparece.");
         StandardShaderUtils.ChangeRenderMode(objData.mat, StandardShaderUtils.BlendMode.Opaque);
         Color c = objData.mat.color;
         c.a = 1f;
         objData.mat.color = c;
     }
     objData.escondido = false;
 }
예제 #2
0
    void EscondeObjeto(Transform t)
    {
        ObjetoEscondidoData objData = null;

        foreach (ObjetoEscondidoData o in objetosEscondidos)
        {
            if (o.obj == t)
            {
                objData = o;
            }
            break;
        }
        if (objData == null)
        {
            Material     m  = null;
            MeshRenderer mr = t.GetComponent <MeshRenderer>();
            if (mr != null)
            {
                m = mr.material;
            }
            objData = new ObjetoEscondidoData(t, Time.time, m);
            objetosEscondidos.Add(objData);
        }
        else
        {
            objData.ultimoCheck = Time.time;
            if (objData.escondido)
            {
                return;
            }
            objData.escondido = true;
        }
        //
        if (objData.mat != null)
        {
            Debug.Log("Desaparece.");
            StandardShaderUtils.ChangeRenderMode(objData.mat, StandardShaderUtils.BlendMode.Transparent);
            Color c = objData.mat.color;
            c.a = 0.5f;
            objData.mat.color = c;
        }
    }