Single Tech Games

Tutorial de Unity 5.X: Cargar una imagen desde internet y un link para hacer Cross Promotion entre juegos

Hola Gente! Bueno esta semana llego con un vídeo muy interesante, sé que tocaba Physics pero me gusto la idea de hacer este vídeo y cambie.

Para contarles un poquito como sabrán ya tengo 6 juegos en el Google Play Store, 5 con Unity, y estaba pensando en que estoy haciendo un nuevo juego y quiero promocionarlo dentro de mis propios Juegos, lo primero es actualizar todos mis juegos, que ya de por sí es migrar a Unity 5, cambiar los Ads para que se acoplen testing, ufff ya me lo estaba imaginando, pero luego me puse a pensar que debería haber una forma de cargar mis propios Ads en Unity desde la web, como si fuera un mini Admob, e ir actualizando ese Ad para que vaya cambiando en el tiempo, así cada nuevo juego, ir sacando un nuevo Ad y colocarlo en todos los juegos pero sin necesidad de actualizar los juegos, y esa curiosidad es la que me hizo investigar un poco como poder cargar imágenes y links desde la Web a Unity, además no tengo Hosting, uso WordPress.com para el blog y allí no me permiten subir archivos de texto aunque si imágenes, investigando encontré GitHub que es hosting prácticamente gratis, la verdad no sé si lo que hago estará permitido XD, ya lo veremos, aunque no creo que haga mucho daño tampoco.
PD-> Actualize el código al parecer tenía un problema al momento de estar desconectado de internet así que le agregué www. bytesDownloaded>0 revisen y actualizen su código por favor
Código:
ActivarImagenesInternetScript

using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class ActivarImagenesInternetScript : MonoBehaviour {
	public string textoEnlace;
	public string textoImagen;
	public static ActivarImagenesInternetScript activarImagenInternet;
	private WWW wwwImagen;
	public Image imagen;
	private bool cargaronEnlacesDeInternet;
	public botonScript boton;
	// Use this for initialization
	void Awake()
	{
		if(activarImagenInternet != null)
			GameObject.Destroy(activarImagenInternet);
		else
			activarImagenInternet = this;
		DontDestroyOnLoad(this);
		Debug.Log(textoImagen);
	}
	IEnumerator Start () {
		wwwImagen = new WWW( textoImagen );
		yield return wwwImagen;
	}
	// Update is called once per frame
	void Update () {
		if(!cargaronEnlacesDeInternet)
		{
			if(wwwImagen != null){
				if(wwwImagen.isDone & wwwImagen.bytesDownloaded>0){
					imagen.sprite = Sprite.Create(wwwImagen.texture,new Rect(0, 0, wwwImagen.texture.width, wwwImagen.texture.height), new Vector2(0.5f, 0.5f));
					boton.enlace = textoEnlace;
					cargaronEnlacesDeInternet = true;
				}
			}
		}
	}
}

MostrarImagenInternetScript

using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class MostrarImagenInternetScript : MonoBehaviour {
	public ActivarImagenesInternetScript activarImagen;
	private bool activoImagenes;
	// Update is called once per frame
	void Update(){
		if(activoImagenes == false)
		{
			if(CargarImagenInternetScript.cargarImagenInternet.cargaronEnlacesDeInternet)
			{
				activarImagen.textoEnlace = CargarImagenInternetScript.cargarImagenInternet.wwwEnlaceTexto.text.Trim();
				activarImagen.textoImagen = CargarImagenInternetScript.cargarImagenInternet.wwwEnlaceImagen.text.Trim();
				activarImagen.gameObject.SetActive(true);
				activoImagenes = true;
			}
		}
	}
}

CargarImagenInternetScript

using UnityEngine;
using System.Collections;
public class CargarImagenInternetScript : MonoBehaviour {
	public WWW wwwEnlaceTexto;
	public WWW wwwEnlaceImagen;
	public static CargarImagenInternetScript cargarImagenInternet;
	public bool cargaronEnlacesDeInternet;
	void Awake()
	{
		if(cargarImagenInternet != null)
			GameObject.Destroy(cargarImagenInternet);
		else
			cargarImagenInternet = this;
		DontDestroyOnLoad(this);
	}
	IEnumerator Start () {
		wwwEnlaceImagen = new WWW( "https://raw.githubusercontent.com/singletech/probandoRepo/master/enlaceimagen.txt?t="+Random.value );
		yield return wwwEnlaceTexto;
		wwwEnlaceTexto = new WWW( "https://raw.githubusercontent.com/singletech/probandoRepo/master/enlace.txt?t="+Random.value );
		yield return wwwEnlaceImagen;
	}
	void Update(){
		if(!cargaronEnlacesDeInternet)
		{
			if(wwwEnlaceTexto != null & wwwEnlaceImagen!=null & wwwEnlaceTexto.bytesDownloaded>0 & wwwEnlaceImagen.bytesDownloaded>0){
				if(wwwEnlaceTexto.isDone & wwwEnlaceImagen.isDone){
					cargaronEnlacesDeInternet = true;
				}
			}
		}
	}
//
}

botonScript

using UnityEngine;
using System.Collections;
public class botonScript : MonoBehaviour {
	public string enlace;
	// Use this for initialization
	public void AbrirEnlace()
	{
		Application.OpenURL(enlace);
	}
}

Proyecto:
https://app.box.com/s/sxzx7q135yjn66f15t7khu66z9kymsc7
Suerte!

0 0 votes
Article Rating
Subscribe
Notify of
guest
7 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments
alejo25

como podria bajar el peso de las imagenes mientras las cargo en unity

Ernesto

Ok gracias.

Ernesto

Y compraste dominio de singletechgames.com o que?

Ernesto

Que es mas complicado, hacer una pagina web o una aplicacion, y como creaste tu pagina web? es que quiero hacer una pagina web.