Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Cambiar color material de shader NO "Standar"

Iniciado por ftejada, Abril 09, 2016, 12:50:25 PM

Tema anterior - Siguiente tema
Hola tengo esta duda. He buscado en la documentación y varios sitios pero no he encontrado nada.¿Alguien podría decirme como puedo cambiar el color de un material que tiene como shader uno de doble cara de Ciconia(un asset de la store).? en tiempo de ejecucion via script.Con los shaders standar de Unity no tengo problema... hago el tipico MeshRenderer.Material.color = Color que sea.Pero con este shader al no ser el Standar normal de Unity no se cambia el color via script.¿Alguna información de como puedo acceder y cambiar el color? Saludos y gracias.

Creo recordar que si te colocas encima de la propiedad en el shader, aparece el nombre con el cual puedes acceder a ella por código.

Cita de: iRobb date=1460199375" data-ipsquote="" data-cite="iRobb" class="ipsQuoteCreo recordar que si te colocas encima de la propiedad en el shader, aparece el nombre con el cual puedes acceder a ella por código.
No se a qué te refieres con lo de "encima de la propiedad en el shader"... Podrías aclararmelo porfa!!??


Cita de: iRobb date=1460202004" data-ipsquote="" data-cite="iRobb" class="ipsQuote">Pues el tooltip!/quote]Gracias de nuevo por contestar... Pues no tengo ni idea de como hacerlo.... He mirado en el Shader en cuestion y en "Properties" viene
        _DiffuseMap ("Diffuse Map", 2D) = "white" {}
    }
 Despues en mi codigo he intentado
BanderaTela.material.SetColor("_Diffuse color", colorNeumatico);

// Y tambien esto ya que lo de arriba no funcionaba
BanderaTela.material.SetColor("Diffuse color", colorNeumatico);
Pero no consigo que se cambie el color de la bandera. (La variable "BanderaTela" es un SkinnedMeshRenderer asignado desde el inspector) Evidentemente estoy haciendo algo mal pero no se como hacerlo...Echame un cable... Saludos

Es que diría que el nombre del color es "_Diffusecolor", no "_Difusse color".Para saber si una propiedad existe utiliza material.HasProperty(nombre)

Cita de: iRobb date=1460233027" data-ipsquote="" data-cite="iRobb" class="ipsQuoteEs que diría que el nombre del color es "_Diffusecolor", no "_Difusse color".Para saber si una propiedad existe utiliza material.HasProperty(nombre)
Que pedazo de mendrugo soy!!! jaja Con tanta probatura ni me di cuenta... Llevas razón ya está solucionado. Muchas gracias por la ayuda iRobb

Etiquetas: