Jump to content
UnitySpain
fernando

Imagen fondo en canvas

Recommended Posts

Buenas.

Tengo un canvas al que he añadido un raw image. Como puedo hacer que desde código le asigne una imagen de fondo?

Tengo este código que lee unas carpetas y busca donde esta la imagen.

private void LoadBgImage() {
        string RuteBackground = Application.dataPath + "/StreamingAssets/ImgBackground";

        string[] files = Directory.GetFiles(RuteBackground);
        string background = files.FirstOrDefault(s => s.EndsWith(".jpg") || s.EndsWith(".png"));
        
    }

en background se me guarda la ruta de la imagen,como la asigno al raw image del canvas?

Edited by pioj
Por favor, usa los tags adecuados para tu mensaje. Segunda vez que te lo pido.

Share this post


Link to post
Share on other sites

buen en fin, yo comunmente uso image por eso digo, en resumen, necesitarias usar la funcion WWW que se encarga de cargar el archivo desde un directorio y despues lo asignas a donde lo queres usar, a ver dame un segundo te armo unas lineas 

 

WWW www = new WWW ("file://" + PortadaSeleccionada);

GameObject.Find ("Canvas").GetComponent<Image> ().sprite=Sprite.Create(www.texture,new Rect(0f,0f,www.texture.width,www.texture.height),new Vector2(0.5f,0.5f),100f);

 

yo uso el GameObject.Find para buscar el objeto por su nombre pero si lo tenes almacenado en una variable, pones la variable seria algo asi....

 

VARIABLE.GetComponent<Image> ().sprite=Sprite.Create(www.texture,new Rect(0f,0f,www.texture.width,www.texture.height),new Vector2(0.5f,0.5f),100f);

 

Share this post


Link to post
Share on other sites

NullReferenceException: Object reference not set to an instance of an object

 

Me sale ese fallo con ese codigo

Share this post


Link to post
Share on other sites

(www.texture) es donde esta almacenado la textura o la imagen seria, y despues como image usa sprite y no textura, tenes que comvertir a www.texture en un sprite y por eso ese pedazo de codigo un poco mas largo... avisame si te sirvio.

Share this post


Link to post
Share on other sites

¿Nadie más ve un patrón que se repite constantemente en todos los posts que hace @fernando ? 

Creo que lo mejor sería que primero siguieras bastantes tutoriales de uso básico de Unity, su GUI, y de C#...

Share this post


Link to post
Share on other sites

@pioj Un poco si...

 

@fernando Te lías mucho. ¿No es mas sencillo guardar una lista de sprites vinculados desde el editor y asignarlos a la imagen del canvas en vez de ir buscando las cosas en los directorios?

Share this post


Link to post
Share on other sites

×
×
  • Create New...